11 Agent Zabbix no Microsoft Windows
Configurando o agent
Ambas as gerações dos agents Zabbix são executadas como um serviço do Windows. Para o Zabbix agent 2, substitua agentd por agent2 nas instruções abaixo.
Você pode executar uma única instância do agent Zabbix ou várias instâncias do agent em um host Microsoft Windows. Uma única instância pode usar:
- o arquivo de configuração padrão, localizado no mesmo diretório que o binário do agent;
- um arquivo de configuração especificado na linha de comando.
No caso de múltiplas instâncias, cada instância do agent deve ter seu próprio arquivo de configuração (uma das instâncias pode usar o arquivo de configuração padrão).
Um arquivo de configuração de exemplo está disponível no arquivo-fonte do Zabbix como:
conf/zabbix_agentd.confpara o Zabbix agent;conf/zabbix_agent2.confpara o Zabbix agent2.
Se você deseja instalar o agent/agent 2 do Zabbix para Windows como um serviço a partir de um arquivo compactado sem especificar explicitamente o arquivo de configuração, então, antes de instalar o agent:
conf/zabbix_agentd.confdeve ser copiado manualmente para o diretório onde o zabbix_agentd.exe será instalado;conf/zabbix_agent2.confe o diretórioconf/zabbix_agent2.ddevem ser copiados manualmente para o diretório onde o zabbix_agent2.exe será instalado.
Veja as opções do arquivo de configuração para mais detalhes sobre como configurar o agent Zabbix para Windows.
Parâmetro Hostname
Para executar verificações ativas em um host, o Zabbix agent precisa ter o nome do host definido. Além disso, o valor do nome do host definido no lado do agent deve corresponder exatamente ao "Host name" configurado para o host no frontend.
O valor do nome do host no lado do agent pode ser definido pelo parâmetro Hostname ou HostnameItem no arquivo de configuração do agent - ou os valores padrão serão usados se qualquer um desses parâmetros não for especificado.
O valor padrão do parâmetro HostnameItem é o valor retornado pela chave de agent "system.hostname". No Windows, ela retorna o resultado da função gethostname(), que consulta provedores de namespace para determinar o nome do host local. Se nenhum provedor de namespace responder, o nome NetBIOS será retornado.
O valor padrão de Hostname é o valor retornado pelo parâmetro HostnameItem. Assim, na prática, se ambos os parâmetros não forem especificados, o nome real do host será o nome NetBIOS do host; o Zabbix agent usará o nome NetBIOS do host para recuperar a lista de verificações ativas do Zabbix server e enviar os resultados para ele.
A chave "system.hostname" suporta dois parâmetros opcionais - type e transform.
Type determina o tipo de nome que o item deve retornar:
- netbios (padrão) - retorna o nome NetBIOS do host, que é limitado a 15 caracteres e somente em MAIÚSCULAS;
- host - diferencia maiúsculas de minúsculas e retorna o nome completo e real do host Windows (sem domínio);
- shorthost - retorna a parte do nome do host antes do primeiro ponto. Retornará a string completa se o nome não contiver ponto.
- fqdn - retorna o Fully Qualified Domain Name (sem o ponto final).
Transform permite especificar uma regra adicional de transformação para o nome do host:
- none (padrão) - usa a capitalização original;
- lower - converte o texto em minúsculas.
Assim, para simplificar a configuração do arquivo zabbix_agentd.conf e torná-la padronizada, podem ser usadas três abordagens diferentes:
- Deixe os parâmetros Hostname ou HostnameItem indefinidos, e o Zabbix agent usará o nome NetBIOS do host como nome do host.
- Deixe o parâmetro Hostname indefinido e defina HostnameItem
desta forma:
HostnameItem=system.hostname[host] - para que o Zabbix agent use o nome completo e real do host Windows (diferenciando maiúsculas de minúsculas) como nome do host.
HostnameItem=system.hostname[shorthost,lower] - para que o Zabbix agent use apenas a parte do nome do host antes do primeiro ponto, convertida em minúsculas.
HostnameItem=system.hostname[fqdn] - para que o Zabbix agent use o Fully Qualified Domain Name como nome do host.
O nome do host também é usado como parte do nome do serviço do Windows, que é usado para
instalar, iniciar, parar e desinstalar o serviço do Windows. Por
exemplo, se o arquivo de configuração do Zabbix agent especifica
Hostname=Windows_db_server, então o agent será instalado como um
serviço do Windows "Zabbix Agent [Windows_db_server]". Portanto, para ter
um nome de serviço do Windows diferente para cada instância do Zabbix agent, cada
instância deve usar um nome de host diferente.
Instalando o agent como serviço do Windows
Antes de instalar o agent, copie manualmente o arquivo conf/zabbix_agentd.conf para o diretório onde o zabbix_agentd.exe será instalado.
Para instalar uma única instância do agent Zabbix com o arquivo de configuração padrão:
zabbix_agentd.exe --install
Em um sistema de 64 bits, é necessária uma versão de 64 bits do agent Zabbix para que todas as verificações relacionadas à execução de processos de 64 bits funcionem corretamente.
Se você deseja usar um arquivo de configuração diferente do padrão, deve usar o seguinte comando para instalar o serviço:
zabbix_agentd.exe --config <seu_arquivo_de_configuração> --install
Um caminho completo para o arquivo de configuração deve ser especificado.
Múltiplas instâncias do agent Zabbix podem ser instaladas como serviços desta forma:
zabbix_agentd.exe --config <arquivo_de_configuração_para_instância_1> --install --multiple-agents
zabbix_agentd.exe --config <arquivo_de_configuração_para_instância_2> --install --multiple-agents
...
zabbix_agentd.exe --config <arquivo_de_configuração_para_instância_N> --install --multiple-agents
O serviço instalado agora deve estar visível no Painel de Controle.
Iniciando o agente
Para iniciar o serviço do agente você pode usar o painel de controle ou faze-lo a partir da linha de comando.
Iniciar uma instância simples do Zabbix Agent com arquivo padrão de configuração:
zabbix_agentd.exe --start
Iniciar uma instância simples do Zabbix Agent com arquivo de configuração específico:
zabbix_agentd.exe --config <your_configuration_file> --start
Iniciar múltiplas instâncias do Zabbix Agent com arquivo de configuração específicos:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --start --multiple-agents
Parando o agente
Para parar o serviço do agente você pode usar o painel de controle ou faze-lo a partir da linha de comando.
Parar uma instância simples do Zabbix Agent com arquivo padrão de configuração:
zabbix_agentd.exe --stop
Parar uma instância simples do Zabbix Agent com arquivo de configuração específico:
zabbix_agentd.exe --config <your_configuration_file> --stop
Parar múltiplas instâncias do Zabbix Agent com arquivo de configuração específicos:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --stop --multiple-agents
Desinstalar o serviço do agente
Para desinstalar uma instância simples do Zabbix Agent com arquivo padrão de configuração:
zabbix_agentd.exe --uninstall
Para desinstalar uma instância simples do Zabbix Agent com arquivo de configuração específico:
zabbix_agentd.exe --config <your_configuration_file> --uninstall
Para desinstalar múltiplas instâncias do Zabbix Agent com arquivo de configuração específicos:
zabbix_agentd.exe --config <configuration_file_for_instance_1> --uninstall --multiple-agents zabbix_agentd.exe --config <configuration_file_for_instance_2> --uninstall --multiple-agents ... zabbix_agentd.exe --config <configuration_file_for_instance_N> --uninstall --multiple-agents
Limitações
O agent Zabbix para Windows não suporta configurações não padrão do Windows onde as CPUs são distribuídas de forma não uniforme entre os nós NUMA. Se as CPUs lógicas forem distribuídas de forma não uniforme, as métricas de desempenho da CPU podem não estar disponíveis para algumas CPUs. Por exemplo, se houver 72 CPUs lógicas com 2 nós NUMA, ambos os nós devem ter 36 CPUs cada.