KVM é a camada de software que permite accelerar as máquinas virtuais pelo uso da capacidade de virtualização dos processadores atuais (VT-x, AMD-V). Foi desenvolvido a partir da base do paquote qemu-kvm do programa de virtualização qemu criado por Fabrice Bellard (que pela anedota escreveu o código de um emulador de sistemas enquanto trabalhava numa livraria 😄).
Instalação
Lista de verificação de pré-instalação
Verifique se sua CPU suporta virtualização de hardware
Para executar o KVM, precisa de um processador que suporte a virtualização de hardware. A Intel e a AMD desenvolveram extensões para os seus processadores, consideradas respectivamente Intel VT-x (nome código Vanderpool) e AMD-V (nome de código Pacifica). Para verificar se o seu processador suporta um destes, pode rever a saída deste comando:
egrep -c '(vmx | svm)' /proc/cpuinfo
Se for 0 , significa que sua CPU não suporta virtualização de hardware.
Se houver 1 ou mais, mas ainda precisa garantir que a virtualização esteja ativada no BIOS.
Por padrão, se inicializou no kernel XEN, ele não exibirá o sinalizador svm ou vmx usando o comando grep. Para ver se está ativado ou não no xen, digite:
cat /sys/hypervisor/properties/capacities
Deve ver sinalizadores hvm na saída.
Como alternativa, pode executar:
kvm-ok
que pode fornecer uma saída como esta:
INFO: /dev/kvm existe A aceleração KVM pode ser usada
Se ver :
INFO: sua CPU não suporta extensões KVM A aceleração KVM NÃO pode ser usada
Ainda pode executar máquinas virtuais, mas será muito mais lento sem as extensões KVM.
NOTA: Pode ver uma mensagem como “A aceleração KVM não pode / não pode ser usada”. Isso é enganoso e significa apenas se o KVM está * atualmente * disponível (por exemplo, “ativado”), * não * se for suportado.
Use um kernel de 64 bits (se possível)
A execução de um kernel de 64 bits no sistema operacional host é recomendada, mas não necessária.
- Para servir mais de 2 GB de RAM para suas VMs, deve usar um kernel de 64 bits (consulte 32bit_and_64bit ). Numa instalação do kernel de 32 bits, ficará limitado a 2 GB de RAM no máximo para uma determinada VM.
- Além disso, um sistema de 64 bits pode hospedar convidados de 32 e 64 bits. Um sistema de 32 bits pode hospedar apenas convidados de 32 bits.
Para ver se o seu processador é de 64 bits, pode executar este comando:
egrep -c 'lm' /proc/cpuinfo
Se 0 for impresso, significa que sua CPU não é de 64 bits.
Se 1 ou superior, é. Nota: lm significa Modo Longo, que equivale a uma CPU de 64 bits.
Agora veja se o seu kernel em execução é de 64 bits, basta emitir o seguinte comando:
uname -m
x86_64 indica um kernel de 64 bits em execução. Se usa i386, i486, i586 ou i686, está executando um kernel de 32 bits.
Nota: x86_64 é sinônimo de amd64.
Instalação do KVM
Instale os pacotes necessários
Para a seguinte configuração, assumiremos que está implantando o KVM num servidor e, portanto, não possui nenhum servidor X na máquina.
Precisa instalar alguns pacotes primeiro:
Cosmic (18.10) ou posterior
$ sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils
Lucid (10.04) ou posterior
$ sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
Karmic (9.10) ou anterior
$ sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utils
- libvirt-bin fornece o libvirtd que precisa para administrar instâncias qemu e kvm usando libvirt
- qemu-kvm ( kvm em Karmic e versões anteriores) é o backend
- poderosa ferramenta de linha de comando do ubuntu-vm-builder para a construção de máquinas virtuais
- bridge-utils fornece uma ponte da sua rede para as máquinas virtuais
Também pode instalar o virt-viewer , para visualizar instâncias.
Adicionar usuários a grupos
Karmic (9.10) e posterior (mas não 14.04 LTS e 18.10)
Precisa garantir que o seu nome de usuário seja adicionado ao grupo libvirtd:
$ sudo adduser `id -un` libvirtd Adicionando usuário '<username>' ao grupo 'libvirtd' ...
Depois disso, é necessário se conectar novamente para que o seu usuário se torne um membro efetivo do grupo libvirtd. Os membros deste grupo podem executar máquinas virtuais. (também pode digitar ‘newgrp kvm’ num terminal, mas isso afetará apenas esse terminal.)
Cosmic (18.10)
O nome do grupo é alterado para libvirt:
$ sudo adduser `id -un` libvirt Adicionando usuário '<username>' ao grupo 'libvirt' ...
Lançamentos anteriores ao Karmic (9.10)
Precisa garantir que o seu nome de usuário seja adicionado aos grupos: kvm e libvirtd.
Checar:
$ groups adm dev cdrom floppy audio dip video plugdev fuse lpadmin admin sambashare kvm libvirtd
Para adicionar o seu <nome de usuário> aos grupos:
$ sudo adduser `id -un` kvm Adicionando usuário '<username>' ao grupo 'kvm' ... $ sudo adduser `id -un` libvirtd Adicionando usuário '<username>' ao grupo 'libvirtd' ...
Após a instalação, é necessário efetuar logon novamente para que o seu usuário se torne um membro efetivo dos grupos de usuários kvm e libvirtd. Os membros deste grupo podem executar máquinas virtuais.
Verificar instalação
Pode testar se sua instalação foi bem-sucedida com o seguinte comando:
$ virsh list --all ID Nome Estado ---------------------------------- $
Se, por outro lado, obtém algo parecido com isto:
$ virsh list --all libvir: Erro remoto: permissão negada erro: falha ao conectar-se ao hypervisor $
Algo está errado (por exemplo, não fez logon novamente) e provavelmente deseja corrigir isso antes de prosseguir. O ponto crítico aqui é se tem ou não acesso de gravação a / var / run / libvirt / libvirt-sock .
O arquivo de meia deve ter permissões semelhantes a:
$ sudo ls -la /var/run/libvirt/libvirt-sock srwxrwx --- 1 raiz libvirtd 0 24/08/2010 14:54 /var/run/libvirt/libvirt-sock
Além disso, o /dev/kvm precisa estar no grupo certo. Se ver:
$ ls -l /dev/kvm crw-rw ---- + 1 raiz do root 10, 232 8 de jul 22:04 / dev / kvm
Pode ter problemas ao criar uma máquina virtual. Altere o grupo do dispositivo para kvm / libvirtd:
raiz do sudo chown: libvirtd /dev/kvm
Agora precisa se logar novamente ou reiniciar os módulos do kernel:
rmmod kvm modprobe -a kvm
Opcional: Instale o virt-manager (interface gráfica com o usuário)
Se estiver a trabalhar num computador desktop, poderá instalar uma ferramenta GUI para gerenciar máquinas virtuais.
$ sudo apt-get install virt-manager
O Virtual Machine Manager aparecerá no menu Aplicativos -> Ferramentas do sistema . Primeiro, crie uma nova conexão com a instância local do QEMU no menu Arquivo -> Adicionar conexão . Localhost (QEMU) ou QEMU / KVM deve aparecer na lista de máquinas virtuais. Nota: já existe conexão Localhost (QEMU Usermode), mas isso não funciona pelo menos no Ubuntu 10.04.
Crie uma nova máquina virtual pressionando o botão superior esquerdo. Crie um novo botão da barra de ferramentas da máquina virtual .