El servidor Zabbix és el processador central del programari Zabbix.
El servidor interroga i recupera la informació, calcula els triggers, i envia les notificacions als usuaris. És el component central on els agents i els proxys Zabbix reporten la informació de disponibilitat i integritat dels sistemes. El servidor pot per sí mateix verificar a distància els serveis de xarxa (com ara els servidors Web i els servidors de missatgeria) emprant simples verificacions de servei.
El servidor és el referencial central on totes les dades de configuració, estadístiques i operacions s'emmagatzemen, i és l'entitat de Zabbix que alerta activament els administrador quan apareixen problemes en un dels sistemes monitorats.
El funcionament del servidor es divideix en tres components diferents, que són: el servidor Zabbix, la interfície Web i l'emmagatzematge en una base de dades.
Tota la informació de configuració de Zabbix s'emmagatzema a la base de dades, amb qui el servidor i la interfície interactuen. Per exemple, si creem un nou element des de la interfície Web (o l'API), s'afegeix a la taula dels elements de la base de dades. Llavors, cap a un cop per minuts, el servidor Zabbix demana a la taula dels elements per obtindre una llista d'elements actius que són emmagatzemats a una cau del servidor Zabbix. D'aquesta manera, pot prendre fins a dos minuts perquè tota modificació aparegui a la darrera secció de dades.
El servidor funciona com un procés dimoni. Pot engegar-se executant:
això funcionarà a la majoria dels sistemes GNU/Linux. Sota altre sistemes, haureu de poder executar:
De la mateixa manera, per aturar/reiniciar/consultar l'estat, empreu les comandes següents:
Si les comandes anteriors no funcionen pas, haureu d'engegar el proxy manualment. Trobeu el camí dels binaris de zabbix_server i executeu:
Podreu emprar els paràmetres de línies de comanda següents amb el servidor Zabbix:
-c --config <file> ruta del fitxer de configuració (per defecte és /usr/local/etc/zabbix_server.conf)
-f --foreground executar el servidor 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 servidor Zabbix amb els paràmetres de línia de comandes:
Opcions de control d'execució:
Opció | Descripció | Destí |
---|---|---|
config_cache_reload | Recarrega la memòria cau de configuració. S'ignora si la memòria cau és carregant-se. | |
diaginfo[=<target>] | Recull informació de diagnòstic al fitxer de registre del servidor. | historycache - estadístiques de la memòria cau de l'històric valuecache - estadístiques de la memòria cau de valors * *preprocessing - estadístiques del gestor de preprocessament alerting - estadístiques del gestor d'alertes lld - estadístiques del gestor de LLD locks - llista de mutex (buida a sistemes BSD) connector** - estadístiques de connectors amb la cua més llarga |
ha_status | Registra l'estat del clúster d'alta disponibilitat (HA). | |
ha_remove_node=target | Esborra el node d'alta disponibilitat (HA) especificat per nom o identificador. Tingueu en compte que els nodes actius/en espera no es poden esborrar pas. |
target - nom o identificador de node (pot obtindre's executant ha_status) |
ha_set_failover_delay=delay | Defineix el retard de la migració per error d'alta disponibilitat (HA). S'admeten sufixos de temps, p. ex. 10s, 1m. |
|
proxy_config_cache_reload[=<target>] | Recarregar la cau de configuració del proxy . | target - llistat separat per comes dels noms dels proxys Si no s'especifica cap destí, recarrega la configuració de tots els proxys |
secrets_reload | Recarrega els secrets del bagul. | |
service_cache_reload | Recarrega la memòria cau del gestor de serveis. | |
snmp_cache_reload | Recarrega la memòria cau SNMP, esborra les propietats SNMP (hora del motor, inicis 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. |
|
trigger_housekeeper_execute | Inicia el procediment de neteja del trigger per als serveis per esborrar els problemes causats pels triggers que s'han esborrat des de llavors, inclosos els problemes de servei generats per aquests problemes (considerats com a resolts en el moment de la neteja). Tingueu en compte que, fins que no s'iniciï el procediment de neteja, els problemes causats pels triggers que s'han esborrat encara poden generar problemes de servei i assignar-los als serveis. Si la vostra configuració implica molts serveis de [regles de càlcul d'estat] (/manual/it_services/service_tree#service-configuration) basat en triggers descoberts/no descoberts amb freqüència, considereu augmentar la freqüència del procediment de manteniment del trigger ajustant el paràmetre de configuració del servidor ProblemHousekeepingFrequency. S'ignora si el trigger 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 compatible amb sistemes BSD. |
tipus de procés - Tots els processos del tipus especificat (p. ex. enquestador) Veieu tots els tipus de procés del servidor. tipus de procés,N - Tipus i nombre de procés (per exemple, poller,3) pid - identificador del 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 sobre tots els rwlocks/mutex pel nom de la funció. |
tipus de procés - tots els processos d'un tipus especificat (p. ex., sincronitzador d'historial) Els tipus de procés admesos es carreguen com a objectius de perfil: alertador, gestor d'alertes, gestor de disponibilitat, configuració de sincronització, descobridor, escala mecànica, enquestador d'històric, sincronitzador d'històric, neteja programada, http poller, icmp pinger, ipmi poller, ipmi poller, java poller, lld manager, lld worker, odbc poller, poller, gestor de preprocessament, proxy poller, autocontrol, gestor de serveis, snmp trapper, gestor de tasques, temporitzador, trapper, poller inaccessible, vmware collector tipus de procés,N - tipus i nombre de procés (p. ex., sincronització d'històric,1) pid - Identificador de procés (de l'1 al 65535). Per a valors més alts, especifiqueu l'objectiu com a "tipus de procés,N". abast - rwlock , mutex i processing es poden emprar amb el tipus i el nombre de procés (p. ex., sincronització d'historial,1,processing) o a tot tipus de processos (p. ex., history syncer,rwlock) |
prof_disable[=<target>] | Desactiva la creació de perfils. Afecta tots els processos si no s'especifica l'objectiu. |
process type - Tots els processos del tipus especificat (p. ex. sincronitzador d'històric) Tipus de procés compatible com a objectius de perfil: vegeu prof_enable tipus de procés ,N - Tipus i nombre de procés (p. ex., sincronització d'històric,1) pid - identificador del procés (de l'1 al 65535). Per a valors més grans, especifiqueu l'objectiu com a 'tipus de procés,N'. |
Exemple d'ús del control en temps d'execució per tornar a carregar la memòria cau de configuració del servidor:
Exemple d'ús del control en temps d'execució per tornar a carregar la configuració del proxy:
# Recarrega la configuració de tots els proxys:
zabbix_server -R proxy_config_cache_reload
# Recarrega la configuració de Proxy1 i Proxy2:
zabbix_server -R proxy_config_cache_reload=Proxy1,Proxy2
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 servidor:
zabbix_server -R diaginfo
# Recollir les estadístiques de la memòria cau de l'historial al fitxer de registre del servidor:
zabbix_server -R diaginfo=historycache
Exemple d'ús del control de temps d'execució per tornar a carregar la memòria cau SNMP:
Exemple d'ús del control d'execució per activar l'execució de neteja:
Exemples d'ús del control d'execució per canviar el nivell de registre:
# Pujar el nivell de registre de tots els processos:
zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase
# Pujar el nivell de registre del segon procés d'enquesta:
zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase=poller,2
# Pujar el nivell de registre del procés amb PID 1234:
zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase=1234
# Baixar el nivell de registre de tots els processos de sondeig http:
zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_decrease="http poller"
Exemple de configuració del retard de la migració per error d'HA a un mínim de 10 segons:
El servidor Zabbix és dissenyat per funcionar com a usuari no root. Funcionarà amb qualsevol usuari no root que iniciï els processos. Així, podeu executar el servidor com a usuari no root sense cap problema.
Si mireu d'executar-lo com a 'root', canviarà a un usuari 'zabbix' codificat en dur, que ha d'ésser present al vostre sistema. Només podeu executar el servidor com a 'root' si canvieu la configuració 'AllowRoot' al fitxer de configuració associat del servidor.
Si el servidor i l'agent Zabbix s'executen a la mateixa màquina, es recomana emprar un usuari diferent per executar el servidor i l'agent. En cas contrari, si tots dos s'executen amb el mateix usuari, l'agent pot accedir al fitxer de configuració del servidor i qualsevol usuari de nivell administrador de Zabbix pot recuperar fàcilment, per exemple, el mot de pas de la base de dades.
Veure les opcions de l'arxiu de configuració per tindre més detalls sobre la configuració del zabbix_server.
Els scripts s'empren per iniciar/aturar automàticament els processos Zabbix durant l'inici/aturada del sistema. Els scripts són al directori misc/init.d.
agent poller
- procés de poller asíncron per verificacions passives amb un fil de treballalert manager
- gestor de cues d'alertesalert syncer
- procés d'escriptura d'alertes a la base de dadesalerter
- procés d'enviament de notificacionsavailability manager
- procés d'actualització de la disponibilitat de l'equipconfiguration syncer
- procés de gestió de dades de configuració de la memòria cau a la memòriaconfiguration syncer worker
- procés per resoldre i sincronitzar valors de macro d'usuari als noms d'elementsconnector manager
- procés gestor de connectorsconnector worker
- procés per gestionar les peticions del gestor de connexionsdiscovery manager
- procés gestor per trobar dispositiusdiscovery worker
- procés per gestionar tasques de descoberta del discovery managerescalator
- procés d'escalada d'accionsha manager
- procés per gestionar l'alta disponibilitathistory poller
- processos calculats i comprovacions internes que requereixen una connexió a la base de dadeshistory syncer
- procés d'escriptura de l'historial a la base de dadeshousekeeper
- procés d'esborrat de dades de l'historial antichttp agent poller
- procés poller asíncron per verificacions HTTP amb un fil de treballhttp poller
- poller per al monitoratge webicmp pinger
- poller per a comprovacions icmppingipmi manager
- gestors d'enquestadors IPMIipmi poller
- poller per a comprovacions IPMIjava poller
- poller per a comprovacions de Javalld manager
- procés de gestió de tasques de descoberta de baix nivelllld worker
- procés per gestionar tasques de descoberta de baix nivellodbc poller
- poller per a comprovacions ODBCpoller
- poller normal per a controls passiuspreprocessing manager
- gestor de tasques de preprocessamentpreprocessing worker
- procés de preprocessament de dadesproxy poller
- poller de proxys passiusproxy group manager
- gestor del balanceig de càrrega i alta disponibilitat del proxyreport manager
- gestor de tasques de generació d'informes programatsreport writer
- procés de generació d'informes programatself-monitoring
- procés de recollida d'estadístiques internes del servidorservice manager
- procés per gestionar serveis rebent informació sobre problemes, etiquetes de problemes i recuperació de problemes des del sincronitzador d'historial, gestor de tasques i gestor d'alertessnmp poller
- procés poller asíncron per comprovacions SNMP amb un fil de treball (només elements walk[OID]
i get[OID]
)snmp trapper
- trapper per a trampes SNMPtask manager
- procés per a l'execució remota de tasques demanades per altres components (per exemple: tancar un problema, reconèixer un problema, verificació immediata del valor d'un element, control remot de la funcionalitat d'execució)timer
- temporitzador per processar mantenimentstrapper
- trapper per a controls actius, trampes, comunicació amb el proxytrigger housekeeper
- procés per esborrar problemes generats per triggers que s'han esborratunreachable poller
- enquesta d'equips inabastablevmware collector
- col·lector de dades de VMware responsable de recopilar dades per als serveis de VMwareEl fitxer de registre del servidor es pot emprar per observar els tipus de procés.
Es poden monitorar diversos tipus de processos del servidor Zabbix mitjançant elements interns zabbix[process,<type>,<mode>,<state>].
Per raons de seguretat i de la natura crítica del funcionament del servidor, UNIX és l'únic sistema d'explotació capaç de proporcionar sistemàticament el rendiment, tolerància a errades i resiliència necessàries. Zabbix funciona sota les millors versios del mercat.
El servidor Zabbix s'ha provat amb les següents plataformes:
Zabbix pot funcionar igualment amb altres sistemes d'explotació de tipus Unix.
Veieu que al servidor 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.