This is a translation of the original English documentation page. Help us make it better.

3 Agent 2

Overzicht

Zabbix agent 2 is een nieuwe generatie Zabbix agent en kan worden gebruikt in plaats van de Zabbix-agent. Zabbix agent 2 is ontwikkeld om:

  • verminder het aantal TCP-verbindingen
  • zorgen voor een betere gelijktijdigheid van controles
  • gemakkelijk uitbreidbaar zijn met plug-ins. Een plug-in moet in staat zijn om:
    • geef triviale controles die uit slechts een paar eenvoudige regels code bestaan
    • zorgen voor complexe controles bestaande uit langlopende scripts en standalone gegevensverzameling met periodieke terugzending van de gegevens
  • een vervanger zijn voor Zabbix-agent (in die zin dat het alles ondersteunt) de vorige functionaliteit)

Agent 2 is geschreven in Go (met wat C-code van Zabbix-agent hergebruikt). Een geconfigureerde Go-omgeving met een momenteel ondersteunde Go version is vereist voor het bouwen van Zabbix agent 2.

Agent 2 heeft geen ingebouwde ondersteuning voor daemonisatie op Linux; het kan worden uitgevoerd als een Windows-service.

Passieve controles werken op dezelfde manier als Zabbix-agent. Ondersteuning voor actieve controles geplande/flexibele intervallen en concurrency controleren binnen één actieve server.

Standaard plant Zabbix-agent 2 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 geen Scheduling update-interval onmiddellijk na het opnieuw opstarten van de agent hebben, stelt u de parameter ForceActiveChecksOnStart (algemeen niveau) of Plugins in .<Pluginnaam>.System.ForceActiveChecksOnStart (heeft alleen invloed op specifieke plug-incontroles) in het configuratiebestand. Parameter op plug-inniveau, indien ingesteld, zal de globale parameter overschrijven. Het forceren van actieve controles bij het starten wordt ondersteund sinds Zabbix 6.0.2.

Controleer gelijktijdigheid

Controles van verschillende plug-ins kunnen gelijktijdig worden uitgevoerd. Het nummer van gelijktijdige controles binnen één plug-in wordt beperkt door de capaciteit van de plug-in instelling. Elke plug-in kan een hardcoded capaciteitsinstelling hebben (100 is standaard) die kan worden verlaagd met behulp van de instelling Plugins.<PluginName>.System.Capacity=N in de Plugins configuratie parameter. De vroegere naam van deze parameter Plugins.<PluginName>.Capacity wordt nog steeds ondersteund, maar is verouderd in Zabbix 6.0.

Zie ook: Ontwikkeling van plug-ins richtlijnen.

Ondersteunde platforms

Agent 2 wordt ondersteund voor Linux- en Windows-platforms.

Als u vanuit pakketten installeert, wordt Agent 2 ondersteund op:

  • RHEL/CentOS 6, 7, 8
  • SLES 15 SP1+
  • Debian 9, 10
  • Ubuntu 18.04, 20.04

Op Windows wordt de agent 2 ondersteund op alle desktop- en server versies, waarop een up-to-date ondersteunde Go-versie kan worden geïnstalleerd.

Installatie

Zabbix agent 2 is beschikbaar in voor gecompileerde Zabbix-pakketten. Compileren Zabbix agent 2 uit bronnen moet u de --enable-agent2 . opgeven optie configureren.

Opties

De volgende opdracht regel parameters kunnen worden gebruikt met Zabbix-agent 2:

Parameter Beschrijving
-c --config <config-file> Pad naar het configuratiebestand.
U kunt deze optie gebruiken om een configuratiebestand op te geven dat niet het standaardbestand is.
Op UNIX is de standaard /usr/local /etc/zabbix_agent2.conf of zoals ingesteld door compile-time variabelen --sysconfdir of --prefix
-f --foreground Voer Zabbix-agent op de voorgrond uit (standaard: true).
-p --print Druk bekende items af en sluit af.
Opmerking: Om ook de resultaten van gebruikersparameter te retourneren, moet u het configuratiebestand specificeren (indien niet op de standaardlocatie).
-t --test <item key> Test gespecificeerd item en sluit af.
Opmerking: Om ook de resultaten van user parameter te retourneren, moet u het configuratiebestand specificeren (als het niet op de standaardlocatie staat).
-h --help Help-informatie afdrukken en afsluiten.
-v --verbose Debugging-informatie afdrukken. Gebruik deze optie met -p en -t opties.
-V --version Druk het versienummer van de agent af en sluit af.
-R --runtime-control <optie> Voer administratieve functies uit. Zie runtime control.

Specifieke voorbeelden van het gebruik van opdracht regel parameters:

  • print alle ingebouwde agent items met waarden
  • test een gebruikersparameter met de sleutel "mysql.ping" gedefinieerd in de opgegeven configuratiebestand
shell> zabbix_agent2 --print
       shell> zabbix_agent2 -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
Runtime-besturing

Runtime-besturing biedt enkele opties voor controle op afstand.

Optie Beschrijving
log_level_increase Verhoog logniveau.
log_level_decrease Verlaag logniveau.
metrics Lijst beschikbare statistieken.
version Versie agent weergeven.
userparameter_reload Herlaad gebruikersparameters uit het huidige configuratiebestand.
Houd er rekening mee dat UserParameter de enige agent configuratie optie is die opnieuw wordt geladen.
help Help-informatie weergeven over runtime-controle.

Voorbeelden:

  • logniveau verhogen voor agent 2
  • print runtime controle opties
shell> zabbix_agent2 -R log_level_increase
       shell> zabbix_agent2 -R help

Configuratiebestand

De configuratie parameters van agent 2 zijn meestal compatibel met: Zabbix-agent met enkele uitzonderingen.

Nieuwe parameters Beschrijving
ControlSocket Het pad van de runtime-besturings socket. Agent 2 gebruikt een controle-socket 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 onmiddellijk na het opnieuw opstarten actieve controles moet uitvoeren of gelijkmatig over de tijd moet verdelen. Ondersteund sinds Zabbix 6.0.2.
Plugins Plugins kunnen hun eigen parameters hebben, in het formaat Plugins.<Plugin name>.<Parameter>=<value>. Een veelgebruikte plug-in-parameter is System.Capacity, waarmee de limiet van controles wordt ingesteld die tegelijkertijd kunnen worden uitgevoerd.
StatusPort De poortagent 2 luistert naar een HTTP-statusverzoek en toont een lijst met geconfigureerde plug-ins en enkele interne parameters
Gedropt parameters Beschrijving
AllowRoot, User Niet ondersteund omdat daemonisatie niet wordt ondersteund.
LoadModule, LoadModulePath Laadbare modules worden niet ondersteund.
StartAgents Deze parameter is gebruikt in Zabbix-agent om de gelijktijdigheid van passieve controles te vergroten of uit te schakelen. In Agent 2 wordt de gelijktijdigheid geconfigureerd op plug-inniveau en kan deze worden beperkt door een capaciteitsinstelling. Terwijl het uitschakelen van passieve controles momenteel niet wordt ondersteund.
HostInterface, HostInterfaceItem Nog niet ondersteund.

Zie voor meer details de configuratie bestands opties voor: zabbix_agent2.

Afsluitcodes

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.