O SNMP no ESXi é essencial para a observabilidade do host. Sem a configuração correta do serviço e a devida liberação no firewall interno, o host permanecerá silenciado para ferramentas de monitoramento como Zabbix ou LibreNMS.Pode acontecer também de tentar subir o serviço via GUI e ele simplesmente falhar. Por isso preparei um tutorial para habilitar o SNMP no ESXi 6.7.
Polling (Porta 161/UDP): O servidor de monitoramento solicita métricas ao host.
Traps (Porta 162/UDP): O host envia alertas ativos ao servidor de monitoramento assim que um evento ocorre.
Para este guia, utilizamos os seguintes parâmetros baseados na RFC 5737:
Host ESXi: 192.0.2.10
Zabbix/Monitoring Server: 198.51.100.50
Community: JBITCORE-SNMP-RO
Antes de aplicar mudanças, verifique o estado atual do serviço via SSH:
esxcli system snmp get
Pontos de atenção:
Enabled: Deve estar como false antes da configuração.
Communities: Se estiver vazio, a coleta falhará por falta de autenticação.
Substitua o valor padrão public por uma string segura para evitar exposição desnecessária.
esxcli system snmp set --communities <sua_community>
O formato segue rigorosamente o padrão IP@PORTA/COMMUNITY.
esxcli system snmp set --targets <IP_Zabbix>@162/<sua_community>
Habilite o agente SNMP para que ele comece a processar as configurações.
esxcli system snmp set --enable true
No ESXi, a configuração do protocolo (CLI) e a permissão de tráfego (Firewall) são camadas distintas.
Navegue até Navigator > Networking > Firewall Rules.
Na caixa de pesquisa, localize a regra SNMP Server.
Clique com o botão direito e selecione Service > Start.
4. Importante: Verifique em Services se o daemon snmpd consta como Running. Caso contrário, inicie-o manualmente.
Para seguir as boas práticas de hardening, limite quais IPs podem realizar o polling:
Em Edit settings da regra de firewall, desmarque "Allow connections from any IP".
Insira apenas o IP do seu servidor de monitoramento (198.51.100.50).
No VMWARE ESXi, verifique se a regra de firewall está ativa via CLI:
esxcli network firewall ruleset list | grep snmp
A saída deve ser algo como a abaixo:
[root@JBITCOREHYP01:~] esxcli network firewall ruleset list | grep snmp
snmp true
A partir ddo servidor do Zabbix, teste a resposta do host:
snmpwalk -v2c -c <sua_community> <IP_VMWARE_ESXi> 1.3.6.1.2.1.1.1
A saída deve ser algo como a abaixo:
SNMPv2-MIB::sysDescr.0 = STRING: VMware ESXi 6.7.0 build-14320388 VMware, Inc. x86_64
Com isso, basta configurar o Host via SNMP no Zabbix.