#10 Zabbix-agent op Microsoft Windows

Agent configureren

Beide generaties Zabbix-agents draaien als een Windows-service. Voor Zabbix agent 2, vervang agentd door agent2 in de onderstaande instructies.

U kunt een enkele instantie van Zabbix-agent of meerdere instanties van de agent op een Microsoft Windows-host. Een enkele instantie kan de standaard configuratiebestand C:\zabbix_agentd.conf of een configuratie bestand opgegeven in de opdrachtregel. In het geval van meerdere gevallen elk agent-instantie moet een eigen configuratiebestand hebben (een van de instances kunnen het standaard configuratie bestand gebruiken).

Een voorbeeld configuratie bestand is beschikbaar in het Zabbix-bronarchief als: conf/zabbix_agentd.win.conf.

Zie het configuratiebestand opties voor details over het configureren van Zabbix Windows-agent.

Hostname parameter

Om actieve controles op een host uit te voeren, moet de Zabbix-agent de hostnaam gedefinieerd hebben. Bovendien moet de hostname-waarde die aan de agentzijde is ingesteld, exact overeenkomen met de "Hostnaam" die is geconfigureerd voor de host in de frontend.

De hostname-waarde aan de agentzijde kan worden gedefinieerd met behulp van de Hostname- of HostnameItem-parameter in het configuratiebestand van de agent - of de standaardwaarden worden gebruikt als geen van deze parameters is gespecificeerd.

De standaardwaarde voor de HostnameItem-parameter is de waarde die wordt geretourneerd door de agenttoets "system.hostname". Voor Windows retourneert het het resultaat van de gethostname() functie, die namespace-providers raadpleegt om de lokale hostnaam te bepalen. Als er geen namespace-provider reageert, wordt de NetBIOS-naam geretourneerd.

De standaardwaarde voor Hostname is de waarde die wordt geretourneerd door de HostnameItem-parameter. Dus als beide parameters niet zijn gespecificeerd, zal de werkelijke hostnaam de NetBIOS-naam van de host zijn; de Zabbix-agent zal de NetBIOS-hostnaam gebruiken om de lijst met actieve controles van de Zabbix-server op te halen en de resultaten ernaar te verzenden.

De toets "system.hostname" ondersteunt twee optionele parameters - type en transform.

De parameter Type bepaalt het type naam dat het item moet retourneren. Ondersteunde waarden:

  • netbios (standaard) - retourneert de NetBIOS-hostnaam die beperkt is tot 15 tekens en alleen in HOOFDLETTERS is;
  • host - hoofdlettergevoelig, retourneert de volledige, echte Windows-hostnaam (zonder domein);
  • shorthost (ondersteund sinds Zabbix 5.4.7) - retourneert het deel van de hostnaam vóór het eerste punt. Het geeft een volledige tekenreeks terug als de naam geen punt bevat.

De parameter Transform wordt ondersteund sinds Zabbix 5.4.7 en maakt extra transformatieregel voor de hostnaam mogelijk. Ondersteunde waarden:

  • none (standaard) - gebruik de oorspronkelijke letterhoofdletters;
  • lower - converteer de tekst naar kleine letters.

Dus, om de configuratie van het bestand zabbix_agentd.conf te vereenvoudigen en uniform te maken, kunnen twee verschillende benaderingen worden gebruikt.

  1. Laat de parameters Hostname of HostnameItem ongedefinieerd en de Zabbix-agent zal de NetBIOS-hostnaam gebruiken als de hostname;
  2. Laat de parameter Hostname ongedefinieerd en definieer HostnameItem als volgt:
    HostnameItem=system.hostname[host] - zodat de Zabbix-agent de volledige, echte (hoofdlettergevoelige) Windows-hostnaam als de hostname gebruikt.
    HostnameItem=system.hostname[shorthost,lower] - zodat de Zabbix-agent alleen het deel van de hostname voor het eerste punt gebruikt, omgezet in kleine letters.

De hostnaam wordt ook gebruikt als onderdeel van de servicenaam in Windows die wordt gebruikt voor het installeren, starten, stoppen en verwijderen van de Windows-service. Als bijvoorbeeld het Zabbix-agentconfiguratiebestand Hostname=Windows_db_server specificeert, wordt de agent geïnstalleerd als een Windows-service "Zabbix Agent [Windows_db_server]". Daarom moet voor elke Zabbix-agentinstantie een andere hostnaam worden gebruikt om een andere servicenaam in Windows te hebben.

Agent installeren als Windows-service

Een enkele instantie van Zabbix-agent installeren met de standaardinstelling configuratiebestand c:\zabbix_agentd.conf:

zabbix_agentd.exe --install

Op een 64-bits systeem, een 64-bit Zabbix-agentversie is vereist om alle controles met betrekking tot het uitvoeren van 64-bits processen te laten werken correct.

Als u een ander configuratiebestand wilt gebruiken dan: c:\zabbix_agentd.conf, gebruik het volgende commando voor: service installatie:

zabbix_agentd.exe --config <your_configuration_file> --install

Er moet een volledig pad naar het configuratiebestand worden opgegeven.

Meerdere exemplaren van Zabbix-agent kunnen worden geïnstalleerd als services zoals deze:

  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

De geïnstalleerde service zou nu zichtbaar moeten zijn in het Configuratiescherm.

Startagent

Om de agent service te starten, kunt u het Configuratiescherm gebruiken of het doen vanuit opdrachtregel.

Een enkele instantie van Zabbix-agent starten met de standaardinstelling configuratiebestand:

 zabbix_agentd.exe --start

Een enkele instantie van Zabbix-agent starten met een andere configuratie het dossier:

 zabbix_agentd.exe --config <uw_configuratiebestand> --start

Om een of meerdere instanties van Zabbix-agent te starten:

 zabbix_agentd.exe --config <configuration_file_for_this_instance> --start --multiple-agents

Stop agent

Om de agent service te stoppen, kunt u het Configuratiescherm gebruiken of het doen vanuit: opdrachtregel.

Om een enkele instantie van Zabbix-agent te stoppen die met de standaard is gestart configuratiebestand:

 zabbix_agentd.exe --stop

Om een enkele instantie van Zabbix-agent te stoppen, begon met een andere configuratiebestand:

 zabbix_agentd.exe --config <your_configuration_file> --stop

Om een of meerdere instanties van Zabbix-agent te stoppen:

 zabbix_agentd.exe --config <configuration_file_for_this_instance> --stop --multiple-agents

Agent Windows-service verwijderen

Een enkele instantie van Zabbix-agent verwijderen met de standaard: configuratiebestand:

   zabbix_agentd.exe --uninstall

Een enkele instantie van Zabbix-agent verwijderen met een niet-standaard: configuratiebestand:

   zabbix_agentd.exe --config <your_configuration_file> --uninstall

Om meerdere exemplaren van Zabbix-agent van Windows-services te verwijderen:

  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

Beperkingen

Zabbix-agent voor Windows ondersteunt niet niet-standaard Windows-configuraties waar CPU's worden gedistribueerd niet-uniform over NUMA-knooppunten. Als logische CPU's worden gedistribueerd niet-uniform, dan zijn CPU-prestatiestatistieken mogelijk niet beschikbaar voor sommige CPU's. Als er bijvoorbeeld 72 logische CPU's zijn met 2 NUMA-knooppunten, beide nodes moeten elk 36 CPU's hebben.