O que é um hipervisor de máquina virtual?
Os hipervisores são o que tornam as máquinas virtuais possíveis e não servem apenas para servidores. Você provavelmente usa um todo dia e nem sabe disso. Se você não usa um agora, você vai no futuro próximo.
Um hipervisor é um software que existe fora de um sistema operacional convidado para interceptar os comandos enviados para o hardware do computador. O termo “hypervisor” vem dos diferentes níveis de um kernel de sistemas operacionais; realiza ações com mais autoridade que o nível “supervisor”, portanto, hiperativo-viseira.
Imagem via striatic no Flickr
Noções básicas de hipervisor
Um hipervisor também é conhecido como um Virtual Machine Manager (VMM) e seu único objetivo é permitir que várias “máquinas” compartilhem uma única plataforma de hardware. Os sistemas operacionais são projetados para ter um relacionamento de um para um com o hardware em que estão sendo executados, mas com processadores multi-core, multi-thread e quantidades absurdas de RAM, rodando múltiplos de uma só vez é uma brisa.
O hipervisor separa o sistema operacional (SO) do hardware assumindo a responsabilidade de permitir que cada tempo do sistema operacional seja executado com o hardware subjacente. Ele age como um policial de trânsito para dar tempo de uso da CPU, memória, GPU e outros hardwares. Cada sistema operacional controlado pelo hipervisor é chamado de sistema operacional convidado, e o sistema operacional do hipervisor, se houver, é chamado de sistema operacional host. Por estar entre o sistema operacional convidado e o hardware, você pode ter tantos SOs diferentes quanto o sistema puder suportar; você pode até ter tipos diferentes (por exemplo, Windows, OS X, Linux).
Separar hardware e software também é bom para portabilidade. Como o hipervisor atua como intermediário, é muito mais fácil mover-se de um computador para outro sem precisar instalar novos drivers ou atualizar seu sistema operacional convidado. Você deve ter notado isso se você levou suas VMs do Virtualbox e as colocou em um computador diferente. Para o sistema operacional convidado, não há nenhuma mudança perceptível, embora o sistema operacional host e o hardware possam ser completamente diferentes..
Outro grande benefício da virtualização de um sistema operacional é a segurança. Se você quiser testar um software que possa ser prejudicial ao seu computador, é recomendável testá-lo em uma máquina virtual, em vez de em seu sistema operacional host. Se o sistema operacional convidado for infectado e cheio de vírus, ele não afetará os arquivos no sistema operacional host, a menos que pastas compartilhadas ou uma ponte de rede conectem os dois. Os dois sistemas operacionais existem completamente separados uns dos outros e não têm conhecimento da existência uns dos outros, o que torna a computação segura.
Alguns hipervisores populares são o VMware ESXi, o Xen, o Microsoft Hyper-V, o VMware Workstation, o Oracle Virtualbox e o Microsoft VirtualPC. Tudo isso permite ao usuário virtualizar um ou mais sistemas operacionais em uma única peça de hardware..
Diferentes Tipos de Hipervisor
Os hipervisores podem ser divididos em dois tipos principais:
- Tipo 1, a.k.a. bare metal, é um hypervisor que é instalado diretamente em um computador. Não há sistema operacional host e o hipervisor tem acesso direto a todos os recursos e hardware. As principais razões para instalar um hypervisor tipo 1 é executar vários sistemas operacionais no mesmo computador sem a sobrecarga de um sistema operacional host ou aproveitar a portabilidade e a abstração de hardware. O metal descuidado é usado com mais frequência por servidores devido à sua segurança e portabilidade para passar de hardware para hardware em caso de falha. Bons exemplos de hipervisores do tipo 1 são VMware ESXi, Citrix XenServer e Microsoft Hyper-V.
- Tipo 2, a.k.a. hospedado, é o que a maioria das pessoas provavelmente conhece quando se trata de virtualizar sistemas operacionais. Os hipervisores hospedados exigem um sistema operacional host e são geralmente tratados como software instalado dentro do host. O tipo 2 ainda pode executar vários sistemas operacionais por vez, mas não tem acesso direto ao hardware e, portanto, tem mais sobrecarga ao executar um convidado. Isso significa que o sistema operacional convidado não será executado em todo o seu potencial e, se o seu host travar, você também não terá acesso aos seus convidados. Os hipervisores de tipo 2 são a maneira ideal de ir quando você precisa testar vários sistemas operacionais no Windows, OS X ou Linux. Bons exemplos são VMWare Workstation, VMware Parallels, Oracle Virtualbox e Microsoft VirtualPC.
Hipervisores do Futuro
Atualmente, a maioria dos hipervisores é usada para implantações de servidores em grande escala ou para usuários finais que executam aplicativos herdados ou experimentam um sistema operacional diferente. Já houve alguma mudança para este pensamento, no entanto, com as versões atuais do Android e rumores do Windows 8.
O Android usa um kernel Linux para interação com hardware e serviços de segundo plano e, em seguida, usa uma máquina virtual chamada Dalvik para executar o software com o qual o usuário interage. Apesar de não permitir que um usuário execute vários sistemas operacionais ao mesmo tempo, o Android é muito semelhante a um hypervisor tipo 1. O host Linux subjacente é completamente transparente para o usuário final, a menos que você faça o root no seu telefone e deseje interagir com ele.
Há rumores de que o Windows 8 funcionará inteiramente como um sistema operacional convidado no Hyper-V da Microsoft. O Hyper-V assumirá a responsabilidade de gerenciar seu hardware e realizar tarefas em segundo plano, como backups e verificações do sistema de arquivos. Semelhante ao Android, isso permitiria que você tivesse melhor portabilidade, flexibilidade e segurança em seu sistema operacional. Para não mencionar, isso tornaria a sua instalação do Windows 8 completamente portátil, para que você possa levá-la consigo de computador para computador..
Os servidores da Web continuarão a aproveitar os hipervisores para maximizar sua utilização de hardware e manter os custos baixos. Se você compartilhou hospedagem na web por meio de um host popular, provavelmente já está em um hipervisor tipo 1 e não sabia disso. Com um bom hardware de servidor, os hipervisores bare-metal podem empurrar os limites normalmente apenas com um sistema operacional instalado, para literalmente milhares disponíveis. Isso não só economiza dinheiro quando se trata de comprar hardware, mas também a refrigeração e a energia são reduzidas a uma pequena fração do que costumava ser para executar a mesma quantidade de máquinas.