Instalar o GLPI Agent é apenas 20% do trabalho. O que decide se o inventário vira dado confiável é a configuração do lado servidor: habilitar o inventário, ajustar o cron, tratar seriais duplicados e blindar as regras de importação. Este guia cobre o caminho que usamos na sustentação de parques GLPI de clientes, com os ajustes que evitam um CMDB inflado de fantasmas.
Passo 0: habilitar o inventário no servidor (o passo que todo mundo pula)
O erro mais comum que encontramos é o agente instalado corretamente nas estações enquanto o inventário está desligado no GLPI. Sem esse toggle, os POSTs dos agentes batem em um endpoint que não processa nada, e o suporte perde horas culpando firewall. Antes de sair instalando agente, confirme no servidor:
- Em Configurar > Geral > aba Inventário, marque Habilitar o inventário.
- Confirme o endpoint nativo do GLPI 10/11:
https://glpi.suaempresa.com/front/inventory.php(o agente 1.x resolve esse caminho sozinho a partir da URL base). - Na configuração do inventário, revise as opções de importação: importar computadores, monitores, impressoras e componentes conforme a política do cliente.
Deploy do GLPI Agent (Windows e Linux)
No Windows, o MSI silencioso é o padrão para GPO. A TAG é o parâmetro mais importante e o que menos gente usa: é por ela que as regras de importação direcionam o ativo para a entidade e a localização certas.
glpi-agent-1.x-x64.msi /qn SERVER=https://glpi.suaempresa.com TAG=filial-sp
No Linux, o instalador oficial cuida das dependências:
curl -sL https://raw.githubusercontent.com/glpi-project/glpi-agent/main/tools/linux-installer.sh | bash -s -- --server https://glpi.suaempresa.com --tag filial-sp
Independente do SO, o comportamento do agente vive em um arquivo de configuração. Este é o baseline que padronizamos:
# /etc/glpi-agent/agent.cfg (Linux)
# %ProgramFiles%\GLPI-Agent\etc\agent.cfg (Windows)
# Endpoint nativo do GLPI 10/11 (o agente 1.x resolve /front/inventory.php):
server = https://glpi.suaempresa.com
# TAG usada pelas regras para direcionar entidade/localizacao (ex.: filial):
tag = filial-sp
# Frequencia de reenvio em segundos (86400 = 1x/dia):
delaytime = 86400
# Janela aleatoria: evita todos inventariarem no mesmo minuto do login:
lazy = 1
# SOMENTE em rede interna com certificado self-signed:
# no-ssl-check = 1
Cron: garantir que o inventário e processado de fato
Aqui mora uma armadilha clássica. Por padrão, as ações automáticas do GLPI rodam em modo GLPI (disparadas quando alguém navega no sistema). Isso é imprevisível: em fim de semana, sem ninguém logado, nada roda. Para inventário, telemetria e filas confiáveis, mude as ações automáticas para modo CLI (externo) e agende o cron do sistema operacional. No GLPI 11 o ponto de entrada é o front/cron.php (o console bin/console glpi:cron não cobre tudo):
# /etc/cron.d/glpi - processa acoes automaticas e filas do GLPI
# Roda como o usuario do PHP (apache/www-data), a cada 2 minutos:
*/2 * * * * apache /usr/bin/php /var/www/glpi/front/cron.php >/dev/null 2>&1
Depois, em Configurar > Ações automáticas, abra cada tarefa relevante e troque o modo de execução de GLPI para CLI. Sem isso, o cliente reclama de "inventário desatualizado" e a causa não está no agente.
SNMP discovery: switches, roteadores e impressoras
Estações com agente são a parte fácil. Dispositivos de rede não rodam agente e dependem de SNMP. A sequência que funciona:
- Instale as tarefas de rede no agente concentrador (pacote
glpi-agent-task-networkno Linux; o instalador Windows já inclui os módulos SNMP). - Cadastre as credenciais SNMP (v2c community ou v3) em Administração > Inventário > Credenciais SNMP.
- Defina os ranges de IP a varrer em Administração > Inventário > Intervalos de IP.
- Agende as tarefas de Network discovery (descobre o que existe) e Network inventory (coleta detalhe do que já foi descoberto).
O erro comum aqui é agendar o Network inventory sem antes rodar o discovery: sem os equipamentos descobertos e classificados, não há o que inventariar em detalhe.
Regras de importação e o problema dos seriais duplicados
Na sustentação de parques com centenas de máquinas, o que mais gera "fantasmas" no inventário não é o agente: é o serial genérico. Notebooks e desktops montados reportam número de série To be filled by O.E.M., System Serial Number ou 0000000000; máquinas virtuais clonadas do mesmo template carregam o MESMO UUID. Se a regra de importação casa por serial, o GLPI vincula todas essas máquinas ao MESMO ativo, ou cria dezenas de duplicatas a cada ciclo de inventário. Decidimos padronizar dois controles em todo cliente: primeiro, cadastrar esses seriais e MACs lixo na aba Blacklist da configuração de inventário, para o GLPI ignorá-los; segundo, adicionar na regra de importação (Administração > Regras > Regras de importação e vínculo de equipamentos) um critério por UUID além do serial. O erro comum é confiar só no serial e descobrir o estrago três meses depois, com o CMDB inflado e a contagem de licenças de software estourada por causa das duplicatas.
Diagnóstico: SQL para achar agentes silenciosos
Quando o cliente pergunta "quantas máquinas pararam de reportar?", a tela não responde rápido. Esta consulta lista os agentes sem contato há mais de 7 dias, candidatos a máquina desligada, reimagem ou serviço do agente parado:
-- Agentes sem contato ha mais de 7 dias
SELECT a.name AS agente, a.last_contact, c.name AS computador
FROM glpi_agents a
LEFT JOIN glpi_computers c
ON c.id = a.items_id AND a.itemtype = 'Computer'
WHERE a.last_contact < (NOW() - INTERVAL 7 DAY)
ORDER BY a.last_contact ASC;
Rode via cliente SQL somente-leitura. Um pico de agentes silenciosos costuma coincidir com uma mudança de GPO, um certificado que expirou ou uma regra de firewall nova.
Matriz de troubleshooting de campo
| Sintoma | Causa provável | Correção |
|---|---|---|
| Agente não aparece em Administração > Inventário | Inventário desabilitado no servidor ou URL/porta errada | Habilitar em Configurar > Geral; conferir /front/inventory.php e firewall 443/80 |
| POST retorna 413 ou inventário truncado | post_max_size / upload_max_filesize baixos no PHP | Subir para 20M ou mais e reiniciar o php-fpm; servidores com muito software geram XML grande |
| Erro de SSL no log do agente | Certificado self-signed não confiável | Instalar a CA na máquina ou no-ssl-check = 1 (apenas rede interna) |
| Máquinas duplicadas a cada ciclo | Serial genérico ou UUID de template clonado | Blacklist de seriais/MACs + critério por UUID na regra de importação |
| Dispositivos de rede não inventariam | Tarefa de rede ou credencial SNMP ausente | Instalar glpi-agent-task-network; cadastrar credencial SNMP e ranges de IP |
| Dados sempre desatualizados | Ações automáticas em modo GLPI (não roda sem tráfego) | Trocar para modo CLI e agendar front/cron.php no cron do SO |
Do inventário ao ciclo de vida do ativo
Coletar é metade do trabalho. O inventário só vira gestão quando o dado que chega é classificado, padronizado e auditado: as regras de importação direcionam entidade e categoria, os dicionários normalizam nomes de fabricante e modelo, e a trilha de auditoria registra quando um ativo entra, muda de dono ou some do inventário. É esse encadeamento que separa "instalar o GLPI Agent" de "sustentar inventário confiável".
Se o seu inventário GLPI está cheio de duplicatas, com agentes que somem ou dispositivos de rede fora do mapa, a equipe de sustentação GLPI da NexTool revisa as regras de importação, ajusta a blacklist e conecta o inventário ao ciclo de vida de ativos. Fale com a gente sobre sustentação de GLPI.
Revisado pela equipe NexTool Solutions.