Guia Completo de Virtualização KVM no Ubuntu: Instalação, Rede, Armazenamento e Melhores Práticas

目次

Introdução

O Ubuntu é uma das distribuições Linux mais amplamente usadas no mundo, confiável em uma ampla gama de ambientes, desde usuários individuais até sistemas empresariais. É comumente usado para construção de servidores e ambientes de desenvolvimento. Quando você deseja implementar virtualização em grande escala no Ubuntu, uma das soluções mais poderosas disponíveis é o KVM (Kernel-based Virtual Machine).

O KVM é uma tecnologia de virtualização baseada em hypervisor construída diretamente no kernel do Linux. Ao aproveitar recursos de virtualização assistida por hardware, como Intel VT e AMD-V, ele oferece alto desempenho e estabilidade. Como uma solução de código aberto, o KVM permite que você construa uma infraestrutura de virtualização robusta mantendo os custos baixos.

As tecnologias de virtualização podem parecer complexas no início. No entanto, com a combinação de Ubuntu e KVM, até iniciantes podem criar e operar máquinas virtuais de forma relativamente fácil. Também é altamente recomendado para usuários intermediários que desejam utilizar eficientemente os recursos de servidores físicos existentes, bem como para engenheiros que visam virtualizar sistemas de produção.

Este artigo fornece uma explicação completa sobre como construir um ambiente de virtualização baseado em KVM no Ubuntu, cobrindo uso básico, técnicas operacionais práticas e soluções para problemas comuns. Se você está considerando introduzir o KVM ou deseja fazer melhor uso da virtualização no Ubuntu, certifique-se de ler até o final.

Comparação Entre o KVM e Outras Tecnologias de Virtualização

Existem muitos tipos de tecnologias de virtualização disponíveis. Em ambientes Ubuntu, opções comumente usadas incluem KVM, VirtualBox e VMware. Esta seção explica as características e diferenças de cada uma, juntamente com as vantagens e desvantagens de escolher o KVM.

Principais Tipos de Tecnologias de Virtualização

  • KVM (Kernel-based Virtual Machine) O KVM é um recurso de virtualização integrado ao kernel do Linux e requer Linux como o SO host. Ao utilizar suporte de virtualização por hardware, como Intel VT e AMD-V, ele oferece alto desempenho de máquina virtual adequado para uso em produção. Operações flexíveis são possíveis usando ferramentas de linha de comando e utilitários de gerenciamento, como o virt-manager.
  • VirtualBox O VirtualBox é um software de virtualização orientado para desktop fornecido pela Oracle que roda em Windows, macOS e Linux. Ele possui uma interface intuitiva e é frequentemente usado para fins pessoais ou de aprendizado. No entanto, em comparação com o KVM, é menos adequado para ambientes de alta carga ou comerciais.
  • VMware (VMware Workstation / ESXi, etc.) O VMware é um produto de virtualização comercial amplamente usado em ambientes empresariais. Ele oferece recursos ricos e suporte forte, mas requer licenças pagas, o que aumenta os custos operacionais, especialmente em implantações em grande escala.

Vantagens do KVM

  • Alto Desempenho e Estabilidade Como o KVM opera como parte do kernel do Linux, ele oferece uso eficiente de recursos e controle fino sobre a alocação de CPU e memória. Sua estabilidade o torna adequado para sistemas de produção do mundo real.
  • Código Aberto e Sem Custos O KVM é totalmente de código aberto e não requer taxas de licenciamento, tornando-o ideal para construir uma plataforma de virtualização com orçamento limitado.
  • Ferramentas de Gerenciamento Ricas e Automação O KVM fornece tanto ferramentas de linha de comando (virsh, virt-install) quanto ferramentas GUI (virt-manager), facilitando a automação de operações e a integração com fluxos de trabalho de DevOps e gerenciamento de infraestrutura.

Desvantagens do KVM

  • SO Host Apenas para Linux O KVM requer o kernel do Linux e não pode ser usado como host em Windows ou macOS.
  • Conhecimento em Linux Necessário para Configuração e Solução de Problemas Embora existam ferramentas GUI, configurações avançadas e solução de problemas frequentemente requerem operações de linha de comando e conhecimento específico do Linux.

Quando Você Deve Escolher o KVM?

.

  • Quando você deseja utilizar os recursos físicos do servidor de forma eficiente
  • Quando a virtualização é necessária para sistemas ou servidores de nível de produção
  • Quando você quer construir uma plataforma de virtualização completa a baixo custo
  • Quando você deseja automatizar as operações de servidores Linux e o gerenciamento de infraestrutura

O KVM é recomendado não apenas para usuários e engenheiros Linux experientes, mas também para aqueles que planejam avançar para operações de servidor sérias no futuro.

Criação de Máquinas Virtuais e Operações Básicas

Uma vez que o ambiente KVM esteja pronto, você pode começar a criar e operar máquinas virtuais. O KVM permite escolher entre uma ferramenta de gerenciamento gráfica (virt‑manager) e operações via linha de comando (virt‑install e virsh), dependendo do seu caso de uso. Esta seção apresenta ambas as abordagens.

Criando Máquinas Virtuais com virt‑manager (GUI)

O virt‑manager é uma ferramenta que permite criar e gerenciar máquinas virtuais através de uma interface gráfica intuitiva. Se você estiver usando um ambiente de desktop Linux, o virt‑manager é especialmente conveniente.

  1. Inicie o virt-manager pelo menu de aplicativos ou pela linha de comando.
  2. Clique no botão “New” no canto superior esquerdo.
  3. Selecione a localização da mídia de instalação (como uma imagem ISO) e escolha o tipo de SO convidado (ex.: Ubuntu ou Windows).
  4. Configure a quantidade de CPUs, tamanho da memória e capacidade de disco para a máquina virtual.
  5. Revise as configurações e clique em “Finish” para criar a máquina virtual e iniciar o processo de instalação.

Com o virt‑manager, você pode iniciar, parar e reiniciar máquinas virtuais facilmente, criar snapshots e adicionar interfaces de rede ou dispositivos de armazenamento.

Criando Máquinas Virtuais com virt‑install (CLI)

Para casos de uso em servidores ou ambientes remotos, criar máquinas virtuais pela linha de comando costuma ser mais prático.
Abaixo está um exemplo de uso básico do comando virt-install.

sudo virt-install \
  --name ubuntu-vm \
  --memory 2048 \
  --vcpus 2 \
  --disk size=20 \
  --cdrom /path/to/ubuntu.iso \
  --os-type linux \
  --os-variant ubuntu20.04 \
  --network network=default \
  --graphics vnc
  • --name : Nome da máquina virtual
  • --memory : Memória alocada (em MB)
  • --vcpus : Número de núcleos de CPU virtuais
  • --disk size=20 : Tamanho do disco virtual (em GB)
  • --cdrom : Caminho para a imagem ISO usada na instalação
  • --os-type , --os-variant : Tipo e variante do SO
  • --network : Configuração de rede
  • --graphics : Modo gráfico (ex.: VNC)

Após executar o comando, a máquina virtual será iniciada automaticamente e exibirá a tela de instalação via VNC ou outra interface gráfica.

Iniciando, Parando, Excluindo e Criando Snapshots de Máquinas Virtuais

O KVM facilita o gerenciamento de máquinas virtuais usando comandos simples. As operações mais comuns incluem:

  • Iniciar uma máquina virtual
    virsh start <virtual-machine-name>
    
  • Desligar uma máquina virtual
    virsh shutdown <virtual-machine-name>
    
  • Forçar a parada de uma máquina virtual
    virsh destroy <virtual-machine-name>
    
  • Excluir uma máquina virtual (cuidado ao remover discos)
    virsh undefine <virtual-machine-name>
    
  • Criar um snapshot
    virsh snapshot-create-as <virtual-machine-name> <snapshot-name>
    

Todas essas operações também podem ser realizadas usando a interface gráfica do virt‑manager.

Configuração de Rede e Extensões

A configuração de rede é um aspecto crítico na operação de máquinas virtuais com KVM. Embora a configuração padrão seja suficiente para muitos casos, ambientes de produção frequentemente exigem personalizações. Esta seção explica os fundamentos da rede no KVM e as configurações avançadas mais usadas.

Diferenças entre NAT Padrão (virbr0) e Rede em Bridge

Quando o KVM é instalado, uma ponte de rede virtual chamada virbr0 é criada automaticamente. Trata‑se de uma rede baseada em NAT com as seguintes características.

  • Características do virbr0 (modo NAT)
  • Máquinas virtuais podem acessar a internet externa
  • Acesso direto a partir do host ou de outras redes requer encaminhamento de portas
  • Ideal para uso doméstico, desenvolvimento e ambientes de teste

Em contraste, o networking em ponte fornece às máquinas virtuais acesso equivalente à rede física.

  • Características do Networking em Ponte
  • Máquinas virtuais se juntam ao mesmo segmento de rede que o host
  • Acesso direto a partir de PCs físicos e outros servidores é possível
  • Ideal para servidores de produção e serviços de acesso público

Criando e Configurando uma Ponte Personalizada (Para Acesso LAN)

Se você deseja permitir acesso direto às máquinas virtuais a partir de servidores de produção ou outros PCs, deve configurar uma rede em ponte. Abaixo está um exemplo de procedimento geral onde a NIC física no host é eth0.

  1. Instalar bridge-utils (pule se já estiver instalado)
    sudo apt install bridge-utils
    
  1. Editar o arquivo de configuração de rede Ubuntu 18.04 e posteriores usam Netplan. Edite um arquivo de configuração como /etc/netplan/01-netcfg.yaml. Exemplo:
    network:
      version: 2
      renderer: networkd
      ethernets:
        eth0:
          dhcp4: no
      bridges:
        br0:
          interfaces: [eth0]
          dhcp4: yes
    
  1. Aplicar a configuração
    sudo netplan apply
    
  1. Atribuir a nova ponte (br0) à rede da máquina virtual Alterar o adaptador de rede para br0 usando virt-manager ou virsh.

Atribuição de IP Estático e Encaminhamento de Portas

  • Atribuição de IP Estático Você pode configurar um endereço IP estático dentro do SO convidado ou atribuir um IP fixo via servidor DHCP baseado no endereço MAC.
  • Encaminhamento de Portas (Ao Usar NAT) Usando o comando virsh ou a configuração XML do libvirt, você pode encaminhar portas específicas (como SSH ou serviços web) do host para a máquina virtual. Exemplo (encaminhando a porta SSH 22):
    virsh nat-forward --network default --add-port tcp:2222:22
    

Observação: Configurações mais avançadas são possíveis editando arquivos de configuração do libvirt ou controlando o acesso com firewalld.

Gerenciamento de Armazenamento e Operações de Disco

Ao operar máquinas virtuais com KVM, o design de armazenamento e o gerenciamento de discos são extremamente importantes. Esta seção explica os tipos de discos virtuais, como criá-los, como gerenciar pools de armazenamento e como expandir discos e usar snapshots de forma eficaz.

Tipos de Discos Virtuais (qcow2 e raw) e Casos de Uso

O KVM suporta principalmente os seguintes dois tipos de discos virtuais.

  • Formato qcow2
  • O formato padrão de disco virtual para KVM
  • Suporta snapshots, compressão de disco e alocação eficiente de espaço
  • Ideal para operações flexíveis e ambientes de teste
  • Formato raw
  • Um formato simples sem compressão ou conversão
  • Mais adequado para desempenho máximo e cargas de trabalho de alta I/O

Na maioria dos casos, qcow2 é recomendado, mas você deve escolher o formato com base em seus requisitos específicos.

Criando e Gerenciando Pools de Armazenamento

O KVM gerencia os recursos de disco usados pelas máquinas virtuais por meio de um conceito chamado pools de armazenamento.

  • Pool de Armazenamento Padrão Após a instalação, /var/lib/libvirt/images/ é usado como o pool de armazenamento padrão. Discos virtuais são criados dentro deste diretório.
  • Criando um Novo Pool de Armazenamento (Exemplo)
  1. Crie um diretório sudo mkdir /data/kvm-images sudo chown libvirt-qemu:kvm /data/kvm-images
  2. Adicione um novo pool usando virt-manager ou virsh. Usando virsh:
    virsh pool-define-as --name mypool --type dir --target /data/kvm-images
    virsh pool-autostart mypool
    virsh pool-start mypool
    

Expandindo Discos Virtuais e Usando Snapshots

  • Expandindo Discos Virtuais Para aumentar a capacidade do disco, use o comando qemu-img (suportado tanto para qcow2 quanto para raw).
    sudo qemu-img resize /var/lib/libvirt/images/ubuntu-vm.qcow2 +10G
    

Após redimensionar, você também deve expandir a partição e o sistema de arquivos dentro do SO convidado.

  • Usando Snapshots Com discos qcow2, você pode criar snapshots para salvar o estado de uma máquina virtual em um ponto específico no tempo.
    virsh snapshot-create-as <virtual-machine-name> <snapshot-name>
    

Snapshots são extremamente úteis para backups antes de alterações de configuração, atualizações de sistema ou testes de cenários de reversão.

Instalação e Operação do Sistema Operacional Convidado

Esta seção explica como instalar e operar eficientemente sistemas operacionais dentro de máquinas virtuais KVM. Ela cobre procedimentos típicos de instalação de SOs convidados, manipulação de imagens ISO e dicas de otimização de desempenho.

Instalando Sistemas Operacionais Convidados Comuns

KVM suporta uma grande variedade de sistemas operacionais convidados, incluindo Ubuntu, CentOS e Windows. Abaixo estão exemplos de procedimentos de instalação para Ubuntu e Windows.

  • Instalação do Ubuntu
  1. Baixe a imagem ISO mais recente no site oficial do Ubuntu.
  2. No virt‑manager, selecione “Mídia de instalação local” ao criar uma nova máquina virtual e especifique o arquivo ISO baixado.
  3. Configure CPU, memória e capacidade de disco para a máquina virtual.
  4. Siga as instruções na tela para concluir a instalação padrão do Ubuntu.
  • Instalação do Windows
  1. Baixe uma imagem ISO de avaliação do Windows no site oficial da Microsoft.
  2. Crie uma nova máquina virtual usando virt‑manager ou virt‑install e especifique o arquivo ISO.
  3. Para convidados Windows, a instalação dos drivers virtio melhora significativamente o desempenho de disco e rede. Monte a ISO virtio como um CD virtual e aplique-a durante a configuração.

Obtendo e Montando Imagens ISO

  • A instalação do SO convidado requer imagens ISO baixadas de fontes oficiais.
  • Ao especificar o caminho do arquivo ISO durante a criação da VM, ele será montado como um CD/DVD virtual.
  • Várias imagens ISO (SO e drivers) podem ser montadas simultaneamente, se necessário.

Dicas para Operação do SO Convidado e Otimização de Desempenho

  • Otimizar a Alocação de Recursos Alocar CPU e memória adequadamente. Alocar recursos em excesso pode afetar negativamente o SO host e outras máquinas virtuais.
  • Instalar Drivers virtio Instalar drivers virtio em convidados Windows ou Linux mais antigos melhora muito o desempenho de disco e rede.
  • Desativar Serviços Desnecessários Desativar serviços e processos em segundo plano que não são usados dentro do SO convidado ajuda a conservar recursos do sistema.
  • Usar Ferramentas de Convidado KVM Instalar o QEMU Guest Agent permite a recuperação mais precisa de informações da VM e operações controladas de desligamento.

Casos de Uso Práticos e Dicas de Automação

KVM não se limita à criação e operação simples de máquinas virtuais. É amplamente usado em diversos cenários empresariais e de desenvolvimento, e sua eficiência de gerenciamento pode ser grandemente aprimorada ao combiná‑lo com scripts e ferramentas de automação. Esta seção apresenta casos de uso práticos e ideias de automação.

Exemplos de Casos de Uso em Servidores

  • Separação de Ambientes de Desenvolvimento e Teste Ao preparar máquinas virtuais separadas para cada projeto, você pode alternar livremente versões de software e configurações. Isso permite testar novas versões de SO ou aplicativos sem impactar os sistemas de produção.
  • Construção de Serviços Internos Executar servidores de arquivos, servidores web e servidores de banco de dados em máquinas virtuais distintas ajuda a limitar o impacto de falhas. Backups e snapshots também podem ser gerenciados facilmente por VM.

Provisionamento Automatizado Usando CLI e Ansible

  • Criação Automatizada de VMs com CLI Ao scriptar os comandos virt-install e virsh, você pode criar e gerenciar automaticamente múltiplas máquinas virtuais. Exemplo: script Shell para criação em lote de VMs.
    for i in {1..5}
    do
      virt-install --name test-vm-$i --memory 1024 --vcpus 1 \
        --disk size=10 --cdrom /path/to/ubuntu.iso \
        --os-type linux --os-variant ubuntu20.04 \
        --graphics none --network network=default --noautoconsole
    done
    
  • Automação de Infraestrutura com Ansible Usando Ansible, você pode automatizar a criação de máquinas virtuais, configuração inicial e implantação de aplicativos usando apenas playbooks. Isso é especialmente eficaz para ambientes com muitos servidores ou onde a consistência de configuração é crítica.

Dicas para Operações Semelhantes a Nuvem

  • Criação de Modelos de VM Salvar máquinas virtuais base frequentemente usadas como modelos permite implantar novos servidores quase instantaneamente.
  • Integração de API e Ferramentas de Gerenciamento Baseadas na Web libvirt fornece APIs que podem ser integradas com ferramentas personalizadas ou outros sistemas de gerenciamento. Em ambientes de grande escala, ferramentas de gerenciamento baseadas na web, como Cockpit, permitem controle visual e centralizado.

Solução de Problemas e Soluções para Erros Comuns

Ao operar um ambiente KVM, você pode encontrar problemas como máquinas virtuais falhando ao iniciar ou problemas de conectividade de rede. Esta seção cobre problemas comuns, etapas de solução de problemas e como usar efetivamente logs e recursos de suporte.

Problemas Comuns no KVM

  • Máquina virtual falha ao iniciar ou não pode ser criada
  • Virtualização de hardware (Intel VT ou AMD-V) está desabilitada
  • Memória ou espaço em disco alocado insuficiente
  • Pool de armazenamento incorreto ou caminho da imagem ISO
  • Problemas de conectividade de rede
  • Configuração incorreta do adaptador de rede virtual
  • Ponte ou NAT mal configurados, ou falha na atribuição de DHCP
  • Restrições de firewall ou segurança
  • Desempenho severamente degradado
  • Super-alocação ou sub-alocação de recursos
  • Drivers virtio ausentes (especialmente para convidados Windows)
  • Gargalos de I/O de disco

Inspeção de Logs e Fluxo Básico de Solução de Problemas

Quando problemas ocorrem, verificar os logs deve ser seu primeiro passo.

  • Verificar logs do sistema
    sudo journalctl -xe
    

Procure por mensagens de erro relacionadas ao KVM ou libvirt.

  • Verificar logs do libvirt Arquivos de log em /var/log/libvirt/ (como libvirtd.log ) fornecem informações valiosas.
  • Verificar logs específicos da VM Use virt-manager ou virsh para inspecionar o status da VM e revisar detalhes de erro nos logs ou na visão de detalhes.
  • Verificar status da rede
    ip a
    brctl show
    virsh net-list --all
    

Esses comandos ajudam a verificar conexões de rede e configurações de ponte.

Fluxo de Trabalho Básico de Solução de Problemas

  1. Identifique quando o problema começou e o que mudou
  2. Revise logs e configurações
  3. Modifique configurações se necessário e reinicie serviços ou recrie a máquina virtual

Usando Documentação Oficial e Recursos da Comunidade

Os seguintes recursos são extremamente úteis ao solucionar problemas.

Otimização de Segurança e Desempenho

Para operar um ambiente KVM de forma segura e eficiente, medidas de segurança e otimização de desempenho são essenciais. Esta seção introduz técnicas práticas para proteger sua plataforma de virtualização e maximizar a eficiência de recursos.

Fortalecendo a Segurança de Virtualização

  • Desativar Serviços Desnecessários e Minimizar Configuração Desative serviços não utilizados em sistemas guest e host para reduzir a superfície de ataque.
  • Firewall e Controle de Acesso Configure firewalls (como ufw ou firewalld) adequadamente em sistemas host e guest. Proteja o acesso SSH usando portas não padrão, autenticação baseada em chaves e ferramentas como fail2ban.
  • Isolamento Entre Máquinas Virtuais Separe servidores críticos usando redes virtuais diferentes ou segmentação de rede física para limitar danos em caso de comprometimento.
  • Atualizações Regulares Mantenha sistemas host e guest atualizados com patches de segurança e atualizações de software.

Otimização de Alocação de Recursos (CPU, Memória, I/O de Disco)

  • Gerenciamento Básico de Recursos Aloque CPU e memória com cuidado para cada máquina virtual, deixando recursos suficientes para o sistema host.
  • Otimização de I/O de Disco Use armazenamento SSD de alta velocidade para máquinas virtuais críticas. Seja cauteloso com o uso excessivo de snapshots no formato qcow2, pois pode impactar o desempenho.
  • Use Drivers virtio Instalar drivers virtio melhora significativamente o desempenho de disco e rede em sistemas operacionais guest.

Automatizando Backups e Snapshots

  • Criação Regular de Snapshots Snapshots periódicos permitem recuperação rápida em caso de falha do sistema.
  • Backup de Imagens de Disco e Arquivos de Configuração Faça backup regular de imagens de disco virtuais (qcow2 ou raw) e arquivos de configuração XML do libvirt para armazenamento externo.
  • Integração com Ferramentas de Automação Use cron ou Ansible para automatizar tarefas de backup e snapshot.

Conclusão e Recursos de Aprendizado

Este artigo cobriu tudo, desde a construção de um ambiente de virtualização KVM no Ubuntu até operações diárias, casos de uso práticos, solução de problemas, segurança e otimização de desempenho. Abaixo está um resumo e recursos recomendados para aprendizado adicional.

Resumo

  • Visão Geral e Benefícios do KVM KVM é uma tecnologia de virtualização open-source de alto desempenho amplamente usada em ambientes de servidor Ubuntu.
  • Da Instalação à Operação Caminhamos através de verificações de virtualização de CPU, instalação de pacotes, configuração de permissões, criação de VM e operações básicas.
  • Redes, Armazenamento e Melhores Práticas Operacionais Você aprendeu como configurar redes NAT e bridge, gerenciar pools de armazenamento, expandir discos e usar snapshots de forma eficaz.
  • Solução de Problemas e Segurança Soluções para erros comuns, métodos de inspeção de logs e melhores práticas para operações seguras e eficientes foram introduzidas.

Próximos Passos e Recursos Recomendados

KVM é uma plataforma de virtualização poderosa adequada para uso individual e empresarial. Use este guia como base para aprofundar ainda mais seu entendimento e adaptar o KVM às suas necessidades específicas.

Folha de Trapaça de Comandos e Exemplos de Configuração Comuns

Ter comandos e exemplos de configuração frequentemente usados prontamente disponíveis pode melhorar significativamente a eficiência do gerenciamento diário de VM. Esta seção fornece uma referência concisa.

Comandos Comuns do KVM / virsh / virt-manager

  • Listar máquinas virtuais
    virsh list --all
    
  • Iniciar uma máquina virtual
    virsh start <virtual-machine-name>
    
  • Desligar uma máquina virtual
    virsh shutdown <virtual-machine-name>
    
  • Parar forçadamente uma máquina virtual
    virsh destroy <virtual-machine-name>
    
  • Criar uma máquina virtual (virt-install)
    virt-install --name <name> --memory <MB> --vcpus <cores> \
      --disk size=<GB> --cdrom <ISO-path> \
      --os-type linux --os-variant ubuntu20.04
    
  • Remover uma máquina virtual (apenas definição)
    virsh undefine <virtual-machine-name>
    

Exemplos de Configuração de Rede e Ponte

  • Listar redes
    virsh net-list --all
    

Gerenciamento de Armazenamento e Operações de Disco

  • Listar pools de armazenamento
    virsh pool-list --all
    
  • Redimensionar um disco virtual
    sudo qemu-img resize /path/to/disk.qcow2 +10G
    
  • Criar um snapshot
    virsh snapshot-create-as <virtual-machine-name> <snapshot-name>
    

Outras Dicas Úteis

  • Habilitar autostart de VM
    virsh autostart <virtual-machine-name>
    
  • Exibir informações detalhadas de VM
    virsh dominfo <virtual-machine-name>
    
  • Iniciar virt-manager (GUI)
    virt-manager
    

FAQ

Q1: Qual é a diferença entre KVM, VirtualBox e VMware?

A1: O KVM é uma plataforma de virtualização de alto desempenho integrada ao kernel do Linux e é bem adequada para servidores de produção. O VirtualBox é projetado principalmente para uso em desktop, enquanto o VMware oferece recursos empresariais ricos com suporte comercial. O KVM é ideal se você quiser alto desempenho a baixo custo.

Q2: Como posso fazer backup e restaurar máquinas virtuais?

A2: Você pode fazer backup de máquinas virtuais copiando arquivos de imagem de disco (qcow2 ou raw). Também é recomendado fazer backup dos arquivos de configuração XML do libvirt e snapshots para uma restauração mais fácil.

Q3: Posso usar dispositivos USB dentro de uma máquina virtual?

A3: Sim. Você pode configurar o passthrough de USB usando as configurações de hardware do virt-manager ou via virsh, permitindo que dispositivos de armazenamento USB, drives externos e impressoras sejam usados dentro de máquinas virtuais.

Q4: Como posso iniciar máquinas virtuais automaticamente quando o host inicializar?

A4: Execute o comando virsh autostart <nome-da-máquina-virtual> para habilitar o início automático quando o sistema host inicializar.

Q5: O que devo fazer se uma máquina virtual estiver executando lentamente?

A5: Revise a alocação de CPU e memória, otimize o I/O de disco (use armazenamento mais rápido ou mude de qcow2 para raw se apropriado) e instale drivers virtio no SO convidado.

Q6: A configuração de rede não funciona corretamente. O que devo verificar?

A6: Verifique o status da rede usando comandos virsh e brctl. Revise os arquivos de configuração de ponte e Netplan ou NetworkManager e recrie redes virtuais se necessário.

Q7: Posso construir clusters ou configurações de alta disponibilidade (HA) com KVM?

A7: Sim. Combinando o KVM com Pacemaker, Corosync e armazenamento compartilhado (NFS ou iSCSI), você pode implementar configurações HA e migração ao vivo. É necessário conhecimento avançado.

侍エンジニア塾