A forma completa do KVM é Kernel Virtual Machine. É a solução de virtualização para Linux. KVM é um módulo do kernel Linux que permite ao kernel Linux agir como um programa hypervisor como VMware ESXi ou VSphere.
Neste artigo, vou mostrar-lhe como instalar o KVM no Ubuntu 20.04 LTS e criar uma máquina virtual KVM simples com ele. Então, vamos começar.
- Enabling Hardware Virtualization:
- Upgrading the System:
- Instalando o KVM:
- Instalar o LibVirt:
- Configurar diretórios KVM requeridos:
- Criar uma máquina virtual KVM:
- Listar máquinas virtuais KVM:
- Conectar remotamente a máquina virtual KVM com VNC:
- Remover máquinas virtuais KVM:
- Issue#1: Corrigindo cpu->kvm_msr_buf->nmsrs Assertion Error
- Conclusion:
Enabling Hardware Virtualization:
You must enable hardware virtualization extension from the BIOS of your computer for KVM to work. Para processadores Intel, você deve ativar o recurso de processador VT-x ou VT-d a partir da BIOS. Para processadores AMD, você deve ativar o recurso do processador AMD-v a partir do BIOS.
Após ter a virtualização do hardware ativada no BIOS, execute o seguinte comando para verificar se a extensão VT-x/VT-d ou AMD-v está ativada.
Você deve ter a bandeira svm ou vmx disponível na saída se você tiver a virtualização do hardware ativada na BIOS.
Eu estou usando um processador AMD. Portanto, o flag svm está disponível no meu caso. Se você estiver usando um processador Intel, então ele será vmx.
Upgrading the System:
Antes de instalar o KVM, você deve atualizar os pacotes de software do seu Ubuntu 20.04 LTS.
Primeiro, atualize o cache do repositório de pacotes APT do Ubuntu 20.04 LTS com o seguinte comando:
O cache do repositório de pacotes do APT do Ubuntu 20.04 LTS deve ser atualizado.
Como você pode ver, todos os pacotes da minha máquina Ubuntu 20.04 LTS já estão atualizados. Portanto, eu não tenho que fazer nada.
Se você tiver atualizações disponíveis, você pode aplicar essas atualizações com o seguinte comando:
Então, pressione Y e depois pressione <Enter> para confirmar a instalação.
Após as atualizações serem instaladas, reinicie seu computador com o seguinte comando:
Instalando o KVM:
Os pacotes KVM estão disponíveis no repositório oficial de pacotes do Ubuntu 20.04 LTS.
Você pode instalar o KVM no seu Ubuntu 20.04 LTS com o seguinte comando:
Para confirmar a instalação, pressione Y e depois pressione <Enter>.
O gestor de pacotes APT deve descarregar todos os pacotes necessários a partir da Internet.
>
Após os pacotes serem baixados, o gerenciador de pacotes do APT irá instalá-los.
Neste ponto, o KVM deve ser instalado.
Instalar o LibVirt:
LibVirt é uma ferramenta para criar e gerir máquinas virtuais KVM e configurar o KVM. É uma ferramenta indispensável para virtualização com KVM.
LibVirt está disponível no repositório oficial de pacotes do Ubuntu 20.04 LTS.
Para instalar o LibVirt, execute o seguinte comando:
Para confirmar a instalação, pressione Y e depois pressione <Enter>.
>
O gestor de pacotes APT deve baixar e instalar todos os pacotes necessários a partir da internet.
LibVirt deve ser instalado neste ponto.
>
Once LibVirt está instalado, adicione seu usuário de login ao grupo libvirt com o seguinte comando:
Em seguida, reinicie o seu computador com o seguinte comando para que as alterações tenham efeito.
Ace o boot do seu computador, execute o seguinte comando para confirmar que a LibVirt está funcionando.
O comando deve retornar o número da versão da LibVirt. No meu caso, é 6.0.0.
Configurar diretórios KVM requeridos:
Eu acho que é uma boa idéia manter todos os dados da máquina virtual organizados. Eu normalmente mantenho todos os dados da máquina virtual KVM no diretório /kvm/. No diretório /kvm/, eu crio 2 subdiretórios: disco/ e iso/. No diretório /kvm/, eu mantenho todos os arquivos do disco rígido da máquina virtual (VM). No subdiretório iso/, eu mantenho as imagens de instalação ISO de diferentes sistemas operacionais (i.e. Ubuntu, Debian, CentOS, etc.).
Você pode criar as mesmas estruturas de diretório com o seguinte comando:
Criar uma máquina virtual KVM:
Nesta secção, vou mostrar-lhe como criar uma máquina virtual Ubuntu Server 20.04 LTS KVM.
Primeiro, tem de fazer o download da imagem de instalação ISO do Ubuntu Server 20.04 LTS. Para manter todos os arquivos/dados da máquina virtual organizados, é uma boa idéia armazenar a imagem ISO no diretório /kvm/iso/kvm/iso.
>
Então, navegue até o diretório /kvm/iso/ com o seguinte comando:
Você pode baixar o Ubuntu Server 20.04 imagem ISO LTS do site oficial do Ubuntu com o seguinte comando:
wget deve começar a baixar a imagem ISO Ubuntu Server 20.04 LTS. Demorará um pouco para completar.
>
Após o Ubuntu Server 20.04 LTS ISO ser baixado, você pode criar uma máquina virtual KVM com o seguinte comando:
–os-type linux \
–os-variant ubuntu20.04 \\\\i
–ram 1024\i
–disco /kvm/disco/servidor-01.img,device=disk,bus=virtio,size=10,format=qcow2\i
–graphics vnc,listen=0.0.0.0\i>
–noautoconsole \i
–hvm \i
–cdrom /kvm/iso/ubuntu-20.04.1- vivo-servidor-amd64.iso \\
–boot cdrom,hd
Aqui, o nome da máquina virtual será servidor-01.
O sistema operacional que estaremos instalando é linux.
>
A variante do sistema operacional é ubuntu20.04 (Ubuntu 20.04 LTS).
O tipo de SO e os valores da variante do SO não são aleatórios. Você pode encontrar o tipo de SO e a variante de SO para sua distribuição Linux desejada com o comando osinfo-query. Como você pode ver, para Ubuntu 20.04 LTS, o tipo de SO no linux e variante de SO é ubuntu20.04.
Se você não tem o comando osinfo-query disponível no seu computador, você pode instalá-lo com o seguinte comando:
A RAM (Random Access Memory) da VM será de 1024 MB (Megabytes).
O disco virtual da VM será salvo no arquivo /kvm/disco/servidor-01.img. O disco virtual tem cerca de 10 GB de tamanho, e o formato é QCOW2 (QEMU Copy-On-Write v2)
A máquina virtual será acessível através do protocolo VNC (Virtual Network Computing) remote desktop, e o servidor VNC estará escutando em todas as interfaces de rede disponíveis configuradas no seu Ubuntu 20.04 host KVM LTS.
Ubuntu 20.04 Host KVM LTS não tentará automaticamente conectar-se à máquina virtual uma vez que a máquina virtual seja criada. A máquina virtual continuará funcionando em segundo plano.
Utilizar a virtualização completa para a máquina virtual. Isto fará com que as máquinas virtuais tenham um melhor desempenho.
Utilizar a imagem ISO do Ubuntu Server 20.04 LTS que acabamos de baixar como a ROM do CD/DVD virtual da máquina virtual e usada para instalar o Ubuntu Server 20.04 LTS na máquina virtual.
Configura a ordem de inicialização da máquina virtual. A primeira entrada de inicialização é o CD/DVD ROM virtual e depois o disco rígido virtual. Assim, a máquina virtual será capaz de inicializar a partir da imagem ISO 20.04 do Ubuntu Server 20.04 LTS e instalar o Ubuntu Server 20.04 LTS no disco rígido.
>
>>
>
>
Esta é basicamente todas as opções que você precisa para criar uma máquina virtual KVM.
>
Após você executar o comando virt-install, KVM deve começar a criar a máquina virtual. Pode demorar algum tempo dependendo da configuração da sua máquina virtual.
Neste ponto, a máquina virtual KVM deve ser criada.
>
Listar máquinas virtuais KVM:
Após a máquina virtual KVM ser criada, você pode listá-la com o seguinte comando:
O comando deve mostrar-lhe todas as máquinas virtuais KVM que você tem. Neste momento, eu tenho apenas 1 servidor de máquinas virtuais-01. Este é o que acabei de criar. Como você pode ver, o servidor de máquinas virtuais-01 está rodando. Deve ser capaz de se ligar a ele usando qualquer cliente VNC.
Conectar remotamente a máquina virtual KVM com VNC:
Nesta secção, vou mostrar-lhe como se ligar à sua máquina virtual KVM remotamente com VNC.
Pode encontrar o número da porta VNC do KVM virtual machine server-01 com o seguinte comando:
Como pode ver, o número da porta VNC da máquina virtual server-01 é 0.
Aqui, porta 0 significa porta 5900. Da mesma forma, porta 1 significa porta 5901 e assim por diante.
Agora, encontre o endereço IP do seu host KVM Ubuntu 20.04 LTS com o seguinte comando:
No meu caso, o endereço IP é 192.168.20.131. Será diferente para você. Portanto, certifique-se de substituí-lo pelo seu a partir de agora.
Abra qualquer cliente VNC e conecte-se ao endereço 192.168.20.131:0.
Clique em Continuar.
Você deve estar conectado à tela da máquina virtual KVM server-01, como você pode ver na captura de tela abaixo.
Agora, você pode instalar o sistema operacional desejado na máquina virtual.
No meu caso, vou instalar o sistema operacional Ubuntu Server 20.04 LTS na máquina virtual.
Ubuntu Server 20.04 LTS está instalado na máquina virtual neste ponto. Vamos reiniciar a máquina virtual.
Pressione <Enter> quando você vir esta mensagem.
A máquina virtual KVM server-01 deve ser desligada automaticamente, como você pode ver na captura de tela abaixo.
Inicie o servidor-01 máquina virtual KVM com o seguinte comando:
>
O servidor da máquina virtual-01 deve ser iniciado.
Agora, você pode conectar à máquina virtual server-01 a partir de um cliente VNC, como antes. Como você pode ver, a tela de login do Ubuntu Server 20.04 LTS é exibida.
Você pode fazer login e executar qualquer comando que quiser.
>
Remover máquinas virtuais KVM:
Você também pode remover uma máquina virtual KVM muito facilmente usando LibVirt.
Como você pode ver, eu tenho 2 máquinas virtuais KVM (server-01 e server-02) rodando no meu host Ubuntu 20.04 LTS KVM. Vamos remover a máquina virtual KVM server-02.
Como você pode ver, a máquina virtual KVM server-02 está rodando. Você deve pará-la antes de removê-la.
Para forçar parar a máquina virtual KVM-02 do servidor, execute o seguinte comando:
Como pode ver, a máquina virtual do servidor-02 está desligada.
Você pode remover permanentemente a máquina virtual do servidor-02 e todos os seus discos rígidos virtuais anexados com o seguinte comando:
Como pode ver, a máquina virtual do servidor-02 já não está disponível.
Issue#1: Corrigindo cpu->kvm_msr_buf->nmsrs Assertion Error
Apesar de criar uma máquina virtual KVM no Ubuntu 20.04 LTS, você pode ver a seguinte mensagem de erro. É um bug do kernel. Normalmente, isto acontece quando você executa KVM dentro de outra máquina virtual. Eu estou executando KVM dentro de uma máquina virtual VMware. É por isso que eu recebi este erro, eu acredito. É fácil de corrigir.
Criar um novo arquivo /etc/modprobe.d/qemu-system-x86.conf com o seguinte comando:
Adicionar as seguintes linhas no arquivo se você estiver usando um processador AMD.
opções kvm ignore_msrs=1
Adicionar as seguintes linhas no ficheiro se estiver a usar um processador Intel.
opções kvm ignore_msrs=1
Após terminar, prima <Ctrl> + X seguido de Y e <Enter> para guardar o /etc/modprobe.arquivo d/qemu-system-x86.conf.
Então, reinicie seu computador com o seguinte comando para que as alterações tenham efeito.
Seu problema deve ser resolvido.
Conclusion:
Neste artigo, mostrei como instalar o KVM no Ubuntu 20.04 LTS e criar máquinas virtuais KVM usando o LibVirt. Eu também mostrei a você como remover máquinas virtuais KVM. Isto deverá ajudá-lo a começar com a virtualização do KVM Linux.