7 Spraudņu konfigurācijas parametri

Skatiet Zabbix aģents 2 spraudņu konfigurācijas parametrus:

Spraudņu konfigurācijas principi

Šajā lapā ir aprakstīti spraudņu konfigurācijas principi un labākā prakse.

Visi spraudņi tiek konfigurēti, izmantojot parametru Plugins.*, kas var būt vai nu daļa no Zabbix aģenta 2 konfigurācijas faila, vai arī paša spraudņa konfigurācijas faila. Ja spraudnis izmanto atsevišķu konfigurācijas failu, ceļš uz šo failu jānorāda Zabbix aģenta 2 konfigurācijas faila parametrā Include.

Tipiska spraudņa parametra struktūra ir šāda:

Plugins.<PluginName>.<Parameter>=<Value>

Papildus tam ir divas specifiskas parametru grupas:

  • Plugins.<PluginName>.Default.<Parameter>=<Value> tiek izmantots, lai definētu noklusējuma parametru vērtības.

  • Plugins.<PluginName>.<SessionName>.<Parameter>=<Value> tiek izmantots, lai definētu atsevišķas parametru kopas dažādiem uzraudzības mērķiem, izmantojot nosauktās sesijas.

Visiem parametru nosaukumiem jāatbilst šādām prasībām:

  • ieteicams jūsu spraudņu nosaukumus rakstīt ar lielo sākumburtu
  • parametra nosaukums jāraksta ar lielo sākumburtu
  • speciālās rakstzīmes nav atļautas
  • ligzdošanas līmenis nav ierobežots
  • parametru skaits nav ierobežots

Piemēram, lai veiktu aktīvās pārbaudes, kurām nav Scheduling atjaunināšanas intervāla, uzreiz pēc aģenta restartēšanas tikai Uptime spraudnim, konfigurācijas failā iestatiet Plugins.Uptime.System.ForceActiveChecksOnStart=1. Līdzīgi, lai CPU spraudnim iestatītu pielāgotu vienlaicīgo pārbaužu limitu, konfigurācijas failā iestatiet Plugins.CPU.System.Capacity=N.

Noklusējuma vērtības

Savienojuma parametriem (URI, lietotājvārds, parole u.c.) varat iestatīt noklusējuma vērtības konfigurācijas failā šādā formātā:

Plugins.<PluginName>.Default.<Parameter>=<Value>

Piemēram, Plugins.Mysql.Default.Username=zabbix, Plugins.MongoDB.Default.Uri=tcp://127.0.0.1:27017 u.c.

Ja šāda parametra vērtība nav norādīta vienuma atslēgā vai nosauktās sesijas parametros, spraudnis izmantos noklusējuma vērtību. Ja arī noklusējuma parametrs nav definēts, tiks izmantotas stingri kodētas noklusējuma vērtības.

Ja vienuma atslēgai nav neviena parametra, Zabbix aģents 2 mēģinās ievākt metriku, izmantojot noklusējuma parametru sadaļā definētās vērtības.

Nosauktās sesijas

Nosauktās sesijas ir papildu spraudņa parametru līmenis, un tās var izmantot, lai norādītu atsevišķas autentifikācijas parametru kopas katrai no uzraudzītajām instancēm. Katram nosauktās sesijas parametram jābūt šādā struktūrā:

Plugins.<PluginName>.Sessions.<SessionName>.<Parameter>=<Value>

Sesijas nosaukumu var izmantot kā vienuma atslēgas parametru connString, nevis atsevišķi norādīt URI, lietotājvārdu un/vai paroli.

Vienumu atslēgās pirmais parametrs var būt vai nu connString, vai URI. Ja pirmais atslēgas parametrs neatbilst nevienam sesijas nosaukumam, tas tiks apstrādāts kā URI. Ņemiet vērā, ka vienuma atslēgā iegultu URI akreditācijas datu nodošana netiek atbalstīta; tā vietā izmantojiet nosauktās sesijas parametrus.

Pieejamo nosaukto sesiju parametru saraksts ir atkarīgs no spraudņa.

Sesijas parametrus ir iespējams pārrakstīt, vienuma atslēgas parametros norādot jaunas vērtības (skatiet piemēru).

Ja parametrs nosauktajai sesijai nav definēts, Zabbix aģents 2 izmantos vērtību, kas definēta noklusējuma spraudņa parametrā.

Parametru prioritāte

Zabbix aģents 2 spraudņi meklē ar savienojumu saistīto parametru vērtības šādā secībā:

  1. Pirmais vienuma atslēgas parametrs tiek salīdzināts ar sesiju nosaukumiem. Ja atbilstība netiek atrasta, tas tiek uzskatīts par faktisko vērtību; šajā gadījumā 3. solis tiks izlaists. Ja atbilstība tiek atrasta, parametra vērtībai (parasti URI) jābūt definētai nosauktajā sesijā.
  2. Pārējie parametri tiks ņemti no vienuma atslēgas, ja tie ir definēti.
  3. Ja vienuma atslēgas parametrs (piemēram, parole) ir tukšs, spraudnis meklēs atbilstošo nosauktās sesijas parametru.
  4. Ja arī sesijas parametrs nav norādīts, tiks izmantota atbilstošajā noklusējuma parametrā definētā vērtība.
  5. Ja nekas no iepriekš minētā neizdodas, spraudnis izmantos stingri ieprogrammēto noklusējuma vērtību.

Piemērs 1

Divu instanču "MySQL1" un "MySQL2" uzraudzība.

Konfigurācijas parametri:

Plugins.Mysql.Sessions.MySQL1.Uri=tcp://127.0.0.1:3306
Plugins.Mysql.Sessions.MySQL1.User=mysql1_user
Plugins.Mysql.Sessions.MySQL1.Password=unique_password
Plugins.Mysql.Sessions.MySQL2.Uri=tcp://192.0.2.0:3306
Plugins.Mysql.Sessions.MySQL2.User=mysql2_user
Plugins.Mysql.Sessions.MySQL2.Password=different_password

Šīs konfigurācijas rezultātā katru sesijas nosaukumu var izmantot kā connString vienuma atslēgā, piemēram, mysql.ping[MySQL1] vai mysql.ping[MySQL2].

Piemērs 2

Dažu parametru norādīšana vienuma atslēgā.

Konfigurācijas parametri:

Plugins.PostgreSQL.Sessions.Session1.Uri=tcp://192.0.2.234:5432
Plugins.PostgreSQL.Sessions.Session1.User=old_username
Plugins.PostgreSQL.Sessions.Session1.Password=session_password

Vienuma atslēga: pgsql.ping[session1,new_username,,postgres]

Šīs konfigurācijas rezultātā aģents izveidos savienojumu ar PostgreSQL, izmantojot šādus parametrus:

  • URI no sesijas parametra: 192.0.2.234:5432
  • Lietotājvārds no vienuma atslēgas: new_username
  • Parole no sesijas parametra (jo tā nav norādīta vienuma atslēgā): session_password
  • Datubāzes nosaukums no vienuma atslēgas: postgres

Piemērs 3

Metrikas vākšana, izmantojot noklusējuma konfigurācijas parametrus.

Konfigurācijas parametri:

Plugins.PostgreSQL.Default.Uri=tcp://192.0.2.234:5432
Plugins.PostgreSQL.Default.User=zabbix
Plugins.PostgreSQL.Default.Password=password

Vienuma atslēga: pgsql.ping[,,,postgres]

Šīs konfigurācijas rezultātā aģents izveidos savienojumu ar PostgreSQL, izmantojot šādus parametrus:

  • Noklusējuma URI: 192.0.2.234:5432
  • Noklusējuma lietotājvārds: zabbix
  • Noklusējuma parole: password
  • Datubāzes nosaukums no vienuma atslēgas: postgres

Savienojumi

Daži spraudņi atbalsta metriku vākšanu no vairākām instancēm vienlaikus. Var uzraudzīt gan lokālās, gan attālinātās instances. Tiek atbalstīti TCP un Unix-socket savienojumi.

Ieteicams konfigurēt spraudņus tā, lai savienojumi ar instancēm tiktu uzturēti atvērtā stāvoklī. Ieguvumi ir mazāka tīkla noslodze, zemāka latentce, kā arī mazāks CPU un atmiņas patēriņš, jo ir mazāks savienojumu skaits. Par to rūpējas klienta bibliotēka.

Laika periodu, cik ilgi neizmantotajiem savienojumiem jāpaliek atvērtiem, var noteikt ar parametru Plugins.<PluginName>.KeepAlive. Piemērs: Plugins.Memcached.KeepAlive