Monitorando Proxmox VE no Zabbix
Aqui está a forma mais simples e direta para monitorar com o Zabbix os ambientes de virtualização construídos com o Proxmox VE.
O projeto está disponível no GitHub e foi feito pelo Saulo Costa (https://github.com/saulotarsobc), então vamos dar os créditos e agradecimentos pela criação a ele.
Algumas informações importantes faltaram provável que foi falta de conhecimento meu mesmo então estou documentando aqui da forma mais detalhada possível.
Link do projeto no GitHub: https://github.com/Full-Monitoring/oluas_proxmox
Configuração do ambiente do tutorial:
É importante estar atendo as particularidades envolvidas em cada uma das partes do ambiente, talvez o que funcionou de primeira para mim não funcione para você.
Debian 11
Zabbix 6.0.9
Zabbix Agent 2
Proxmox VE 7.3-3
As regras de Firewall no Proxmox VE e Zabbix estava permitindo a comunicação entre eles, então enteja atendo as configurações de segurança também.
Criando o Usuário da API no Proxmox VE
A primeira coisa a ser feita é a configuração da API no Proxmox VE, pois os dados gerados serão usados posteriormente na configuração do Host no Zabbix.
Alguns passos são necessários para a criação do usuário da API da maneira correta. Reduzi e acrescentei algumas coisas na criação do usuário da API para 15 passos e inseri algumas imagens para facilitar a vida de quem vai acompanhar o tutorial.
Cada passo a passo foi retirado e traduzido do link abaixo. É possível ir marcando cada etapa feita, isso ajuda a não errar durante o processo já que são muitos passos.
Link: https://i12bretro.github.io/tutorials/0572.html
Criando um Usuário de API
1 – Faça login na IU da Web do Proxmox VE.
2 – Selecione Datacenter no menu de navegação à esquerda.
3 – Selecione Usuários no menu de subnavegação à esquerda.
4 – Clique no botão Adicionar na parte superior da área de conteúdo principal.
5 – Digite o de nome de usuário, defina o Realm para o servidor de autenticação Proxmox VE e defina e confirme uma senha > Clique em Adicionar.
6 – Selecione API Tokens no menu de subnavegação à esquerda.
7 – Selecione usuario@pve para o nome de usuário (desabilite a opção Privilege Separation).
8 – Insira uma chave secreta no campo Token ID > Clique em Adicionar.
TIP: Use um gerador de string aleatório para criar um gerador de string de ID de Token exclusivo.
Link do gerador de string: https://www.random.org/passwords/?num=1&len=24&format=plain&rnd=new
9 – Copie o Token ID e o Segredo exibidos para um documento de texto para uso posterior.
10 – Selecione Funções no menu de subnavegação esquerdo.
11 – Clique no botão Criar na parte superior da área de conteúdo principal.
12 – Nomeie a nova função NomeAPI e selecione todos os Privilégios disponíveis > Clique em Criar.
NOTA: Essas permissões podem ser ajustadas posteriormente.
INFORMAÇÕES: Mais informações sobre cada privilégio podem ser encontradas na Documentação Oficial do Proxmox VE.
Link da Documentação Oficial: https://pve.proxmox.com/pve-docs/pve-admin-guide.html#pveum_permission_management
13 – Selecione Permissões no menu de subnavegação esquerdo.
14 – Selecione a permissão Adicionar > Permissão do Usuário na parte superior da área de conteúdo principal.
15 – Defina o caminho como /, selecione o usuário usuario@pve e defina a função como NomeAPI > clique em Adicionar.
As informações importantes para configurar no Zabbix são:
Token ID :erick@pve!d9t62cZQqANbwPG3zG94Kfd
Secret: 0695fb4a-546a-406d-9f7a-d1a3270074e6
Baixando e Importando o template do Zabbix
1 – Faça o download do arquivo Source code (zip) que contém o template que será importado para o Zabbix:
Link do template Http Agent Item: https://github.com/Full-Monitoring/oluas_proxmox/releases/tag/6.0.1
2 – Extraia o arquivo e importe o template para o Zabbix.
Configuração > Templates > Importar.
Criando um Host no Zabbix Se ainda não existir um Host em seu Zabbix, adicione seguindo o Menu Monitoramento > Hosts > Criar host.
Durante a criação do Host será preciso associar ele ao template que você acabou de importar. No menu Macros é indispensável ter 3 tipos para que a integração funcione corretamente, são elas:
{$PVESECRET} - > VALOR (SECRET GERADA COM O TOKEN ID)
{$PVESERVER} -> VALOR (IP DO SEU PROXMOX VE)
{$PVETOKENID} - > VALOR (TOKEN ID DO USUÁRIO API DO PROXMOX VE)
Segue exemplo em imagem abaixo:
Documentação Oficial do Proxmox VE: https://pve.proxmox.com/pve-docs/
Documentação Oficial do Zabbix 6: https://www.zabbix.com/documentation/6.0/en/manual
Para críticas, dúvidas e sugestões, envie um e-mail para erick{“arrob4”}erickandrade.com.br.