Zabbix сервер је централни процес Zabbix софтвера.
Сервер врши анкетирање и хватање података, израчунава окидаче, шаље обавештења корисницима. То је централна компонента којој Zabbix агенти и проксији извештавају о доступности и интегритету система. Сервер може сам даљински да провери мрежне сервисе (као што су веб сервери и мејл сервери) користећи једноставне провере сервиса.
Сервер је централно спремиште у којем се чувају сви конфигурациони, статистички и оперативни подаци, и то је ентитет у Zabbix-у који ће активно упозорити администраторе када се појаве проблеми у било ком од праћених система.
Функционисање основног Zabbix сервера је подељено на три различите компоненте; то су: Zabbix сервер, веб кориснички интерфејс и складиште базе података.
Све информације о конфигурацији за Zabbix се чувају у бази података, са којом и сервер и веб фронтенд интерагују. На пример, када креирате нову ставку користећи веб кориснички интерфејс (или API), она се додаје у табелу ставки у бази података. Затим, отприлике једном у минуту, Zabbix сервер ће упитати табелу елемената за листу активних ставки, која се затим чува у кешу унутар Zabbix сервера. Због тога може проћи и до два минута да се било какве промене направљене у Zabbix корисничком интерфејсу прикажу у одељку са најновијим подацима.
Zabbix сервер ради као демон процес. Сервер се може покренути извршавањем:
service zabbix-server start
Ово ће радити на већини GNU/Linux система. На другим системима можда ћете морати да покренете:
/etc/init.d/zabbix-server start
Слично, за заустављање/поновно покретање/преглед статуса, користите следеће команде:
service zabbix-server stop service zabbix-server restart service zabbix-server status
Ако горе наведено не ради, морате га покренути ручно. Пронађите путању до бинарног zabbix_server и извршити:
zabbix_server
Можете користити следеће параметре командне линије са Zabbix сервером:
-c --config <file>. путања до конфигурационе датотеке (подразумевано је /usr/local/etc/zabbix_server.conf) -f --foreground покрените Zabbix сервер у првом плану -R --runtime-control <option> извршите административне функције -T --test-config потврдите конфигурациону датотеку и изађите -h --help дајте ову помоћ -V --version прикажи број верзије
Примери покретања Zabbix сервера са параметрима командне линије:
zabbix_server -c /usr/local/etc/zabbix_server.conf zabbix_server --help zabbix_server -V
Опције контроле извршавања:
Option | Description | Target |
---|---|---|
config_cache_reload | Поново учитај кеш конфигурације. Игнорише се ако се кеш тренутно учитава. | |
diaginfo[=<section>] | Прикупи дијагностичке информације у датотеци дневника сервера. | historycache - статистика кеша историје valuecache - статистика кеша вредности preprocessing - статистика менаџера претходне обраде alerting - статистика менаџера упозорења lld - статистика LLD менаџера locks - листа мутекса (празна је на *BSD* системима) connector - статистика за конекторе са највећим редом чекања |
ha_status | Забележи статус кластера високе доступности (HA). | |
ha_remove_node=target | Уклоните чвор високе доступности (HA) наведен његовим именом или ID-ом. Имајте на уму да се активни/чворови у стању приправности не могу уклонити. |
target - име или ID чвора (може се добити покретањем ha_status) |
ha_set_failover_delay=delay | Подесите кашњење пребацивања на резервни систем високе доступности (HA). Подржани су временски суфикси, нпр. 10s, 1m. |
|
proxy_config_cache_reload[=<target>] | Поново учитајте кеш конфигурације проксија. | target - листа имена проксија раздвојена зарезима Ако није наведен циљ, поново учитајте конфигурацију за све проксије |
secrets_reload | Поново учитајте тајне из трезора. | |
service_cache_reload | Поново учитајте кеш менаџера услуга. | |
snmp_cache_reload | Поново учитава SNMP кеш меморију, брише SNMP својства (време покретања мотора, покретање мотора, ID мотора, акредитиве) за све домаћине. | |
housekeeper_execute | Покреће процедуру одржавања. Игнорише се ако је процедура одржавања тренутно у току. | |
trigger_housekeeper_execute | Покреће процедуру одржавања окидача. Игнорише се ако је процедура одржавања окидача тренутно у току. | |
log_level_increase[=<target>] | Повећава ниво логовања, утиче на све процесе ако циљ није наведен. Није подржано на BSD системима. |
тип процеса - Сви процеси наведеног типа (нпр. poller) Погледајте све типове процеса сервера. тип процеса,N - Тип и број процеса (нпр. poller,3) pid - Идентификатор процеса (1 до 65535). За веће вредности наведите циљ као 'тип процеса,N'. |
log_level_decrease[=<target>] | Смањите ниво евиденције, утиче на све процесе ако циљ није наведен. Није подржано на BSD системима. |
|
prof_enable[=<target>] | Омогући профилисање. Утиче на све процесе ако циљ није наведен. Омогућено профилисање пружа детаље о свим rwlock-овима/mutex-овима по имену функције. |
тип процеса - Сви процеси наведеног типа (нпр. синхронизатор историје) Подржани типови процеса као циљеви профилисања: alerter, alert manager, availiness syncer, configuration syncer, discovery manager, escalator, poller history, syncer history, housekeeper, http poller, icmp pinger, ipmi manager, ipmi poller, java poller, lld manager, lld worker, odbc poller, poller, preprocessing manager, preprocessing worker, proxy poller, self-monitoring, service manager, snmp trapper, task manager, timer, trapper, unreachable poller, vmware collector type of process,N - Тип и број процеса (нпр., history syncer,1) pid - Процес идентификатор (1 до 65535). За веће вредности наведите циљ као „тип процеса,N“. обхват - rwlock , mutex , processing се може користити са типом и бројем процеса (нпр., history syncer,1,processing) или свим процесима типа (нпр., history syncer,rwlock) |
prof_disable[=<target>] | Онемогући профилисање. Утиче на све процесе ако циљ није наведен. |
тип процеса - Сви процеси наведеног типа (нпр. history syncer) Подржани типови процеса као циљеви профилисања: погледајте prof_enable тип процеса,N - Тип и број процеса (нпр., history syncer,1) pid - Идентификатор процеса (1 до 65535). За веће вредности наведите циљ као 'тип процеса,N'. |
Пример коришћења контроле времена извршавања за поновно учитавање кеша конфигурације сервера:
zabbix_server -c /usr/local/etc/zabbix_server.conf -R config_cache_reload
Примери коришћења контроле времена извршавања за поновно учитавање конфигурације проксија:
# Поново учитајте конфигурацију свих проксија: zabbix_server -R proxy_config_cache_reload
# Поново учитајте конфигурацију Proxy1 и Proxy2: zabbix_server -R proxy_config_cache_reload=Proxy1,Proxy2
Примери коришћења контроле времена извршавања за прикупљање дијагностичких информација:
# Прикупите све доступне дијагностичке информације у датотеци дневника сервера: zabbix_server -R diaginfo
# Прикупите статистику кеша историје у датотеци дневника сервера: zabbix_server -R diaginfo=historycache
Пример коришћења контроле времена извршавања за поновно учитавање SNMP кеша:
zabbix_server -R snmp_cache_reload
Пример коришћења контроле времена извршавања за покретање housekeeper-а:
zabbix_server -c /usr/local/etc/zabbix_server.conf -R housekeeper_execute
Примери коришћења контроле извршавања за промену нивоа логовања:
# Повећање нивоа логовања свих процеса: zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase
# Повећање нивоа логовања другог процеса анкетирања: zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase=poller,2
# Повећање нивоа логовања процеса са PID 1234: zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_increase=1234
# Смањење нивоа логовања свих http процеса анкетирања: zabbix_server -c /usr/local/etc/zabbix_server.conf -R log_level_decrease="http poller"
Пример подешавања одлагања отказа HA на минимум 10 секунди:
zabbix_server -R ha_set_failover_delay=10s
Zabbix сервер је дизајниран да ради као корисник који није root. Покреће се као било који не root корисник под којим је покренут. Тако да можете да покренете сервер као било који корисник без икаквих проблема.
Ако покушате да га покренете као 'root', он ће се пребацити на чврсто кодираног корисника ''zabbix'', који мора бити присутан на вашем систему. Можете да покренете сервер само као 'root' ако у складу са тим измените параметар 'AllowRoot' у конфигурационој датотеци сервера.
Ако се Zabbix сервер и агент покрећу на истој машини, препоручује се да користите другог корисника за покретање сервера него за покретање агента. Иначе, ако се оба покрећу као исти корисник, агент може приступити конфигурационој датотеци сервера и било који корисник на нивоу администратора у Zabbix-у може прилично лако да преузме, на пример, лозинку базе података.
Погледајте опције конфигурациона датотека за детаље о конфигурисању zabbix_server.
Скрипте се користе за аутоматско покретање/заустављање Zabbix процеса током покретања/гашења система. Скрипте се налазе у директоријуму misc/init.d.
agent poller
- асинхрони процес поллера за пасивне провере са радном нитиalert manager
- менаџер реда упозорењаalert syncer
- писац базе података упозорењаalerter
- процес за слање обавештењаavailability manager
- процес за ажурирања доступности домаћинаpreviewer poller
- полер за провере ставки прегледачаconfiguration syncer
- процес за управљање кеш меморијом конфигурационих податакаconfiguration syncer worker
- процес за решавање и синхронизацију вредности корисничких макроа у именима ставкиconnector manager
- процес менаџера за конектореconnector worker
- процес за руковање захтевима од менаџера конектораdiscovery manager
- процес менаџера за откривање уређајаdiscovery worker
- процес за руковање задацима откривања од менаџера откривањаescalator
- процес за ескалацију акцијаha manager
- процес за управљање високом доступношћуhistory poller
- процес за руковање израчунатим проверама које захтевају везу са базом податакаhistory syncer
- писац базе података у историјиhousekeeper
- процес за уклањање старих историјски подациhttp agent poller
- асинхрони процес поллера за HTTP провере са радном нитиhttp poller
- полер за веб праћењеicmp pinger
- полер за icmpping провереinternal poller
- полер за интерне провереipmi manager
- IPMI менаџер полераipmi poller
- полер за IPMI провереjava poller
- полер за Java провереlld manager
- менаџер процеса задатака откривања ниског нивоаlld worker
- радни процес задатака откривања ниског нивоаodbc poller
- поллер за ODBC провереpoller
- нормалан поллер за пасивне провереpreprocessing manager
- менаџер задатака претходне обраде са радним нитима претходне обрадеpreprocessing worker
- нит за претходну обраду податакаproxy poller
- полер за пасивне проксијеproxy group manager
- менаџер балансирања оптерећења проксија и високе доступностиreport manager
- менаџер заказаних задатака генерисања извештајаreport writer
- процес за генерисање заказаних извештајиself-monitoring
- процес за прикупљање интерне статистике сервераservice manager
- процес за управљање услугама примањем информација о проблемима, ознакама проблема и опоравку од проблема из синхронизатора историје, менаџера задатака и менаџера упозорењаsnmp poller
- асинхрони процес поллера за SNMP провере са радном нити (само ставке walk[OID]
и get[OID]
)snmp trapper
- трапер за SNMP замкеtask manager
- процес за даљинско извршавање задатака које захтевају друге компоненте (нпр. затварање проблема, потврђивање проблема, вредност ставке за проверу сада, функционалност даљинске команде)timer
- тајмер за обраду одржавањаtrapper
- трапер за активне провере, замке, прокси комуникацијуtrigger housekeeper
- процес за уклањање проблема генерисаних окидачима који су обрисаниunreachable poller
- полер за недоступне уређајеvmware collector
- VMware колектор података одговоран за прикупљање података из VMware услуга.Датотека дневника сервера може се користити за посматрање ових типова процеса.
Различите врсте Процеси Zabbix сервера могу се пратити помоћу zabbix[process,<type>,<mode>,<state>] internalставка.
The history syncer process title displays detailed statistics about history syncer transactions:
205182 ? S 0:00 zabbix_server: history syncer #2 [processed 0 values, 0+0 triggers in 0.000021 (0.000000,0.000000,0.000000,0.000000,0.000000) sec, idle 1 sec]
205183 ? S 0:00 zabbix_server: history syncer #3 [processed 18 values, 7+0 triggers in 0.002612 (0.001108,0.000000,0.000000,0.001208,0.000014) sec, idle 1 sec]
205184 ? S 0:00 zabbix_server: history syncer #4 [processed 0 values, 0+0 triggers in 0.000027 (0.000000,0.000000,0.000000,0.000000,0.000000) sec, idle 1 sec]
In "A+B triggers":
The timings, in "processed...in N (<timings>) sec", are:
Због безбедносних захтева и критичне природе рада сервера, UNIX је једини оперативни систем који може константно да пружи потребне перформансе, толеранцију на грешке и отпорност. Zabbix ради на водећим верзијама на тржишту.
Zabbix сервер је тестиран на следећим платформама:
Zabbix може да ради и на другим оперативним системима сличним Unix-у.
Имајте на уму да сервер захтева UTF-8 локализацију тако да се неке текстуалне ставке могу исправно тумачити. Већина модерних система сличних Unix-у има UTF-8 локализацију као подразумевану, међутим, постоје неки системи где ће то можда морати да се посебно подеси.