La plataforma de clouding utilitza el Hypervisor KVM per a tots els servidors Cloud.
En l'actualitat, KVM està considerat com el millor hypervisor i també és dels més utilitzats en els Cloud Públics, com clouding.
Hi ha altres sistemes de virtualització (com OpenVZ o Virtuozzo), però no realitzen una autèntica virtualització de maquinari, ja que són més similars a contenidors -com ara Docker.
Sistemes de contenidors com OpenVZ
Hi ha diferents formes de virtualitzar sistemes operatius en un servidor, com podrien ser els contenidors.
Entre els sistemes de contenidors més habituals trobem opcions com: OpenVZ o Virtuozzo, Linux lxc Containers, o opcions més modernes com Docker. En tot cas, la majoria d'estàs tecnologies utilitzen les mateixes extensions de el nucli de Linux.
Els sistemes de contenidors no simulen realment maquinari, sinó que utilitzen un sistema de particionat que hi ha al nucli de Linux per separar una instal·lació d'un sistema operatiu d'un altre.
Tots els contenidors funcionen sobre el mateix Kernel -per això mateix, per exemple, no és possible carregar mòduls de l'nucli en només un contenidor. Això té alguns avantatges però també diversos desavantatges.
El principal avantatge és la densitat. A l'compartir tots els contenidors el mateix nucli, és possible utilitzar tècniques de duplicació en la memòria de l'ordinador amfitrió. De manera que, si per exemple, dos contenidors carreguen la mateixa llibreria -anem a imaginar, una extensió de Apache-, aquesta només es carrega un cop a la memòria física de l'equip amfitrió, accedint a la mateixa tots dos contenidors.
Però aquesta principal avantatge, també és el seu principal desavantatge. A l'compartir tots els hypervisores un mateix nucli, un atac a un contenidor pot estendre a l'equip físic (host) i a tots els contenidors. Així mateix, no és possible tenir diferents sistemes operatius, ja que tots utilitzen el mateix nucli.
També resulta molt complicat separar correctament els recursos assignats a cada servidor, ja que un contenidor no és un sol procés en l'equip físic (host), sinó tots els processos que el mateix s'executa.
D'altra banda, en la gran majoria de casos, al treballar amb contenidors no es fa una reserva de el 100% de la RAM assignada a cada servidor. A l'ésser un dels avantatges inherents d'aquesta tecnologia el compartir RAM en alguns casos s'abusa de la mateixa per reduir costos i això afecta la qualitat de l'servei.
Per tant, podríem definir aquests sistemes de virtualització (OpenVZ i similars), com una alternativa més econòmica als autèntics servidors Cloud.
Virtualització de Hardware (KVM, ESXi i Xen en mode HVM)
D'altra banda tenim els sistemes Hypervisores que realitzen virtualització real de hardware.
En l'actualitat un dels més populars que s'ha anat establint com a estàndard és KVM (Kernel Virtualization Module).
KVM utilitza extensions de el nucli en Linux, per realitzar una virtualització emulant hardware real, amb un rendiment virtualment igual a el de l'equip físic (host).
A l'virtualitzar maquinari, KVM presenta a servidor virtual (guest) maquinari com el que es trobaria en un equip físic. D'aquesta manera, qualsevol sistema operatiu pot funcionar normalment sobre un servidor virtual basat en KVM.
A l'realitzar una emulació de maquinari real, cada servidor virtualitzat disposa del seu propi hardware, BIOS i nucli. D'aquesta manera, no es comparteix espai de memòria entre servidors, i cada servidor disposa d'espai de memòria totalment aïllat de la resta de servidors virtualitzats en el mateix servidor físic.
En entorns Cloud sol utilitzar sempre virtualització per hardware, a l'contrari en els servidors VPS de baix cost: on se segueix utilitzant OpenVZ o similars per la seva major densitat, menor cost i major capacitat de sobre venda de recursos.
KVM amb va convertir (Drivers paravirtualizados)
En clouding utilitzem KVM amb VirtIO. VirtIO és un set de drivers paravirtualizados, que ofereixen un major rendiment, ja que són drivers pensats especialment per a entorns de virtualització.
Posem per exemple, la targeta de xarxa d'un servidor virtual:
En el cas d'utilitzar un maquinari virtualitzat normal -sense VirtIO- moltes tasques es dupliquen, ja que el servidor virtual (guest) realitza moltes accions innecessàries que després el servidor físic (host) tornarà a realitzar.
Però si fem servir va convertir, la targeta de xarxa virtual amb prou feines realitza accions, ja que simplement transmet les dades a la targeta de xarxa física de l'equip amfitrió. Aquesta transmissió simplificada, augmenta molt el rendiment, ja que en lloc d'enviar-les dades en un format adequat per ser transmesos a una xarxa física, s'envien de manera que l'equip físic pugui rebre-les a alta velocitat i transmetre-les a la xarxa física.
Aquest tipus de drivers s'utilitza per a l'accés a la xarxa i per a l'accés a disc, ja que és on més rendiment ofereixen.
Avantatges de KVM a Clouding
En clouding estem obsessionats amb el rendiment i amb oferir-te la millor plataforma Cloud de mercat. Per això utilitzem KVM com hypervisor en tots els serveis que t'oferim.
Utilitzant KVM podem oferir-te el millor rendiment, la màxima seguretat i la major estabilitat.