1 Proxies

Overzicht

Een Zabbix-proxy kan prestatie- en beschikbaarheidsgegevens verzamelen namens de Zabbix-server. Op deze manier kan een proxy een deel van de belasting van het verzamelen van gegevens op zich nemen en de Zabbix-server ontlasten.

Bovendien is het gebruik van een proxy de gemakkelijkste manier om gecentraliseerde en gedistribueerde monitoring te implementeren, waarbij alle agenten en proxies rapporteren aan één Zabbix-server en alle gegevens centraal worden verzameld.

Een Zabbix-proxy kan worden gebruikt om:

  • Afgelegen locaties te monitoren
  • Locaties met onbetrouwbare communicatie te monitoren
  • De Zabbix-server te ontlasten bij het monitoren van duizenden apparaten
  • Het onderhoud van gedistribueerde monitoring te vereenvoudigen

De proxy vereist slechts één TCP-verbinding met de Zabbix-server. Op deze manier is het gemakkelijker om een firewall te omzeilen, omdat u slechts één firewall-regel hoeft te configureren.

De Zabbix-proxy moet een aparte database gebruiken. Als het wordt gekoppeld aan de Zabbix-serverdatabase, zal dit de configuratie verbreken.

Alle door de proxy verzamelde gegevens worden lokaal opgeslagen voordat ze naar de server worden verzonden. Op deze manier gaan er geen gegevens verloren als gevolg van tijdelijke communicatieproblemen met de server. De parameters ProxyLocalBuffer en ProxyOfflineBuffer in het proxy-configuratiebestand regelen hoelang de gegevens lokaal worden bewaard.

Het kan gebeuren dat een proxy die de nieuwste configuratiewijzigingen rechtstreeks uit de Zabbix-serverdatabase ontvangt, een actuelere configuratie heeft dan de Zabbix-server, waarvan de configuratie mogelijk niet zo snel wordt bijgewerkt vanwege de waarde van CacheUpdateFrequency. Hierdoor kan de proxy mogelijk gegevens gaan verzamelen en deze naar de Zabbix-server sturen die deze gegevens negeert.

Een Zabbix-proxy is een gegevensverzamelaar. Het berekent geen triggers, verwerkt geen gebeurtenissen en stuurt geen meldingen. Voor een overzicht van de functionaliteit van de proxy, bekijkt u de volgende tabel:

Functie Ondersteund door proxy
Items
Zabbix-agentcontroles Ja
Zabbix-agentcontroles (actief) Ja 1
Eenvoudige controles Ja
Trapper-items Ja
SNMP-controles Ja
SNMP-traps Ja
IPMI-controles Ja
JMX-controles Ja
Logbestandsbewaking Ja
Interne controles Ja
SSH-controles Ja
Telnet-controles Ja
Externe controles Ja
Afhankelijke items Ja
Scriptitems Ja
Ingebouwde webmonitoring Ja
Itemwaarde voorbewerken Ja
Netwerkontdekking Ja
Actieve agentautoregistratie Ja
Ontdekking van laag niveau Ja
Externe opdrachten Ja
Triggers berekenen Nee
Gebeurtenissen verwerken Nee
Gebeurteniscorrelatie Nee
Meldingen verzenden Nee

[1] Om ervoor te zorgen dat een agent de proxy (en niet de server) vraagt om actieve controles uit te voeren, moet de proxy worden vermeld in de ServerActive parameter in het configuratiebestand van de agent.

Bescherming tegen overbelasting

Als de Zabbix-server gedurende enige tijd niet beschikbaar was en proxies veel gegevens hebben verzameld, kan de server worden overbelast zodra deze weer opstart (het gebruik van de geschiedeniscache blijft gedurende enige tijd tussen 95% en 100%). Deze overbelasting kan leiden tot prestatieverlies, waarbij controles trager worden verwerkt dan zou moeten. Er is bescherming tegen dit scenario geïmplementeerd om problemen te voorkomen die ontstaan door overbelasting van de geschiedeniscache.

Wanneer de geschiedeniscache van de Zabbix-server vol is, wordt de schrijftoegang tot de geschiedeniscache vertraagd, wat processen voor gegevensverzameling van de server vertraagt. Het meest voorkomende geval van overbelasting van de geschiedeniscache treedt op na een periode van serverdowntime, wanneer proxies verzamelde gegevens uploaden. Om dit te voorkomen is proxyvertraging toegevoegd (momenteel kan dit niet worden uitgeschakeld).

De Zabbix-server zal stoppen met het accepteren van gegevens van proxies wanneer het gebruik van de geschiedeniscache 80% bereikt. In plaats daarvan worden die proxies op een vertragingslijst geplaatst. Dit zal doorgaan totdat het cachegebruik daalt naar 60%. Nu zal de server gegevens van proxies een voor een beginnen te accepteren, zoals gedefinieerd door de vertragingslijst. Dit betekent dat de eerste proxy die tijdens de vertragingsperiode probeerde gegevens te uploaden, als eerste wordt bediend en dat de server geen gegevens van andere proxies zal accepteren totdat deze is voltooid.

Deze vertragingsmodus blijft doorgaan totdat het cachegebruik opnieuw 80% bereikt, of daalt naar 20%, of de vertragingslijst leeg is. In het eerste geval zal de server opnieuw stoppen met het accepteren van proxygegevens. In de andere twee gevallen zal de server normaal gaan werken en gegevens van alle proxies accepteren.

De bovenstaande informatie kan worden geïllustreerd in de volgende tabel:

Gebruik van de
geschiedenisschrijf-cache
Zabbix-servermodus Actie van de Zabbix-server
Bereikt 80% Wachten Stopt met het accepteren van proxygegevens, maar behoudt een vertragingslijst (prioriteitslijst van proxies die later worden gecontacteerd).
Daalt naar 60% Vertraagd Begint de vertragingslijst te verwerken, maar accepteert nog steeds geen proxygegevens.
Daalt naar 20% Normaal Verwijdert de vertragingslijst en begint proxygegevens normaal te accepteren.

U kunt het interne item zabbix[wcache,history,pused] gebruiken om dit gedrag van de Zabbix-server te correleren met een metriek.

Configuratie

Nadat u een proxy hebt geïnstalleerd en geconfigureerd, is het tijd om deze in te stellen in de Zabbix-webinterface.

Proxies toevoegen

Om een proxy in de Zabbix-webinterface te configureren:

  • Ga naar: Beheer → Proxies
  • Klik op Proxy toevoegen

Parameter Beschrijving
Proxy naam Voer de proxy naam in. Het moet dezelfde naam zijn als in het Hostname parameter in het proxy configuratiebestand.
Proxy modus Selecteer de proxy modus.
Actief - de proxy zal verbinding maken met de Zabbix server en configuratiegegevens opvragen.
Passief - Zabbix server maakt verbinding met de proxy.
Let op dat zonder versleutelde communicatie (gevoelig) proxy configuratiegegevens beschikbaar kunnen worden voor partijen die toegang hebben tot de trapper poort van de Zabbix server wanneer een actieve proxy wordt gebruikt. Dit is mogelijk omdat iedereen zich kan voordoen als een actieve proxy en configuratiegegevens kan opvragen als er geen authenticatie plaatsvindt of proxy adressen niet beperkt zijn in het Proxy adres veld.
Proxy adres Indien gespecificeerd, worden alleen actieve proxy verzoeken geaccepteerd vanuit deze lijst van comma-gescheiden IP-adressen, optioneel in CIDR-notatie, of DNS namen van actieve Zabbix proxy.
Dit veld is alleen beschikbaar als een actieve proxy is geselecteerd in het Proxy modus veld. Macro's worden niet ondersteund.
Deze optie wordt ondersteund sinds Zabbix 4.0.0.
Interface Voer interface details in voor de passieve proxy.
Dit veld is alleen beschikbaar als een passieve proxy is geselecteerd in het Proxy modus veld.
IP adres IP-adres van de passieve proxy (optioneel).
DNS naam DNS-naam van de passieve proxy (optioneel).
Verbinden met Door op de bijbehorende knop te klikken, vertelt u de Zabbix server waarmee u gegevens van de proxy wilt ophalen:
IP - Verbinding maken met het IP-adres van de proxy (aanbevolen)
DNS - Verbinding maken met de DNS-naam van de proxy
Poort TCP-poortnummer van de passieve proxy (standaard 10051).
Beschrijving Voer de proxy beschrijving in.

Het tabblad Versleuteling stelt u in staat om versleutelde verbindingen met de proxy te vereisen.

Parameter Beschrijving
Verbindingen naar proxy Hoe de server verbinding maakt met de passieve proxy: geen versleuteling (standaard), met behulp van PSK (pre-shared key) of certificaat.
Verbindingen van proxy Selecteer welk type verbindingen zijn toegestaan van de actieve proxy. Verschillende verbindingstypes kunnen tegelijkertijd worden geselecteerd (handig voor testen en overschakelen naar een ander verbindingstype). Standaard is "Geen versleuteling".
Uitgever Toegestane uitgever van het certificaat. Het certificaat wordt eerst gevalideerd met de CA (certificate authority). Als het geldig is en ondertekend door de CA, kan het Uitgever veld worden gebruikt om de toegestane CA verder te beperken. Dit veld is optioneel en bedoeld om te gebruiken als uw Zabbix installatie certificaten van meerdere CAs gebruikt.
Onderwerp Toegestaan onderwerp van het certificaat. Het certificaat wordt eerst gevalideerd met de CA. Als het geldig is en ondertekend door de CA, kan het Onderwerp veld worden gebruikt om alleen één waarde van de Onderwerp te accepteren. Als dit veld leeg is, wordt elk geldig certificaat dat is ondertekend door de geconfigureerde CA geaccepteerd.
PSK identiteit Identiteitsstring van de vooraf gedeelde sleutel (pre-shared key). Plaats geen gevoelige informatie in de PSK identiteit, deze wordt onversleuteld over het netwerk verzonden om een ontvanger te informeren welke PSK moet worden gebruikt.
PSK Vooraf gedeelde sleutel (hex-string). Maximale lengte: 512 hexadecimale tekens (256-byte PSK) als Zabbix de GnuTLS of OpenSSL-bibliotheek gebruikt, 64 hexadecimale tekens (32-byte PSK) als Zabbix de mbed TLS (PolarSSL) bibliotheek gebruikt. Voorbeeld: 1f87b595725ac58dd977beef14b97461a7c1045b9a1c963065002c5473194952
Hostconfiguratie

U kunt aangeven dat een individuele host moet worden gemonitord door een proxy in het hostconfiguratie-formulier, met behulp van het veld Gemonitord door proxy.

Een massa-update van hosts is een andere manier om aan te geven dat hosts moeten worden gemonitord door een proxy.