Pesquisa de site

Como criar máquinas virtuais no Linux usando KVM (máquina virtual baseada em kernel) - Parte 1


Este tutorial discute a introdução e implantação do KVM e como usá-lo para criar máquinas virtuais em distribuições baseadas em RedHat, como RHEL/CentOS7 e Fedora 21 .

O que é KVM?

KVM ou (Máquina Virtual Baseada em Kernel) é uma solução de virtualização completa para Linux em hardware Intel 64 e AMD 64 que está incluída no kernel Linux principal desde 2.6.20 e é estável e rápida para a maioria das cargas de trabalho.

Recursos KVM

Existem muitos recursos e vantagens úteis que você obterá ao usar o KVM para implantar sua plataforma virtual. O hipervisor KVM oferece suporte aos seguintes recursos:

  1. Comprometimento excessivo: o que significa alocar mais CPUs virtualizadas ou memória do que os recursos disponíveis no sistema.
  2. Thin provisioning : que permite a alocação de armazenamento flexível e otimiza o espaço disponível para cada máquina virtual convidada.
  3. Aceleração de E/S de disco : fornece a capacidade de definir um limite nas solicitações de E/S de disco enviadas de máquinas virtuais para a máquina host.
  4. Balanceamento automático de NUMA: Melhora o desempenho de aplicativos executados em sistemas de hardware NUMA.
  5. Capacidade de adição dinâmica de CPU virtual : fornece a capacidade de aumentar o poder de processamento conforme necessário em máquinas virtuais em execução, sem tempo de inatividade.

Esta é a nossa primeira série contínua de KVM (máquina virtual baseada em kernel). Aqui iremos cobrir os artigos a seguir de maneira parcialmente inteligente.

Pré-requisitos

Certifique-se de que seu sistema tenha extensões de virtualização de hardware: Para hosts baseados em Intel, verifique se as extensões de virtualização de CPU [vmx] estão disponíveis usando o comando a seguir.

[root@server ~]# grep -e 'vmx' /proc/cpuinfo

Para hosts baseados em AMD, verifique se a extensão de virtualização de CPU [svm] está disponível.

[root@server ~]# grep -e 'svm' /proc/cpuinfo

Se não houver saída, certifique-se de que as extensões de virtualização estejam habilitadas no BIOS. Verifique se os módulos KVM estão carregados no kernel “deve ser carregado por padrão”.

[root@server ~]# lsmod | grep kvm

A saída deve conter kvm_intel para hosts baseados em Intel ou kvm_amd para hosts baseados em AMD.

Antes de começar, você precisará da conta root ou do usuário não root com privilégios sudo configurados em seu sistema e também de ter certeza de que seu sistema está atualizado.

[root@server ~]# yum update

Certifique-se de que o Selinux esteja no modo Permissivo.

[root@server ~]# setenforce 0

Etapa 1: instalação e implantação do KVM

1. Instalaremos os pacotes qemu-kvm e qemu-img primeiro. Esses pacotes fornecem o KVM em nível de usuário e o gerenciador de imagens de disco.

[root@server ~]# yum install qemu-kvm qemu-img

2. Agora você tem os requisitos mínimos para implantar a plataforma virtual em seu host, mas também ainda temos ferramentas úteis para administrar nossa plataforma, como:

  1. virt-manager fornece uma ferramenta GUI para administrar suas máquinas virtuais.
  2. libvirt-client fornece uma ferramenta CL para administrar seu ambiente virtual, esta ferramenta chamada virsh.
  3. virt-install fornece o comando “virt-install ” para criar suas máquinas virtuais a partir da CLI.
  4. libvirt fornece bibliotecas do lado do servidor e do host para interagir com hipervisores e sistemas host.

Vamos instalar as ferramentas acima usando o seguinte comando.

[root@server ~]# yum install virt-manager libvirt libvirt-python libvirt-client 

3. Para usuários do RHEL/CentOS7, ainda há grupos de pacotes adicionais, como: Cliente de Virtualização, Plataforma de Virtualização e Ferramentas de Virtualização para instalar.

[root@server ~]#yum groupinstall virtualization-client virtualization-platform virtualization-tools	

4. O daemon de virtualização que gerencia toda a plataforma é “libvirtd ”. vamos reiniciá-lo.

[root@server ~]#systemctl restart libvirtd

5. Após reiniciar o daemon, verifique seu status executando o seguinte comando.

[root@server ~]#systemctl status libvirtd  
Saída de amostra
libvirtd.service - Virtualization daemon 
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled) 
   Active: active (running) since Mon 2014-12-29 15:48:46 EET; 14s ago 
 Main PID: 25701 (libvirtd) 

Agora, vamos para a próxima seção para criar nossas máquinas virtuais.

Etapa 2: Criar VMs usando KVM

Como mencionamos anteriormente, temos algumas ferramentas úteis para gerenciar nossa plataforma virtual e criar máquinas virtuais. Uma dessas ferramentas chamada [virt-manager] que usaremos na próxima seção.

6. Embora virt-manager seja uma ferramenta baseada em GUI, também poderíamos iniciá-lo a partir do terminal, bem como da GUI.

[root@server ~]#virt-manager
Usando o GNOME

Usando o GNOME Clássico

7. Após iniciar a ferramenta, esta janela aparecerá.

8. Por padrão você verá que o gerenciador está conectado diretamente ao localhost, felizmente você poderia usar a mesma ferramenta para gerenciar outro host remotamente. Na aba “Arquivo”, basta selecionar “Adicionar Conexão” e esta janela aparecerá.

Marque a opção “Conectar ao host remoto” e forneça o Nome do host/IP do servidor remoto. Caso seja necessário estabelecer conexão com o host remoto sempre que o gerenciador for iniciado, basta marcar a opção “Auto Connect”.

9. Vamos voltar ao nosso localhost, antes de criar uma nova máquina virtual você deve decidir onde os arquivos serão armazenados?! em outras palavras, você deve criar o Disco de Volume (disco virtual/imagem de disco) para sua máquina virtual.

Clique com o botão direito em localhost e selecione “Detalhes” e selecione a guia “Armazenamento”.

10. Em seguida, pressione o botão “Novo Volume”, digite o nome do seu novo disco virtual (Volume Disk) e insira o tamanho que você deseja/precisa na seção “Capacidade máxima”.

O tamanho da alocação é o tamanho real do seu disco que será alocado imediatamente do seu disco físico após a conclusão das etapas.

Nota: Esta é uma tecnologia importante na área de administração de armazenamento chamada “thin provision ”. Costumava alocar apenas o tamanho de armazenamento usado, NÃO todo o tamanho disponível.

Por exemplo, você criou um disco virtual com tamanho 60G, mas na verdade usou apenas 20G, usando esta tecnologia o tamanho alocado do seu disco rígido físico será 20G e não 60G.

Em outras palavras, o tamanho físico alocado será alocado dinamicamente dependendo do tamanho real usado. Você pode encontrar mais informações em detalhes em VMWare vStorage Thin Provisioning.

11. Você notará que um rótulo do novo disco de volume apareceu na lista.

Você também deve observar o caminho da nova imagem de disco (Disco de Volume), por padrão estará em /var/lib/libvirt/images, você pode verificá-lo usando o seguinte comando.

[root@server Downloads]# ls -l /var/lib/libvirt/images
-rw-------. 1 root root 10737418240 Jan  3 16:47 vm1Storage.img

12. Agora estamos prontos para criar nossa máquina virtual. Vamos clicar no botão “VM” na janela principal, esta janela do assistente aparecerá.

Selecione o método de instalação que você usará para criar a máquina virtual. Por enquanto usaremos mídia de instalação local, mais tarde discutiremos os métodos restantes.

13. Agora é hora de especificar qual mídia de instalação local será usada, temos duas opções:

  1. Do físico [CDROM/DVD].
  2. Da imagem ISO.

Para nosso tutorial, vamos usar o método de imagem ISO, então você deve fornecer o caminho da sua imagem ISO.

Importante: Infelizmente existe um bug muito bobo para quem usa RHEL/CentOS7. Este bug impede a instalação usando [CDROM/DVD físico], você verá que a opção está acinzentada assim.

E se você segurar o cursor sobre ele, esta mensagem de erro aparecerá.

Até agora não existe uma solução oficial/direta para este bug, você pode encontrar mais informações sobre o mesmo em https://bugzilla.redhat.com.

14. O armazenamento voltou, usaremos o disco virtual que criamos anteriormente para instalar a máquina virtual nele. Será como mostrado.

15. A etapa final que pergunta sobre o nome da sua máquina virtual e outras opções avançadas, falaremos sobre isso mais tarde.

Se você quiser alterar alguma configuração ou fazer alguma customização basta marcar a opção “Personalizar configuração antes de instalar”. Em seguida, clique em concluir e aguarde alguns segundos, o console de controle aparecerá para o seu sistema operacional convidado gerenciá-lo

Conclusão

Agora você aprendeu o que é KVM, como gerenciar sua plataforma virtual usando ferramentas GUI, como implantar uma máquina virtual usando-a e outras coisas incríveis.

Embora este não seja o fim do artigo, em nossos próximos artigos discutiremos outros tópicos importantes relacionados ao KVM. Suje as mãos usando o conhecimento anterior e esteja pronto para a próxima parte…..