11 Agent Zabbix no Microsoft Windows
Configurando o agent
Ambas as gerações de agents do 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 Zabbix agent 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 várias 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 de origem do Zabbix como:
conf/zabbix_agentd.confpara o Zabbix agent;conf/zabbix_agent2.confpara o Zabbix agent 2.
Se você quiser instalar o Zabbix agent/agent 2 para Windows como um serviço a partir de um arquivo sem especificar explicitamente o arquivo de configuraçã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.
Consulte as opções do arquivo de configuração para obter detalhes sobre a configuração do Zabbix Windows agent.
Parâmetro Hostname
Para realizar verificações ativas em um host, o Zabbix agent precisa ter o hostname definido. Além disso, o valor do hostname definido no lado do agent deve corresponder exatamente ao "Host name" configurado para o host no frontend.
O valor do hostname no lado do agent pode ser definido pelo parâmetro Hostname ou HostnameItem no arquivo de configuração do agent - caso contrário, os valores padrão serão usados se nenhum desses parâmetros 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 os 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 hostname real será o nome NetBIOS do host; o Zabbix agent usará o nome do host NetBIOS para obter a lista de verificações ativas do Zabbix server e enviar os resultados para ele.
A chave system.hostname aceita dois parâmetros opcionais - type e
transform.
Type determina o tipo de nome que o item deve retornar:
- netbios (padrão) - retorna o nome do host NetBIOS, limitado a 15 caracteres e somente em LETRAS MAIÚSCULAS;
- host - diferencia maiúsculas de minúsculas e retorna o nome completo e real do host Windows (sem um domínio);
- shorthost - retorna a parte do hostname anterior ao primeiro ponto. Ela retornará a string completa se o nome não contiver um ponto.
- fqdn - retorna o Fully Qualified Domain Name (sem o ponto final).
Transform permite especificar uma regra de transformação adicional para o hostname:
- none (padrão) - usa a capitalização original;
- lower - converte o texto para letras minúsculas.
Assim, para simplificar a configuração do arquivo zabbix_agentd.conf e torná-la uniforme, três abordagens diferentes podem ser usadas:
- Deixe os parâmetros Hostname ou HostnameItem indefinidos, e o Zabbix agent usará o nome do host NetBIOS como hostname.
- 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 (diferencia maiúsculas de minúsculas) como hostname.
HostnameItem=system.hostname[shorthost,lower] - para que o Zabbix agent use somente a parte do hostname anterior ao primeiro ponto, convertida para letras minúsculas.
HostnameItem=system.hostname[fqdn] - para que o Zabbix agent use o Fully Qualified Domain Name como hostname.
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 especificar Hostname=Windows_db_server, 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 conf/zabbix_agentd.conf para o diretório onde zabbix_agentd.exe será instalado.
Para instalar uma única instância do Zabbix agent 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 Zabbix agent para que todas as verificações relacionadas à execução de processos de 64 bits funcionem corretamente.
Se quiser usar um arquivo de configuração diferente do padrão, use o seguinte comando para a instalação do serviço:
zabbix_agentd.exe --config <your_configuration_file> --install
Um caminho completo para o arquivo de configuração deve ser especificado.
Várias instâncias do Zabbix agent podem ser instaladas como serviços da seguinte forma:
zabbix_agentd.exe --config <configuration_file_for_instance_1> --install --multiple-agents
zabbix_agentd.exe --config <configuration_file_for_instance_2> --install --multiple-agents
...
zabbix_agentd.exe --config <configuration_file_for_instance_N> --install --multiple-agents
O serviço instalado agora deverá estar visível no Painel de Controle.
Iniciando o agent
Para iniciar o serviço do agent, você pode usar o Painel de Controle ou fazer isso pela linha de comando.
Para iniciar uma única instância do Zabbix agent com o arquivo de configuração padrão:
zabbix_agentd.exe --start
Para iniciar uma única instância do Zabbix agent com outro arquivo de configuração:
zabbix_agentd.exe --config <your_configuration_file> --start
Para iniciar uma das várias instâncias do Zabbix agent:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --start --multiple-agents
Parando o agent
Para parar o serviço do agent, você pode usar o Painel de Controle ou fazer isso pela linha de comando.
Para parar uma única instância do Zabbix agent iniciada com o arquivo de configuração padrão:
zabbix_agentd.exe --stop
Para parar uma única instância do Zabbix agent iniciada com outro arquivo de configuração:
zabbix_agentd.exe --config <your_configuration_file> --stop
Para parar uma entre várias instâncias do Zabbix agent:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --stop --multiple-agents
Desinstalando o serviço do agent do Windows
Para desinstalar uma única instância do Zabbix agent usando o arquivo de configuração padrão:
zabbix_agentd.exe --uninstall
Para desinstalar uma única instância do Zabbix agent usando um arquivo de configuração não padrão:
zabbix_agentd.exe --config <your_configuration_file> --uninstall
Para desinstalar várias instâncias do Zabbix agent dos serviços do Windows:
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 do Zabbix para Windows não oferece suporte a configurações não padrão do Windows nas quais 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 poderão 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 deverão ter 36 CPUs cada.