Zabbix Agent 2 is een nieuwe generatie van de Zabbix Agent en kan worden gebruikt ter vervanging van de Zabbix Agent. Zabbix Agent 2 is ontwikkeld om:
Agent 2 is geschreven in de Go-programmeertaal (waarbij enkele C-code van de Zabbix Agent opnieuw wordt gebruikt). Een geconfigureerde Go-omgeving met een momenteel ondersteunde Go-versie is vereist voor het bouwen van Zabbix Agent 2.
Agent 2 heeft geen ingebouwde ondersteuning voor daemonisering op Linux; het kan worden uitgevoerd als een Windows-service.
Passieve controles werken op dezelfde manier als de Zabbix Agent. Actieve controles ondersteunen geplande/flexibele intervallen en controle gelijktijdigheid binnen één actieve server.
Standaard plant Zabbix Agent 2 na een herstart de eerste gegevensverzameling voor actieve controles op een voorwaardelijk willekeurig tijdstip binnen het update-interval van het item om pieken in het gebruik van bronnen te voorkomen. Om actieve controles uit te voeren die niet onmiddellijk na het herstarten van de agent een Gepland update-interval hebben, stelt u de parameter ForceActiveChecksOnStart
(op globaal niveau) of Plugins.<Plugin-naam>.System.ForceActiveChecksOnStart
(beïnvloedt alleen specifieke plug-in controles) in het configuratiebestand in. Een op plug-in niveau ingestelde parameter zal de globale parameter overschrijven. Het afdwingen van actieve controles bij het opstarten wordt ondersteund sinds Zabbix 6.0.2.
Controles van verschillende plug-ins kunnen gelijktijdig worden uitgevoerd. Het aantal gelijktijdige controles binnen één plug-in wordt beperkt door de capaciteitsinstelling van de plug-in. Elke plug-in kan een vaste capaciteitsinstelling hebben (standaard 100) die kan worden verlaagd met behulp van de instelling Plugins.<PluginNaam>.System.Capacity=N
in de Plugins configuratie parameter. De voormalige naam van deze parameter, Plugins.<PluginNaam>.Capacity
, wordt nog steeds ondersteund, maar is in Zabbix 6.0 als verouderd aangemerkt.
Zabbix Agent 2 wordt ondersteund op de volgende platforms:
Zabbix Agent 2 is beschikbaar in voorgecompileerde Zabbix-pakketten. Om Zabbix Agent 2 vanuit bronnen te compileren, moet je de --enable-agent2
configure-optie specificeren.
De volgende commandoregelparameters kunnen worden gebruikt met Zabbix Agent 2:
Parameter | Beschrijving |
---|---|
-c --config <configuratie-bestand> | Pad naar het configuratiebestand. Je kunt deze optie gebruiken om een configuratiebestand op te geven dat niet het standaardbestand is. Op UNIX is de standaardinstelling /usr/local/etc/zabbix_agent2.conf of zoals ingesteld door compileer-tijd variabelen --sysconfdir of --prefix |
-f --foreground | Voer Zabbix Agent uit in de voorgrond (standaard: true). |
-p --print | Toon bekende items en stop. Opmerking: Om ook resultaten van gebruikersparameters te retourneren, moet je het configuratiebestand opgeven (als dit zich niet op de standaardlocatie bevindt). |
-t --test <item sleutel> | Test het opgegeven item en stop. Opmerking: Om ook resultaten van gebruikersparameters te retourneren, moet je het configuratiebestand opgeven (als dit zich niet op de standaardlocatie bevindt). |
-h --help | Toon helpinformatie en stop. |
-v --verbose | Toon foutopsporingsinformatie. Gebruik deze optie met de opties -p en -t. |
-V --version | Toon de versie van de agent en licentie-informatie. |
-R --runtime-control <optie> | Voer administratieve functies uit. Zie runtimebeheer. |
Specifieke voorbeelden van het gebruik van commandoregelparameters:
Toon alle ingebouwde agent-items met waarden.
Test een gebruikersparameter met de sleutel "mysql.ping" die is gedefinieerd in het opgegeven configuratiebestand.
shell> zabbix_agent2 --print shell> zabbix_agent2 -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
Runtimebeheer biedt enkele opties voor externe controle.
Optie | Beschrijving |
---|---|
log_level_increase | Verhoog het logniveau. |
log_level_decrease | Verlaag het logniveau. |
metrics | Lijst met beschikbare statistieken. |
version | Toon de versie van de agent. |
userparameter_reload | Herlaad waarden van de UserParameter en Include opties uit het huidige configuratiebestand. |
help | Toon informatie over runtimebeheer. |
Voorbeelden:
De configuratieparameters van Agent 2 zijn grotendeels compatibel met Zabbix Agent, met enkele uitzonderingen.
Nieuwe parameters | Beschrijving |
---|---|
ControlSocket | Het pad naar de runtimebeheersocket. Agent 2 gebruikt een beheersocket voor runtime-opdrachten. |
EnablePersistentBuffer, PersistentBufferFile, PersistentBufferPeriod |
Deze parameters worden gebruikt om permanente opslag op Agent 2 te configureren voor actieve items. |
ForceActiveChecksOnStart | Bepaalt of de agent direct na herstart actieve controles moet uitvoeren of gelijkmatig over de tijd moet verspreiden. |
Plugins | Plugins kunnen hun eigen parameters hebben in het formaat Plugins.<Pluginnaam>.<Parameter>=<waarde> . Een veelvoorkomende pluginparameter is System.Capacity, waarmee het aantal controles dat tegelijkertijd kan worden uitgevoerd, kan worden beperkt. |
StatusPort | De poort waarop Agent 2 luistert voor HTTP-statusverzoeken en weergave van een lijst met geconfigureerde plugins en enkele interne parameters |
Verwijderde parameters | Beschrijving |
AllowRoot, User | Niet ondersteund omdat daemonisatie niet wordt ondersteund. |
LoadModule, LoadModulePath | Laadbare modules worden niet ondersteund. |
StartAgents | Deze parameter werd gebruikt in Zabbix Agent om passieve controleconcurrentie te vergroten of uit te schakelen. In Agent 2 wordt de concurrentie op pluginniveau geconfigureerd en kan deze worden beperkt door een capaciteitsinstelling. Het uitschakelen van passieve controles wordt momenteel niet ondersteund. |
HostInterface, HostInterfaceItem | Nog niet ondersteund. |
Voor meer details zie de configuratiebestandopties voor zabbix_agent2.
Vanaf versie 4.4.8 kan Zabbix agent 2 ook worden gecompileerd met oudere OpenSSL-versies (1.0.1, 1.0.2).
In dit geval biedt Zabbix mutexen voor het vergrendelen in OpenSSL. Als een mutex vergrendelen of ontgrendelen mislukt, dan wordt er een foutbericht afgedrukt volgens de standaard foutstroom (STDERR) en Agent 2 worden afgesloten met retourcode 2 of 3, respectievelijk.