Otimização do host Proxmox VE 8.4 (sem mexer em VMs/LXC): repositórios corretos e microcode Intel
Este tutorial documenta as alterações efetivamente aplicadas no host Proxmox para melhorar a robustez e a previsibilidade do sistema (incluindo correções de CPU via microcode), sem entrar em ajustes de performance dentro de VMs ou containers.
1) Ambiente do host (inventário relevante)
Host: kaiser
Proxmox VE: 8.4.0
Kernel em execução no momento da coleta: 6.8.12-17-pve
Distribuição base: Debian 12 (bookworm)
CPU: 2× Intel Xeon E5-2686 v4 @ 2.30GHz (72 CPUs lógicas / 36 cores físicos)
RAM: 128 GiB
Storage (host):
- NVMe Kingston NV2 2TB (DRAM-less) — 2 unidades
- HDD 2TB (ST2000NM0011)
- HDD 1TB (ST1000DM010)
Benchmark rápido (host, /):
FSYNCS/SECOND: 1209.45
O
pveperfusaFSYNCS/SECOND > 200como referência prática mínima para storage razoável; acima disso, o storage costuma estar “OK” para muitos cenários, embora o número real dependa do seu workload. citeturn0search0
2) O problema: host sinalizando vulnerabilidades “no microcode” e APT sem o pacote Intel
Antes da correção, o boot mostrava mensagens como:
MDS: Vulnerable ... no microcodeTAA: Vulnerable ... no microcodeMMIO Stale Data: Vulnerable ... no microcode
Mesmo existindo um microcode carregado via BIOS (Current revision: 0x0b00002e), o kernel indicava que mitigações específicas dependiam de microcode mais novo, e o pacote intel-microcode não estava disponível no APT.
A causa foi simples: em Debian 12 / Proxmox VE 8 (Bookworm), firmwares “non-free” foram movidos para o componente non-free-firmware, e seu sources.list não incluía esse componente. citeturn0search2turn0search0
Além disso, o pacote intel-microcode no Bookworm está explicitamente no componente [non-free-firmware]. citeturn0search3
3) Por que microcode importa (e por que isso é “otimização” do host)
Microcode é uma atualização fornecida pelo fabricante do CPU para:
- corrigir comportamentos do processador (errata),
- melhorar estabilidade,
- habilitar ou ajustar mitigações de segurança,
- e, em alguns casos, impactar consistência/latência em cargas reais.
O Debian documenta a instalação de microcode e recomenda manter BIOS/UEFI e microcode atualizados. citeturn0search0
A página do pacote também descreve que a Intel publica microcodes para corrigir comportamento do processador. citeturn0search3
Nota importante (comum confusão): “non-free” aqui é licença do microcode/firmware, não “assinatura paga do Proxmox”. citeturn0search4
4) O que foi feito (passo a passo)
4.1 Verificar microcode atual e mensagens no boot
dmesg | grep -i microcode | tail -n 50
grep -m1 microcode /proc/cpuinfo
Objetivo: confirmar o revision atual e se o kernel já registra microcode no boot.
4.2 Diagnosticar repositórios APT (por que o pacote não existia)
grep -R --line-number -E '^[[:space:]]*deb ' /etc/apt/sources.list /etc/apt/sources.list.d/* 2>/dev/null || true
Foi constatado que o Debian estava com:
bookworm main contrib
Sem non-free-firmware, o APT não enxerga intel-microcode no Debian 12. citeturn0search0turn0search3
4.3 Corrigir /etc/apt/sources.list para incluir non-free-firmware
Exemplo do formato final (Bookworm):
deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
A mudança está alinhada tanto com o Debian (microcode) quanto com a documentação do Proxmox sobre Bookworm e non-free-firmware. citeturn0search0turn0search2
4.4 Atualizar índices e confirmar que intel-microcode agora existe
apt update
apt-cache policy intel-microcode
O objetivo é ver um Candidate diferente de (none).
4.5 Instalar microcode e ferramentas, regenerar initramfs e reiniciar
apt install intel-microcode iucode-tool
update-initramfs -u -k all
reboot
O Debian recomenda instalar intel-microcode para CPUs Intel e aponta a necessidade do non-free-firmware no Debian 12. citeturn0search0turn0search3
5) Validação pós-reboot (confirmação de resultado)
Após reiniciar, valide:
dpkg -l | egrep 'intel-microcode|iucode-tool'
dmesg | grep -i microcode | tail -n 80
grep -m1 microcode /proc/cpuinfo
for f in /sys/devices/system/cpu/vulnerabilities/*; do
echo "== $f =="; cat "$f"; echo
done
O que você busca:
- pacote instalado,
- mensagens de microcode no boot,
- revision consistente,
- e mudanças (quando aplicável) em
vulnerabilities/*(nem toda CPU antiga “vira mitigada” para tudo, mas o objetivo é eliminar a situação de “sem microcode apropriado” quando houver atualização disponível).
6) Vantagens objetivas da configuração aplicada
-
Microcode atualizado no boot via APT
Você deixa de depender exclusivamente do microcode embarcado no BIOS/UEFI e passa a receber updates do pacote Debian quando disponíveis. citeturn0search0turn0search3 -
Menos warnings “no microcode” e melhor postura de segurança
Mitigações e correções podem depender de microcode. Microcode atualizado melhora a chance de mitigações efetivas onde suportado. citeturn0search0 -
Higiene de repositórios coerente com Proxmox VE 8 / Bookworm
O Proxmox documenta explicitamente a migração de firmware non-free paranon-free-firmwareno Bookworm, evitando surpresas futuras em upgrades/instalações. citeturn0search2 -
Sem relação com “assinatura paga” do Proxmox
“non-free” aqui é sobre licença do firmware/microcode, não sobre acesso ao repositório enterprise do Proxmox. citeturn0search4
7) Notas e armadilhas comuns
7.1 “intel-microcode não tem candidato”
Quase sempre significa: faltou non-free-firmware no sources.list. O Debian explicitamente chama isso no Debian 12. citeturn0search0turn0search3
7.2 Cuidado ao copiar/colar
No terminal, cole somente comandos. Linhas de output (Hit:1 ..., Reading package lists..., ou linhas do dmesg com [ 0.905 ]) não são comandos e vão gerar command not found.
7.3 Warning do update-initramfs sobre EFI/ESP
Durante update-initramfs, pode aparecer algo como:
“Couldn't find EFI system partition. It is recommended to mount it to /boot or /efi.”
Isso não invalida o microcode em si. Porém, se seu host estiver em UEFI e você quiser “limpar” esse aviso, o caminho correto é garantir que a ESP esteja montada (ex.: em /boot/efi) e que o seu fluxo de boot esteja coerente.
8) Repositórios do Proxmox: nota de sanidade (curta)
Você estava usando o repositório pve-no-subscription (adequado para quem não usa o repositório enterprise). A wiki oficial do Proxmox descreve os repositórios e também reforça o ponto do non-free-firmware em Bookworm. citeturn0search2
9) Próximos passos opcionais (host-level), se o objetivo for “latência mais consistente”
As opções abaixo não fazem parte do que foi executado neste registro, mas são os próximos “tweaks” de host com melhor custo/benefício quando o foco é consistência de performance:
- governor de CPU em
performance(reduz variação de latência), irqbalance(melhor distribuição de interrupções),fstrim.timer(TRIM periódico em SSD/NVMe),- desativar KSM quando não há pressão de memória.
Recomendação prática: só aplique cada item se você conseguir medir antes/depois (mesmo que com métricas simples), para não “otimizar placebo”.