Sobre as fontes usadas

Este artigo foi organizado a partir da documentação oficial do Proxmox VE (pve.proxmox.com/pve-docs), usando os capítulos Installation, Package Repositories, Qemu/KVM Virtual Machines, Proxmox Container Toolkit e Backup and Restore. Eu nunca instalei o Proxmox VE em hardware real; todos os comandos, caminhos e configurações vêm da documentação oficial, e o capítulo correspondente está indicado no início de cada seção — confira antes de executar.

O capítulo sobre repositórios descreve o Proxmox VE 9, baseado no Debian 13 (trixie). As configurações de repositório abaixo só servem para essa versão; se você usar outra, consulte o capítulo Package Repositories da documentação da sua versão e não altere Suites: por conta própria. Os comandos de administração citados no texto (apt, pveam, pct, vzdump etc.) devem ser executados por padrão em um shell root.

Requisitos de hardware

  • CPU: hosts x86 precisam de uma CPU e uma placa-mãe com Intel VT ou AMD-V, para a virtualização completa via KVM.
  • Memória: mínimo de 1 GB somado à memória que os convidados vão usar; a recomendação oficial é pelo menos 2 GB para o sistema e os serviços do Proxmox VE, mais a parte reservada aos convidados.
  • Armazenamento: a recomendação oficial é armazenamento rápido e com redundância; SSD dá o melhor resultado, de preferência um SSD com proteção contra perda de energia (Power-Loss-Protection); SSDs de consumo não são recomendados.
  • Rede: no mínimo uma interface de rede; recomenda-se várias interfaces redundantes de gigabit ou mais.

Instalação

Baixe a ISO na página oficial de downloads. Ela é uma imagem híbrida: pode ser gravada em um pendrive com dd, Etcher ou Rufus (modo DD); a documentação oficial adverte para não usar o UNetbootin. A página de download tem somas de verificação — confira antes de gravar.

O fluxo do instalador:

  1. Ler a EULA e escolher o disco de destino. Por padrão, o disco inteiro será apagado; se houver dados no disco, faça backup antes.
  2. Definir localização, fuso horário e layout de teclado — normalmente detectados automaticamente.
  3. Definir a senha de root e o e-mail para notificações.
  4. Configurar a rede. Durante a instalação é possível definir um endereço IPv4 ou IPv6, mas não os dois ao mesmo tempo.
  5. Conferir o resumo, confirmar, instalar e reiniciar.

O sistema de arquivos padrão é ext4 (usando LVM), mas também é possível escolher XFS, BTRFS (technical preview) ou ZFS. O ZFS oferece RAID por software, adequado para máquinas sem controladora de RAID por hardware; a documentação oficial adverte que não há suporte para colocar ZFS sobre RAID por hardware.

Depois de instalado, abra https://<seu-IP>:8006 no navegador, com o usuário root, o domínio de autenticação PAM e a senha de root definida na instalação. A documentação oficial também menciona que o Proxmox VE pode ser instalado sobre um Debian existente, mas isso só é recomendado para usuários avançados; se é seu primeiro contato, use a ISO.

Repositórios de software

É a primeira coisa a resolver depois de instalar. O Proxmox VE vem por padrão com o repositório empresarial habilitado, que exige uma chave de assinatura, e a chave é vinculada à arquitetura do host (um host arm64 precisa de uma chave arm64). Sem assinatura, o procedimento oficial é desativar o repositório empresarial e usar o repositório sem assinatura.

O arquivo do repositório empresarial é /etc/apt/sources.list.d/pve-enterprise.sources:

Types: deb
URIs: https://enterprise.proxmox.com/debian/pve
Suites: trixie
Components: pve-enterprise
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg

Adicionar a linha Enabled: no a essa entrada desativa o repositório. Depois, crie /etc/apt/sources.list.d/proxmox.sources com o repositório sem assinatura:

Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg

O aviso oficial sobre ele é: "It's not recommended to use this on production servers, as these packages are not always as heavily tested and validated." Ou seja, não é recomendado em servidores de produção, porque esses pacotes não passam sempre por testes e validação igualmente rigorosos. Se o seu laboratório caseiro roda serviços cuja perda seria um problema, ele deve ser tratado como produção — isso é opinião minha; a documentação oficial não define critérios. Os repositórios base do próprio Debian devem ser mantidos e usados junto com qualquer repositório do Proxmox.

Para atualizar, use a forma oficial:

apt update
apt full-upgrade

A recomendação oficial é apt full-upgrade, porque apt upgrade não pode remover pacotes para satisfazer dependências, e nesse modelo de distribuição contínua isso pode deixar o sistema parcialmente atualizado.

Algumas configurações recomendadas para máquinas virtuais

  • Tipo de máquina: o padrão é Intel 440FX; o Q35 oferece um barramento PCIe virtualizado e é útil para passthrough de PCIe.
  • Firmware: só é preciso trocar o SeaBIOS padrão por OVMF se você pretende fazer passthrough de PCIe.
  • Controladora SCSI: recomenda-se VirtIO SCSI single, com IO Thread habilitado nos discos. Convidados Windows precisam de uma ISO de drivers adicional durante a instalação.
  • Placa de rede: recomenda-se a placa paravirtualizada VirtIO; o padrão é Intel E1000. O convidado precisa do driver VirtIO correspondente.
  • Agente de convidado do QEMU: se você pretende instalá-lo (ou a ISO já o inclui), marque a opção "QEMU Agent". A documentação oficial explica que assim o Proxmox VE consegue exibir mais informações e executar desligamento e snapshots de forma mais inteligente. A parte da documentação que li não traz o comando de instalação; consulte a documentação da distribuição do seu convidado.

Snapshots com memória preservam a versão original da máquina, que não pode mais ser alterada depois.

Diferença entre contêineres e máquinas virtuais

Contêineres usam o kernel do host e não emulam um sistema operacional completo, então têm overhead menor, com a contrapartida de só executarem distribuições Linux. O Proxmox VE implementa contêineres com LXC e os gerencia com pct.

Os templates são gerenciados com pveam. Primeiro atualize a lista de templates (a documentação oficial diz que ela também é atualizada automaticamente todos os dias por um timer) e depois liste os templates disponíveis:

pveam update
pveam available --section system

--section system serve para reduzir o escopo. O formato para baixar um template é pveam download local <nome-do-arquivo-de-template> e o formato para criar um contêiner é pct create <ID-do-contêiner> local:vztmpl/<nome-do-arquivo-de-template>; substitua o que está entre colchetes angulares pelos seus próprios valores: para o nome do arquivo de template, use o nome atual listado por pveam available — o debian-10.0-standard_10.0-1_amd64.tar.gz do exemplo oficial tem número de versão antigo, não copie. Os templates já baixados são listados com pveam list local.

Novos contêineres são, por padrão, não privilegiados: o root dentro do contêiner é mapeado para um usuário sem privilégios no host. Contêineres privilegiados dependem de AppArmor, seccomp e namespaces para segurança, e a documentação oficial diz que só devem ser usados em ambientes confiáveis — portanto, na primeira vez, mantenha o padrão.

Backup e restauração

Máquinas virtuais têm três modos de backup:

  • stop: a maior consistência, com o custo de uma breve interrupção da VM — primeiro um desligamento ordenado, depois o backup por um processo QEMU em segundo plano.
  • suspend: mantido por compatibilidade; primeiro suspende a VM e depois segue o modo snapshot. A recomendação oficial é usar snapshot direto.
  • snapshot: o menor tempo de parada, com o custo de um leve risco de inconsistência, porque os dados são copiados enquanto a VM continua rodando.

Sobre como escolher, a documentação oficial não traz recomendações para cenários domésticos. Minha opinião: para serviços que toleram alguns minutos de parada, use stop; para os que não podem parar, use snapshot e aceite esse pequeno risco.

Exemplos oficiais com vzdump:

vzdump 777 --mode suspend
vzdump 777 --dumpdir /mnt/backup --mode snapshot
vzdump 123 --storage pbs-storage --pbs-change-detection-mode metadata

O terceiro comando faz backup para o Proxmox Backup Server. A opção de compressão compress: <0 | 1 | gzip | lzo | zstd> pode ser definida em /etc/vzdump.conf; a documentação não traz exemplo de linha de comando.

Para restaurar: contêineres usam pct restore e máquinas virtuais usam qmrestore, conforme os exemplos oficiais:

pct restore 600 /mnt/backup/vzdump-lxc-777.tar
qmrestore /mnt/backup/vzdump-qemu-888.vma 601

Backups agendados são gerenciados na interface em Datacenter → Backup, com seleção de nós e convidados; os campos de agendamento aceitam eventos de calendário no estilo systemd. A documentação oficial só menciona o armazenamento de backups em fita para arquivamento externo. Minha sugestão é copiar ao menos os backups importantes para uma máquina fora do host Proxmox, para que o disco do host não leve os backups junto se falhar — isso é recomendação minha, não posição oficial.

Este artigo não cobre cluster, alta disponibilidade, os passos concretos de passthrough de PCIe nem ajuste fino do ZFS; todos esses temas têm capítulos próprios na documentação oficial.