Zabbix сервер је централни процес Zabbix софтвера.
Сервер врши анкетирање и хватање података, израчунава окидаче, шаље обавештења корисницима. То је централна компонента којој Zabbix агенти и проксији извештавају податке о доступности и интегритету система. Сервер може сам даљински да проверава мрежне услуге (као што су веб сервери и сервери поште) користећи једноставне провере сервиса.
Сервер је централно спремиште у коме се чувају сви конфигурациони, статистички и оперативни подаци, а ентитет у Zabbix-у ће активно упозоравати администраторе када се јављају проблеми у било ком од надгледаних система.
Функционисање основног Zabbix сервера подељено је на три различите компоненте; то су: Zabbix сервер, веб кориснички интерфејс и складиште базе података.
Све информације о конфигурацији за Zabbix се чувају у бази података, са којом и сервер и веб кориснички интерфејс комуницирају. На пример, када креирате нову ставку користећи веб кориснички интерфејс (или API) додаје се у табелу ставки у бази података. Затим, отприлике једном у минуту Zabbix сервер ће питати табелу ставки за листу активних ставки која се затим чува у кешу унутар Zabbix сервера. Због тога може проћи и до два минута да се све промене направљене у Zabbix корисничком интерфјсу прикажу у одељку са најновијим подацима.
Zabbix сервер ради као демон процес. Сервер се може покренути извршавањем:
Ово ће радити на већини GNU/Linux система. На другим системима ће можда бити потребно да покренете:
Слично, за заустављање/поновно покретање/преглед статуса користите следеће команде:
systemctl stop zabbix-server systemctl restart zabbix-server systemctl 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 сервера са параметрима командне линије:
Опције контроле времена рада:
Option | Description | Target |
---|---|---|
config_cache_reload | Поново учитај кеш конфигурације. Игнорише се ако се кеш тренутно учитава. | |
diaginfo[=<section>] | Прикупите дијагностичке информације у датотеци евиденције сервера. | ** historycache** - статистика кеша историје valuecache - статистика кеша вредности preprocessing - статистика менаџера за предобраду ** alerting** - статистика менаџера упозорења ** lld** - статистика менаџера LLD закључавања - листа мутекса (је празан на * BSD* системима) конектор - статистика за конекторе са највећим редом |
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 | Поново учитај тајне из Vault-а. | |
service_cache_reload | Поново учитај кеш менаџера услуга. | |
snmp_cache_reload | Поново учитај SNMP кеш, обриши SNMP својства (време мотора, покретања мотора, ID мотора, креденцијале) за све домаћине. | |
housekeeper_execute | Покрените процедуру домаћинство. Игнорише се ако је поступак одржавања домаћинства тренутно у току. |
|
trigger_housekeeper_execute | Започните процедуру одржавања окидача за сервиси да бисте уклонили проблеме изазване окидачима који су у међувремену избрисани, укључујући проблеме са услугама изазване таквим проблемима (који се сматрају решеним у време одржавања система корисника). Имајте на уму да, све док се не покрене процедура одржавања, проблеми узроковани сада избрисаним окидачима могу и даље да генеришу проблеме са услугама и да их додељују на услуге. Ако ваше подешавање укључује много услуга правила за израчунавање статуса на основу често откривених/неоткривених окидача, размислите о повећању учесталости процедуре одржавања окидача прилагођавањем ProblemHousekeepingFrequency параметра конфигурације сервера. Игнорише се ако је поступак одржавања окидача тренутно у току. |
|
log_level_increase[=<target>] | Повећава ниво евиденције, утиче на све процесе ако циљ није наведен. Није подржано на * BSD* системима. |
process type* * – Сви процеси одређеног типа (нпр., полер) Погледајте све типове процеса сервера. process type,N** – Процес тип и број (нпр., полер,3) ** pid** – идентификатор процеса (1 до 65535). За веће вредности наведите циљ као 'process type,N'. |
log_level_decrease[=<target>] | Смањи ниво евиденције, утиче на све процесе ако циљ није наведен. Није подржано на BSD системима. |
|
prof_enable[=<target>] | Омогућава профилисање. Утиче на све процесе ако циљ није наведено. Омогућено профилисање пружа детаље о свим rwlocks/mutexes према називу функције. |
process type – Сви процеси наведеног типа (нпр. синхронизатор историје) Подржани типови процеса као циљеви профилисања: алармант, менаџер упозорења , менаџер доступности, синхронизатор конфигурације, менаџер откривања, ескалатор, испитивање историје, синхронизатор историје, housekeeper, http полер, icpm пингер, ipmi менаџер, ipmi полер, java полер, lld менаџер, lld радник, odbc полер, полер, менаџер за претходну обраду, радник за претходну обраду, прокси полер, самонадгледање, менаџер услуга, snmp трапер, менаџер задатака, тајмер, трапер, недоступни полер, vmware колектор process type,N - Тип и број процеса (нпр., синхронизатор историје,1) ** pid** - идентификатор процеса (1 до 65535). За веће вредности наведите циљ као 'process type,N'. обим - rwlock , mutex , processing се могу користити са типом процеса и бројем (нпр., синхронизатор историје,1, обрада) или сви процеси типа (нпр., синхронизација историје, rwlock) |
prof_disable[=<target>] | Онемогући профилисање. Утиче на све процесе ако циљ није наведен. |
тип процеса - Сви процеси наведеног типа (нпр., синхронизатор историје) Подржани типови процеса као циљеви профилисања: погледајте prof_enable * *process type,N – Тип и број процеса (нпр., синхронизатор историје,1) pid** – Идентификатор процеса (1 до 65535). За веће вредности наведите циљ као 'process type,N'. |
Пример коришћења контроле времена извршавања за поновно учитавање кеша конфигурације сервера:
Примери коришћења контроле времена извршавања за поновно учитавање конфигурације проксија:
# Поновно учитавање конфигурације свих проксија:
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-а кеш:
Када се SNMPv3 интерфејс ажурира путем Zabbix корисничког интерфејса, Zabbix ће у већини случајева аутоматски поново учитати нове SNMPv3 креденцијале за тај интерфејс; користите -R snmp_cache_reload
само ако испитивање и даље не успева након промене креденцијала (на пример, због недоследности engineBoots/engineID или уређаја који нису RFC), или када је потребно да се глобални SNMP кеш обрише ради решавања проблема.
Пример коришћења контроле времена извршавања за покретање извршавања housekeeper-а:
Примери коришћења контроле времена извршавања за промену нивоа логовања:
# Повећајте ниво логовања свих процеса:
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"
Пример подешавања кашњења пребацивања велике количине на минимум 10 секунди:
Zabbix сервер је дизајниран да ради као корисник који није root. Покренуће се као било који корисник који није root без икаквих проблема. Дакле, можете покренути сервер као било који корисник који није root без икаквих проблема.
Ако покушате да га покренете као 'root', пребациће се на унапред дефинисаног 'zabbix' корисника, који мора бити присутан на вашем систему. Сервер можете покренути као 'root' само ако сходно томе измените параметар 'AllowRoot' у конфигурационој датотеци сервера.
Ако се Zabbix сервер и агент покрећу на истој машини, препоручује се да се користи други корисник за покретање сервера и други за покретање агента. У супротном, ако се оба покрећу као исти корисник, агент може приступити конфигурационој датотеци сервера и сваки корисник са администраторским нивоом у Zabbix-у може прилично лако да преузме, на пример, лозинку базе података.
Погледајте опције конфигурациона датотека за детаље о конфигурисању zabbix_server.
Скрипте се користе за аутоматско покретање/заустављање Zabbix процеса током покретања/гашења система. Скрипте се налазе у директоријуму misc/init.d.
agent poller
- асинхрони процес полера за пасивне провере са радном нитиalert manager
- менаџер реда упозорењаalert syncer
- програм за уписивање у базу података упозорењаalerter
- процес за слање обавештењаavailability manager
- процес за ажурирања доступности домаћинаbrowser 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>] интерни ставка.
Због безбедносних захтева и критичне природе рада сервера, UNIX је једини оперативни систем који може константно да пружи потребне перформансе, толеранцију на грешке и отпорност. Zabbix ради на водећим верзијама на тржишту.
Zabbix сервер је тестиран на следећим платформама:
Zabbix може да ради и на другим Unix-оликим системима.
Обратите пажњу да сервер захтева UTF-8 локализацију тако да се неке текстуалне ставке могу исправно тумачити. Већина модерних Unix-оликих система има UTF-8 локализацију као подразумевану, међутим, постоје неки системи где ће то можда морати да се посебно подеси.