Instalar o GLPI Agent é apenas 20% do trabalho. O que decide se o inventário se torna um dado fiável é a configuração do lado do servidor: ativar o inventário, ajustar o cron, tratar os números de série duplicados e blindar as regras de importação. Este guia cobre o caminho que usamos na manutenção de parques GLPI de clientes, com os ajustes que evitam uma CMDB inchada de fantasmas.
Passo 0: ativar o inventário no servidor (o passo que toda a gente salta)
O erro mais comum que encontramos é o agente corretamente instalado nos postos enquanto o inventário está desligado no GLPI. Sem esse interruptor, os POST dos agentes chegam a um endpoint que não processa nada, e o suporte perde horas a culpar a firewall. Antes de instalar qualquer agente, confirme no servidor:
- Em Configuração > Geral > separador Inventário, marque Ativar o inventário.
- Confirme o endpoint nativo do GLPI 10/11:
https://glpi.suaempresa.com/front/inventory.php(o agente 1.x resolve este caminho sozinho a partir do URL base). - Na configuração do inventário, reveja as opções de importação: importar computadores, monitores, impressoras e componentes conforme a política do cliente.
Instalação 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 encaminham 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 trata 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
Independentemente do SO, o comportamento do agente vive num ficheiro de configuração. Esta é a 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 encaminhar entidade/localizacao (ex.: filial):
tag = filial-sp
# Frequencia de reenvio em segundos (86400 = 1x/dia):
delaytime = 86400
# Janela aleatoria: evita que todos inventariem no mesmo minuto do login:
lazy = 1
# APENAS em rede interna com certificado self-signed:
# no-ssl-check = 1
Cron: garantir que o inventário é mesmo processado
Aqui mora uma armadilha clássica. Por predefinição, as ações automáticas do GLPI correm em modo GLPI (disparadas quando alguém navega no sistema). Isto é imprevisível: num fim de semana, sem ninguém com sessão iniciada, nada corre. Para inventário, telemetria e filas fiáveis, mude as ações automáticas para modo CLI (externo) e agende o cron do sistema operativo. No GLPI 11 o ponto de entrada é o front/cron.php (a consola bin/console glpi:cron não cobre tudo):
# /etc/cron.d/glpi - processa acoes automaticas e filas do GLPI
# Corre como o utilizador 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 Configuração > Ações automáticas, abra cada tarefa relevante e troque o modo de execução de GLPI para CLI. Sem isto, o cliente queixa-se de "inventário desatualizado" e a causa não está no agente.
SNMP discovery: switches, routers e impressoras
Os postos com agente são a parte fácil. Os dispositivos de rede não correm 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). - Registe as credenciais SNMP (community v2c ou v3) em Administração > Inventário > Credenciais SNMP.
- Defina os intervalos 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 (recolhe o detalhe do que já foi descoberto).
O erro comum aqui é agendar o Network inventory sem executar antes o discovery: sem os equipamentos descobertos e classificados, não há o que inventariar em detalhe.
Regras de importação e o problema dos números de série duplicados
Na manutenção de parques com centenas de máquinas, o que mais gera "fantasmas" no inventário não é o agente: é o número de série genérico. Portateis e computadores montados reportam número de série To be filled by O.E.M., System Serial Number ou 0000000000; as máquinas virtuais clonadas do mesmo template carregam o MESMO UUID. Se a regra de importação corresponde por número de série, o GLPI liga todas essas máquinas ao MESMO ativo, ou cria dezenas de duplicados em cada ciclo de inventário. Decidimos padronizar dois controlos em cada cliente: primeiro, registar esses números de série e MAC lixo no separador Blacklist da configuração de inventário, para o GLPI os ignorar; segundo, adicionar na regra de importação (Administração > Regras > Regras de importação e ligação de equipamentos) um critério por UUID além do número de série. O erro comum é confiar apenas no número de série e descobrir o estrago três meses depois, com a CMDB inchada e a contagem de licenças de software disparada por causa dos duplicados.
Diagnóstico: SQL para encontrar agentes silenciosos
Quando o cliente pergunta "quantas máquinas deixaram de reportar?", a interface não responde depressa. Esta consulta lista os agentes sem contacto há mais de 7 dias, candidatos a máquina desligada, reimagem ou serviço do agente parado:
-- Agentes sem contacto 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;
Execute-a através de um cliente SQL somente-leitura. Um pico de agentes silenciosos costuma coincidir com uma mudança de GPO, um certificado expirado ou uma nova regra de firewall.
Matriz de troubleshooting de campo
| Sintoma | Causa provável | Correção |
|---|---|---|
| O agente não aparece em Administração > Inventário | Inventário desativado no servidor ou URL/porta errada | Ativar em Configuração > Geral; confirmar /front/inventory.php e firewall 443/80 |
| O POST devolve 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 registo do agente | Certificado self-signed não fiável | Instalar a CA na máquina ou no-ssl-check = 1 (apenas rede interna) |
| Máquinas duplicadas em cada ciclo | Número de série genérico ou UUID de template clonado | Blacklist de números de série/MAC + critério por UUID na regra de importação |
| Os dispositivos de rede não são inventariados | Tarefa de rede ou credencial SNMP em falta | Instalar glpi-agent-task-network; registar credencial SNMP e intervalos de IP |
| Dados sempre desatualizados | Ações automáticas em modo GLPI (não corre sem tráfego) | Mudar para modo CLI e agendar front/cron.php no cron do SO |
Do inventário ao ciclo de vida do ativo
Recolher é metade do trabalho. O inventário só se torna gestão quando o dado que chega é classificado, normalizado e auditado: as regras de importação encaminham entidade e categoria, os dicionários normalizam nomes de fabricante e modelo, e a trilha de auditoria regista quando um ativo entra, muda de dono ou desaparece do inventário. É este encadeamento que separa "instalar o GLPI Agent" de "manter inventário fiável".
Se o seu inventário GLPI está cheio de duplicados, com agentes que desaparecem ou dispositivos de rede fora do mapa, a equipa de manutenção GLPI da NexTool revê as regras de importação, ajusta a blacklist e liga o inventário ao ciclo de vida de ativos. Fale connosco sobre manutenção de GLPI.
Revisto pela equipa NexTool Solutions.