4 Proxy

Vista general

El proxy Zabbix és un procés que pot recopilar dades de monitoratge d'un o més dispositius monitorats i enviar la informació al servidor Zabbix, bàsicament treballant en nom del servidor. Totes les dades recollides s'emmagatzemen en memòria intermèdia local i després s'envien al servidor Zabbix al qual pertany el proxy.

El desplegament d'un proxy és opcional, però pot ser molt útil per distribuir la càrrega d'un sol servidor Zabbix. Si només recullen dades els proxys, el processament al servidor de CPU i d'E/S de disc es fa menys intensiu.

Un proxy Zabbix és la solució ideal per al monitoratge centralitzat de llocs remots, sucursals i xarxes sense administradors locals.

El proxy Zabbix requereix una base de dades independent.

Tingueu en compte que les bases de dades admeses amb el proxy Zabbix són SQLite, MySQL i PostgreSQL.

Veieu també: Ús de proxys en un entorn distribuït

Execució del proxy

Si s'instal·la com a paquet

El proxy Zabbix s'executa com a procés dimoni. El proxy es pot engegar executant:

systemctl start zabbix-proxy

Això funcionarà a la majoria dels sistemes GNU/Linux. Sota altres sistemes, haurem d'executar:

/etc/init.d/zabbix-proxy start

De la mateixa manera, per aturar/reiniciar/veure l'estat dell proxy Zabbix, empreu les comandes següents:

systemctl stop zabbix-proxy
       systemctl restart zabbix-proxy
       systemctl status zabbix-proxy
Engegada manual

Si les comandes anteriors no funcionen pas, haureu d'engegar el proxy manualment. Trobeu el camí dels binaris de zabbix_proxy i executeu:

zabbix_proxy

Podreu emprar els paràmetres de línies de comanda següents amb el proxy Zabbix:

-c --config <file>              ruta del fitxer de configuració
       -f --foreground              executar el proxy Zabbix en primer pla
       -R --runtime-control <option>   executar funcions administratives
       -T --test-config            validar l'arxiu de configuració i sortir
       -h --help                       veure aquesta ajuda
       -V --version                    veure el nombre de versió

Exemples d'execució del proxy Zabbix amb els paràmetres de línia de comandes:

zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf
       zabbix_proxy --help
       zabbix_proxy -V
Control de temps d'execució

Opcions de control del temps d'execució:

Opció Descripció Objectiu
config_cache_reload Recarrega la memòria cau de configuració. S'ignora si s'està carregant la memòria cau.
El proxy Zabbix actiu es connectarà al servidor Zabbix i demanarà dades de configuració.
diaginfo[=<section>] Recull informació de diagnòstic al fitxer de registre del proxy. historycache - estadístiques de la memòria cau de l'historial
preprocessing - estadístiques del gestor de preprocessament
* *locks** - llista de mutex (és buida a sistemes BSD)
snmp_cache_reload Recarrega la memòria cau SNMP, esborra les propietats SNMP (hora del motor, engegada del motor, identificador del motor, credencials) per a tots els equips.
housekeeper_execute Inicia el procediment de neteja. S'ignora si el procediment de neteja és en curs.
log_level_increase[=<target>] Augmenta el nivell de registre, afecta tots els processos si no s'especifica l'objectiu.
No s'admeten als sistemes BSD.
tipus de procés - Tots els processos del tipus especificat (com ara pollers)
Veieu tots els tipus de procés proxy.
tipus de procés,N - tipus i nombre de procés (p. ex., enquestador,3)
pid - Identificador de procés (de l'1 al 65535). Per a valors més grans, especifiqueu l'objectiu com a 'tipus de procés,N'.
log_level_decrease[=<target>] Disminueix el nivell de registre, afecta tots els processos si no s'especifica l'objectiu.
No és compatible amb sistemes BSD.
prof_enable[=<target>] Activa el perfil.
Afecta tots els processos si no s'especifica l'objectiu.
El perfil activat proporciona detalls de tots els rwlocks/mutex pel nom de la funció.<br >Admès des de Zabbix 6.0.13.
process type - Tots els processos del tipus especificat (com ara sincronització d'historial)
Veieu tots els tipus de procés de proxy.
tipus de procés, N - tipus i nombre de procés (com ara sincronització d'historial, 1)
pid - Identificador de procés (de l'1 al 65535). Per a valors més grans, especifiqueu l'objectiu com a 'process type,N'.
abast - rwlock, mutex i processament es poden emprar amb el tipus i el nombre de procés (p. ex., sincronització d'historial, 1, processing) o tots els processos de tipus (p. ex., history syncer, rwlock)
prof_disable[=<target>] Desactiva la creació de perfils.
Afecta tots els processos si no s'especifica l'objectiu.
Admès des de Zabbix 6.0.13.
process type - Tots els processos del tipus especificat (p. ex., sincronitzador d'historial)
Veieu tots els tipus de procés de proxy.
process type,N - Tipus i nombre de procés (p. ex., sincronització d'historial,1)
pid - Identificador del procés (de l'1 al 65535). Per a valors més grans, especifiqueu l'objectiu com a 'process type,N'.

Exemple d'ús del control en temps d'execució per recarregar la configuració de la memòria cau del proxy:

zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R config_cache_reload

Exemples d'ús del control en temps d'execució per recopilar informació de diagnòstic:

# Recollir tota la informació de diagnòstic disponible al fitxer de registre del proxy:
       zabbix_proxy -R diaginfo
       
       # Recollir les estadístiques de la memòria cau de l'historial al fitxer de registre del proxy:
       zabbix_proxy -R diaginfo=historycache

Exemple d'ús del control de temps d'execució per tornar a carregar la memòria cau SNMP:

zabbix_proxy -R snmp_cache_reload

Exemple d'ús del control en temps d'execució per activar l'execució de la neteja periòdica:

zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R housekeeper_execute

Exemples d'ús del control en temps d'execució per canviar el nivell de registre:

# Augmenta el nivell de registre de tots els processos:
       zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase
       
       # Augmenta el nivell de registre del segon procés d'enquesta:
       zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=poller,2
       
       # Augmenta el nivell de registre del procés amb PID 1234:
       zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=1234
       
       # Disminueix el nivell de registre de tots els processos de sondeig http:
       zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_decrease="http poller"

Processos d'usuari

El proxy Zabbix s'ha pensat per executar com a usuari i no pas com a root. Funcionarà amb l'usuari no-root hagi iniciat. Podeu doncs executar el proxy com un usuari no-root sense problemes.

Si proveu d'executar-lo com a 'root', aquest passarà a un usuari 'zabbix' codi en brut, que ha d'ésser present al vostre sistema. Podeu executar només el proxy com a 'root' si modifiqueu el paràmetre 'AllowRoot' a l'arxiu de configuració del proxy associat.

Arxiu de configuració

Veure les opcions de l'arxiu de configuració per tindre més detalls sobre la configuració del zabbix_proxy.

Tipus de processos de proxy

  • availability manager - procés d'actualització de la disponibilitat de l'equip
  • configuration syncer - procés per gestionar la memòria cau de les dades de configuració
  • data sender - permet al proxy enviar les dades
  • discoverer manager - procés gestor per la descoberta de dispositius
  • history syncer - escriptura de base de dades de l'històric
  • history poller - procés de processament per a comprovacions calculades, afegides i internes que requereixen una connexió a una base de dades
  • housekeeper - procés per esborrar dades de l'historial antic
  • http agent poller - procés poller asíncron per verificacions HTTP amb un fil de treball
  • http poller - poller per el monitoratge web
  • icmp pinger - poller per les verificacions icmpping
  • ipmi manager - gestor de poller IPMI
  • ipmi poller - poller per el monitoratge IPMI
  • java poller - poller per el monitoratge Java
  • odbc poller - poller per el monitoratge ODBC
  • poller - poller normal per el monitoratge passiu
  • preprocessing manager - responsable de les tasques de pretractament
  • preprocessing worker - processos de pretractrament de dades
  • self-monitoring - processos recollint les estadístiques internes del servidor
  • snmp poller - procés poller asíncron per verificacions SNMP amb un fil de treball (només elements walk[OID] i get[OID])
  • snmp trapper - trapper per els traps SNMP
  • task manager - procés per a l'execució remota de tasques sol·licitades per altres components (per exemple, tancar un problema, reconèixer un problema, comprovar ara un element, funcionalitat d'ordres remots)
  • trapper - ttrapper per a controls actius, trampes, comunicació amb el proxy
  • unreachable poller - enquestador per a equips inabastables
  • vmware collector - col·lector de dades de VMware responsable de recuperar dades dels serveis de VMware

El fitxer de registre del proxy es pot emprar per observar aquests tipus de processos.

Es poden monitorar diversos tipus de processos de proxy Zabbix mitjançant l'element intern zabbix[process,<type>,<mode>,<state>].

Plataformes suportades

El proxy Zabbix s'executa sota les mateixes plataformes suportades que el servidor Zabbix.

Buffer de memòria

La memòria intermitja permet emmagatzemar dades noves (valors d'elements, descoberta de xarxa, registre automàtic de l'equip) a la memòria intermitja i carregar-les al servidor Zabbix sense accedir a la base de dades. El buffer de memòria s'ha introduït per al proxy des de Zabbix 7.0.

En instal·lacions anteriors a Zabbix 7.0, les dades recollides es van emmagatzemar a la base de dades abans de pujar-les al servidor Zabbix. Per a aquestes instal·lacions, aquest segueix sent el comportament predeterminat després d'actualitzar a Zabbix 7.0.

Per a un rendiment optimitzat, es recomana configurar l'ús de memòria intermitja al proxy. Això és possible modificant el valor de ProxyBufferMode de "disc" (codificat per defecte per a instal·lacions existents) a "híbrid" (recomanat) o "memòria". També cal definir la mida del buffer de memòria (paràmetre ProxyMemoryBufferSize).

En el mode híbrid, la memòria intermitja és protegida de la pèrdua de dades enviant les dades no enviades a la base de dades si el proxy s'atura, si la memòria intermitja és plena o si les dades són massa antigues. Quan tots els valors s'han buidat a la base de dades, el proxy torna a emprar la memòria intermitja.

En mode de memòria, s'emprarà la memòria intermitja, però no hi ha protecció contra la pèrdua de dades. Si el proxy s'atura o la memòria s'omple en excés, les dades no enviades s'esborraran.

El mode híbrid (ProxyBufferMode=hybrid) s'aplica a totes les noves instal·lacions des de Zabbix 7.0.

Paràmetres addicionals com ara ProxyMemoryBufferSize i ProxyMemoryBufferAge defineixen la mida de la memòria intermitja i l'edat màxima de les dades a la memòria intermitja, respectivament.

Tingueu en compte que amb una configuració conflictiva, el proxy donarà un error i no s'iniciarà pas; per exemple, si:

  • ProxyBufferMode s'estableix a "híbrid" o "memòria" i ProxyMemoryBufferSize és "0";
  • ProxyBufferMode és configurat com a "híbrid" o "memòria" i ProxyLocalBuffer no és "0".

Entorn Local

Veieu que al proxy li cal un entorn local UTF-8 per tal que determinats elements textuals puguin ésser interpretats correctament. La majoria dels sistemes moderns de tipus Unix tenen un paràmetre regional UTF-8 per defecte; de tota manera, alguns sistemes poden haver d'ésser definits específicament.