Starpniekservera slodzes balansēšana un augsta pieejamība

Pārskats

Zabbix starpniekserverus var organizēt starpniekserveru grupās, lai nodrošinātu starpniekserveru slodzes līdzsvarošanu un augstu pieejamību.

Starpniekserveru slodzes līdzsvarošana un augsta pieejamība ir hosts automātiska pārdale starp starpniekserveriem starpniekserveru grupas ietvaros:

  • Ja starpniekserveris kļūst bezsaistē, tā hosts tiks pārvietoti uz citiem starpniekserveriem, tādējādi saglabājot augstu starpniekserveru pieejamību.
  • Ja vienam starpniekserverim ir ievērojami lielāks/mazāks hosts skaits nekā citiem starpniekserveriem, tā hosts tiks pārvietoti uz citiem starpniekserveriem, lai līdzsvarotu starpniekserveru slodzi.

Hosts pārdale darbojas tikai starp grupā esošiem starpniekserveriem, kas atbilst šādiem nosacījumiem:

  • Starpniekserveri darbojas ar Zabbix 7.0 vai jaunāku versiju.
  • Starpniekservera versija atbilst Zabbix servera versijai. Ja tiek izmantots Zabbix aģents (pasīvs), starpniekservera versijai jāsakrīt ar aģenta versiju. Aktīvajiem aģentiem nepieciešams tikai Zabbix 7.0 vai jaunāks.
  • Starpniekserveru grupai ir tiešsaistes statuss.
  • Hosts ir konfigurēti tā, lai tos uzraudzītu starpniekserveru grupa, nevis atsevišķi starpniekserveri.

Starpniekserveru grupas veselību var uzraudzīt ar iekšējām pārbaudēm jebkurš hosts, kas piešķirts starpniekserveru grupai. Tomēr, lai uzraudzītu viena grupas starpniekservera veselību, piešķiriet hostu šim starpniekserverim; pretējā gadījumā rezultāti var būt nekonsekventi.

Hosts pārdale

Starpniekserveru slodzes balansēšanu un augstu pieejamību Zabbix serveris pārvalda, izmantojot starpniekserveru grupas pārvaldnieku, kas nepārtraukti uzrauga visu starpniekserveru stāvokli katrā starpniekserveru grupā un to hosts sadalījumu.

Starpniekserveru augstā pieejamība grupas ietvaros tiek nodrošināta ar starpniekservera atteici: kad starpniekserveris kļūst nepieejams, tā hosts nekavējoties tiek pārdalīti citiem starpniekserveriem. Notiek arī starpniekserveru slodzes balansēšana, jo hosts tiek pārdalīti uz starpniekserveriem ar vismazāko piešķirto hosts skaitu.

Papildus tam starpniekserveru slodzes balansēšana tiek aktivizēta, ja starpniekservera hosts skaits atšķiras no grupas vidējā vismaz par 10 hosts un 2 reizes (hosts pārpalikums vai hosts deficīts). Ja nelīdzsvarotība saglabājas pēc labvēlības perioda (10 x atteices aizkave), starpniekserveru grupa tiek ievietota rindā hosts pārdalei.

Starpniekserveru grupas pārvaldnieks pārdala hosts, izmantojot šādu loģiku:

  1. Aprēķina vidējo hosts skaitu uz vienu starpniekserveri.
  2. Starpniekserveriem ar hosts pārpalikumu — pārvieto liekos hosts uz starpniekserveru nepiešķirto kopu.
  3. Starpniekserveriem ar hosts deficītu — aprēķina, cik hosts ir nepieciešami līdzsvara sasniegšanai.
  4. Noņem nepieciešamo hosts skaitu no starpniekserveriem ar vislielāko hosts skaitu.
  5. Pārvieto nepiešķirtos hosts uz starpniekserveriem ar vismazāko hosts skaitu.

Hosts pārdales piemēri:

Hosts on proxy Group average Host reassignment
100 50 Yes
60 50 No
40 50 No
25 50 Yes
15 5 Yes
10 5 No

Ja starpniekserveru grupā ir mazāk nekā 10 hosts uzraudzīti, tas var novest pie nevienmērīga hosts sadalījuma starp grupas starpniekserveriem.

Starpniekservera grupas konfigurēšana

Lai konfigurētu starpniekservera grupu Zabbix lietotāja saskarnē:

  1. Dodieties uz Administration > Proxy groups
  2. Noklikšķiniet uz Create proxy group

Parameter Description
Name Starpniekservera grupas nosaukums.
Failover period Laika periods sekundēs, kura laikā starpniekserverim starpniekservera grupā ir jāsazinās ar Zabbix serveris, lai tas tiktu uzskatīts par tiešsaistē esošu (noklusējums: 1m; diapazons: 10s-15m). Ja starpniekserveris šajā periodā nesazinās, starpniekservera statuss tiek mainīts uz Offline, un tā hosts nekavējoties tiek pārdalīti citiem starpniekserveriem. Starpniekserveru slodzes balansēšana sākas pēc 10 x šī perioda.
Atbalsta laika sufiksus (piem., 30s, 1m) un lietotāja makro.
Minimum number of proxies Minimālais tiešsaistes starpniekserveru skaits, kas nepieciešams, lai saglabātu starpniekservera grupu tiešsaistē (noklusējums: 1; diapazons: 1-1000).
Atbalsta lietotāja makro.

Šai vērtībai jābūt mazākai par kopējo starpniekserveru skaitu grupā. Piemēram, grupā ar 10 starpniekserveriem, iestatot minimumu uz 10, grupa kļūs bezsaistē, ja kāds starpniekserveris neizdosies. Ņemiet vērā, ka tiešsaistes starpniekserveri bezsaistes grupā turpina darboties normāli, taču slodzes balansēšana/augsta pieejamība netiks veikta.
Description Starpniekservera grupas apraksts.
Proxies Parāda līdz piecu starpniekserveru sarakstu (kā saites vai vienkāršā tekstā atkarībā no lietotāja tiesībām uz starpniekserveriem), rediģējot grupu ar starpniekserveriem.

Starpniekservera slodzes balansēšanas konfigurēšana

Lai izmantotu starpniekservera slodzes balansēšanu, Zabbix lietotāja saskarnē ir jākonfigurē starpniekserveru grupa (skatiet iepriekš) un jāpārliecinās, ka hosts tiek uzraudzīti ar starpniekserveru grupu, nevis ar atsevišķiem starpniekserveriem (varat izmantot hostu masveida atjaunināšanu, lai pārvietotu hostus no starpniekserveriem uz starpniekserveru grupu).

Ja tiek izmantots Zabbix aģents, konfigurējiet to arī šādi:

  • Pasīvajām pārbaudēm parametram Server norādiet visus starpniekserveru grupas starpniekserverus.
  • Aktīvajām pārbaudēm ieteicams parametram ServerActive norādīt visus starpniekserveru grupas starpniekserverus vai Zabbix serveri. Ņemiet vērā, ka ar starpniekserveru grupām aktīvajā režīmā darbosies tikai Zabbix aģents 7.0 (vai jaunāka versija).

Ja parametrs ServerActive ietver tikai vienu starpniekserveri no starpniekserveru grupas (vai Zabbix serveri), aģents joprojām varēs izveidot savienojumu ar pareizo starpniekserveri. Kad aģenta pakalpojums tiek palaists un izveido savienojumu ar norādīto starpniekserveri, aģents saņems un kešatmiņā saglabās pilnu starpniekserveru IP adrešu sarakstu un to pašreizējo slodzi grupā. Pēc tam aktīvās pārbaudes tiks pāradresētas uz pareizo tiešsaistes starpniekserveri konkrētajam hostam, pamatojoties uz pašreizējo starpniekservera un hosta piešķīrumu starpniekserveru grupā.

Ja Zabbix aģenta parametrā ServerActive ir norādīts tikai viens starpniekserveris, tas var izraisīt uzraudzības datu zudumu, ja aģents tiek palaists vai pārstartēts laikā, kad norādītais starpniekserveris nav pieejams.

Izmantojot Zabbix sender, datu pieprasījumi arī tiek pāradresēti uz pareizo tiešsaistes starpniekserveri konkrētajam hostam, pamatojoties uz pašreizējo starpniekservera un hosta piešķīrumu starpniekserveru grupā. Tomēr, ja no ievades faila sūtāt vairāku hostu vērtības, izmantojiet -g opciju, lai novērstu datu nosūtīšanu uz nepareizo starpniekserveri.

Zabbix aģentam arī jāspēj caur ugunsmūri izveidot savienojumu ar visiem starpniekserveriem starpniekserveru grupā. Pretējā gadījumā aktīvās pārbaudes var iestrēgt vai neizdoties pāradresācijas vai atteices pārslēgšanas laikā. Piemēram:

  • Aktīvo pārbaužu laikā starpniekserveris var pāradresēt aģentu uz citu starpniekserveri. Ja šis starpniekserveris ir bloķēts ar ugunsmūri, saziņa iestrēgs, gaidot atbildi.
  • Stabilās augstas pieejamības konfigurācijās bez nesenas līdzsvarošanas aģenti, iespējams, nekad nesazināsies ar rezerves starpniekserveriem. Ja ugunsmūra noteikumi ir mainīti un nav pārbaudīti, atteices pārslēgšana var neizdoties.
Starpniekservera slodzes balansēšanas testēšana

Lai pārbaudītu starpniekservera slodzes balansēšanu:

  1. Konfigurējiet starpniekserveru grupu.
  2. Pārliecinieties, ka starpniekserveru grupai ir tiešsaistes statuss.
  3. Pārliecinieties, ka hosts tiek uzraudzīti ar starpniekserveru grupu, nevis atsevišķiem starpniekserveriem (varat izmantot hostu masveida atjaunināšanu, lai pārvietotu hostus no starpniekserveriem uz starpniekserveru grupu).
  4. Pagaidiet dažas sekundes konfigurācijas atjaunināšanai un hostu sadalei starp starpniekserveriem starpniekserveru grupā. Novērojiet izmaiņas, atsvaidzinot hostu sarakstu Administrēšana > Starpniekserveri.
Svarīgas piezīmes
  • SNMP trapi netiek atbalstīti ar starpniekserveriem starpniekserveru grupā.
  • Pārbaudēm, kas ir atkarīgas no ārējas konfigurācijas (piem., skriptiem ārējām pārbaudēm vai ODBC konfigurācijas datubāzes pārbaudēm), starpniekserveru grupas visos starpniekserveros jābūt vienādai konfigurācijai.
  • Datubāzes pārbaudēm ir nepieciešamas paplašinātas atļaujas datubāzes objektam/serverim.
  • VMware hosts, ko uzrauga starpniekserveru grupa, tiks nejauši sadalīti starp grupas starpniekserveriem. Tas liek katram starpniekserverim kešot visus VMware datus, radot papildu slodzi vCenter.
  • Hosts, kas izveidoti, pamatojoties uz automātiskās reģistrācijas datiem no starpniekservera starpniekserveru grupā, tiek iestatīti kā uzraugāmi šajā starpniekserveru grupā. Tomēr hosts, kas izveidoti, pamatojoties uz tīkla atklāšanas datiem no starpniekservera starpniekserveru grupā, tiek iestatīti kā uzraugāmi šajā starpniekserverī.