3 Инсталација из извора

Можете добити најновију верзију Zabbix-а тако што ћете је компајлирати са извора.

Корак по корак водич за инсталирање Zabbix-а из извора је обезбеђен овде.

1 Инсталирање Zabbix демона

1 Преузмите изворну архиву

Идите на Zabbix страницу за преузимање и преузмите изворну архиву. Након преузимања, извуците изворе, покретањем:

tar -zxvf zabbix-7.0.0.tar.gz

Унесите исправну верзију Zabbix-а у команду. Мора да одговара називу преузете архиве.

2 Креирање корисничког налога

За све процесе Zabbix демона, непривилеговани корисник је неопходан. Ако је Zabbix демон покренут од стране налога непривилегованог корисника, радиће под тим корисником.

Међутим, ако се демон покрене са 'root' налогом, он ће се пребацити на 'zabbix' кориснички налог, који мора бити присутан. За стварање таквог корисничког налога (у сопственој групи, "zabbix"),

на систему заснованом на RedHat-у, покрените:

groupadd --system zabbix useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix

на систему заснованом на Debian-у, покрените:

addgroup --system --quiet zabbix adduser --quiet --system --disabled-login --ingroup zabbix --home /var/lib/zabbix --no-create-home zabbix

Zabbix процесима није потребан home директоријум, због чега не препоручујемо да га креирате. Међутим, ако користите неке функције које то захтевају (нпр. чување MySQL креденцијала у $HOME/.my.cnf) можете га креирати користећи следеће команде.

На системима заснованим на RedHat-у покрените:

mkdir -m u=rwx,g=rwx,o= -p /usr/lib/zabbix chown zabbix:zabbix /usr/lib/zabbix

На системима заснованим на Debian-у покрените:

mkdir -m u=rwx,g=rwx,o= -p /var/lib/zabbix chown zabbix:zabbix /var/lib/zabbix

За Zabbix инсталацију корисничког интерфејса није потребан посебан кориснички налог.

Ако се Zabbix сервер и агент покрећу на истој машини, препоручује се коришћење различитих корисничких налога. У супротном, ако се оба покрећу као исти корисник, агент може да приступи конфигурационој датотеци сервера и било ком кориснику на нивоу администратора у Zabbix-у може прилично лако да преузме, на пример, лозинку базе података.

Покретање Zabbix-а као root, bin или било који други налог са специјалним правима представља безбедносни ризик.

3 Креирање Zabbix базе података

За Zabbix сервер и прокси демоне, као и Zabbix кориснички интерфејс, а потребна је база података. Није потребно покренути Zabbix агента.

SQL обезбеђене скрипте за креирање шеме базе података и уметање скупа података. Zabbix прокси бази података треба само шема док база података Zabbix сервера захтева такође скуп података на врху шеме.

Након што сте креирали Zabbix базу података, пређите на следеће кораке компајлирање Zabbix-а.

4 Конфигурисање изворног кода

За изградњу Zabbix сервера, Zabbix проксија или Zabbix агента неопходан јеC99 са GNU екстензијама. Ова верзија се може експлицитно навести постављањем CFLAGS="-std=gnu99":

export CFLAGS="-std=gnu99"

Ако инсталирате из Zabbix Git репозиторијума, потребно је прво покренути:

./bootstrap.sh

Када конфигуришете изворни код за Zabbix сервер или прокси, морате да наведите тип базе података који ће се користити. Може бити само један тип базе података компајлиран са серверским или прокси процесом у исто време.

Да бисте видели све подржане опције конфигурације, унутар екстрахованог директоријума Zabbix изворног кода покрените:

./configure --help

Да бисте конфигурисали изворе кода за Zabbix сервер и агента, можете покренути нешто као:

./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi

Да бисте конфигурисали изворе кодова за Zabbix сервер (са PostgreSQL-ом итд.), можете покренути:

./configure --enable-server --with-postgresql --with-net-snmp

Да бисте конфигурисали изворе кодова за Zabbix прокси (са SQLite-ом итд.), можете покренути:

./configure --prefix=/usr --enable-proxy --with-net-snmp --with-sqlite3 --with-ssh2

Да бисте конфигурисали изворе кодова за Zabbix агента, можете покренути:

./configure --enable-agent

или, за Zabbix агент 2:

./configure --enable-agent2

Конфигурисано Go окружење са тренутно подржаном Go верзијом је потребно за изградњу Zabbix агента 2. Погледајте go.dev за инструкције за инсталацију.

Напомене о опцијама компајлирања:

  • Командно-линијски алати zabbix_get и zabbix_sender су компајлирани ако се користи --enable-agent опција.
  • Опције конфигурације --with-libcurl и --with-libxml2 су потребне за надгледање виртуелних машина; --with-libcurl је такође потребан за SMTP аутентификацију и web.page.* Zabbix агент ставке. Имајте на уму да је cURL 7.20.0 или новији обавезан за опцију --with-libcurl конфигурације.
  • Zabbix се увек компајлира са PCRE библиотеком; њено инсталирање није опционо. --with-libpcre=[DIR] омогућава навођење одређеног директоријума инсталације, показујући на одређени директоријум за основну инсталацију, уместо претраживања стандардних локација за libpcre датотеке.
  • Можете користити заставицу --enable-static за статично повезивање библиотека. Ако планирате да дистрибуирате компајлиране бинарне датотеке између различитих сервера, морате користити ову заставицу да би ове бинарне датотеке функционисале без потребе библиотеке. Имајте на уму да --enable-static не ради у Solaris.
  • Коришћење опције --enable-static се не препоручује приликом компајлирања сервера. Да бисте компајлирали сервер статички, морате имати статичку верзију сваке потребне екстерне библиотеке. Не постоји строга провера тога у скрипти за конфигурисање.
  • Додајте опциону путању до MySQL конфигурационе датотеке --with-mysql=/<path_to_the_file>/mysql_config да изаберете жељену MySQL клијентску библиотеку када постоји потреба за њеном употребом која се не налази на подразумеваној локацији. Корисно је када постоји инсталирано неколико верзија MySQL-а или када се инсталира MariaDB заједно са MySQL-ом на истом систему.
  • Користите --with-oracle заставицу да одредите локацију OCI API.-ја.

Ако ./configure не успе због недостајућих библиотека или неких других разлога, погледајте датотеку config.log за више детаља о грешци. На пример, ако недостаје libssl, непосредна порука о грешци може бити нетачна:

checking for main in -lmysqlclient... no
       configure: error: Not found mysqlclient library

Док config.log има детаљнији опис:

/usr/bin/ld: cannot find -lssl
       /usr/bin/ld: cannot find -lcrypto

Погледајте такође:

5 Направите и инсталирајте све

Ако инсталирате из Zabbix Git репозиторијума, потребно је прво покренути:

$ make dbschema

make install

Овај корак треба да се покрене као корисник са довољним дозволама (обично 'root', или коришћењем sudo).

Покретање make install ће подразумевано инсталирати бинарне датотеке демона (zabbix_server, zabbix_agentd, zabbix_proxy) in /usr/local/sbin и бинарне датотеке клијента (zabbix_get, zabbix_sender) in /usr/local/bin.

Да бисте навели другачију локацију него/usr/local, користите --prefix кључ у претходном кораку конфигурисања извора, на пример --prefix=/home/zabbix. У овом случају ће бити инсталирани демон бинарне датотеке под <prefix>/sbin, док услужни програми под <prefix>/bin. Страница упутства ће бити инсталиране под <prefix>/share.

6 Прегледајте и уредите конфигурационе датотеке
  • уредите конфигурациону датотеку Zabbix агента /usr/local/etc/zabbix_agentd.conf

Морате да конфигуришете ову датотеку за сваког домаћина са инсталираним zabbix_agentd.

Морате навести Zabbix сервер IP адресу у датотеци. Везе са других домаћина ће бити одбијене.

  • уредите конфигурациону датотеку Zabbix сервера /usr/local/etc/zabbix_server.conf

Морате навести име базе података, корисника и лозинку (ако их користите).

Остали параметри ће вам одговарати са својим подразумеваним вредностима ако јесте мала инсталација (до десет надгледаних домаћина). Требало би да промените подразумеване параметри ако желите да максимизирате перформансе Zabbix сервера (или прокси) ипак.

  • ако сте инсталирали Zabbix прокси, уредите конфигурациону датотеку проксија /usr/local/etc/zabbix_proxy.conf

Морате навести IP адресу сервера и име домаћина проксија (морају бити познати серверу), као и име базе података, корисника и лозинке (ако користите било који).

Са SQLite-ом мора бити специфирна комплетна путања до датотеке базе података; DB корисник и лозинка нису потребни.

7 Покрените демоне

Покрените zabbix_server на страни сервера.

zabbix_server

Уверите се да ваш систем дозвољава алокацију 36MB (или мало више) заједничке меморије, иначе се сервер можда неће покренути, а ви ћете видети "Cannot allocate shared memory for <type of cache>." у лог датотеци сервера. Ово се може десити на FreeBSD, Solaris 8.

Покрените zabbix_agentd на свим надгледаним машинама.

zabbix_agentd

Уверите се да ваш систем дозвољава доделу 2MB заједничке мемориеа, иначе се агент можда неће покренути и видећете "Cannot allocate shared memory for collector." у лог датотеци агента. Ово се може догодити на Solaris-у 8.

Ако сте инсталирали Zabbix прокси, покрените zabbix_proxy.

zabbix_proxy

2 Инсталирање Zabbix веб интерфејса

Копирање PHP датотека

Zabbix кориснички интерфејс је написан у PHP-у, тако да је за његов рад потребан веб сервер са подржаним PHP-ом. Инсталација се врши једноставним копирањем PHP датотеке из директоријума корисничког интерфејса у директоријум HTML докумената веб сервера.

Заједничке локације директоријума HTML докумената за Apache веб сервере укључују:

  • /usr/local/apache2/htdocs (подразумевани директоријум када инсталирате Apache из извора)
  • /srv/www/htdocs (OpenSUSE, SLES)
  • /var/www/html (Debian, Ubuntu, Fedora, RHEL)

Препоручује се коришћење поддиректоријума уместо HTML корена. За креирање поддиректоријум и копирање Zabbix датотеке корисничких интерфејса у њега, извршите следеће команде, замењујући одговарајући директоријум:

mkdir <htdocs>/zabbix
       cd ui
       cp -a . <htdocs>/zabbix

Ако планирате да користите било који други језик осим енглеског, погледајте Инсталација додатних језика за кориснички интерфејс за инструкције.

Инсталирање корисничког интерфејса

Погледајте Инсталацију веб интерфејса страницу за информације о чаробњаку за инсталацију Zabbix корисничког интерфејса.

3 Инсталирање Java gateway-а

Потребно је инсталирати Java gateway само ако желите да надгледате JMX апликације. Java gateway је лаган и не захтева базу података.

Да инсталирате из извора, прво преузмите и извуците изворну архиву.

Да бисте компајлирали Java gateway, покрените скрипту ./configure са --enable-java опцијом. Препоручљиво је да наведете --prefix опцију да захтевате путању инсталације која није подразумевана /usr/local, јер ће инсталирање Java gateway-а створити цело стабло директоријума, не само једну извршну датотеку.

./configure --enable-java --prefix=$PREFIX

Да бисте компајлирали и спаковали Java gateway у JAR датотеку, покрените make. Напомена да ће вам за овај корак бити потребни извршна датотека javac и jar у вашој путањи.

make

Сада имате датотеку zabbix-java-gateway-$VERSION.jar у src/zabbix_java/bin. Ако вам одговара покретање Java gateway-а из src/zabbix_java у директоријуму дистрибуције, онда можете да пређите на упутства за конфигурисање и покретање Java gateway. У супротном, проверите да ли имате довољно привилегија и покрените make install.

make install

Идите на подешавање за више детаља о конфигурисању и покретању Java gateway-а.

4 Инсталирање Zabbix веб сервиса

Инсталирање Zabbix веб сервиса је потребно само ако желите да користите планиране извештаје.

Да инсталирате из извора, прво преузмите и извуците изворну архиву.

Да бисте компајлирали Zabbix веб сервис, покрените скрипту ./configure са --enable-webservice опцијом.

Конфигурисана верзија Go 1.13+ окружење је потребно за изградњу Zabbix веб сервиса.

Покрените zabbix_web_service на машини, где је веб сервис инсталиран:

zabbix_web_service

За више детаља идите на подешавање. о конфигурисању генерисања планираних извештаја.