Установка Zabbix agent 4.0 в Ubuntu Server 18.04


В репозитариях Zabbix на данный момент присутствуют версии только для jessie и stretch. Если вы попробуете использовать последовательность комманд подключения репозитария от предыдущих версий на bionic:

# wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-2%2Bstretch_all.deb
# dpkg -i ./zabbix-release_4.0-2+stretch_all.deb
# apt-get update
# aptitude install zabbix-agent zabbix-get

То вы столкнетесь с конфликтом зависимостей libcurl:

The following packages have unmet dependencies:
 libcurl3 : Конфликтует: libcurl4 but 7.58.0-2ubuntu3.5 is installed
 libcurl4 : Конфликтует: libcurl3 but 7.58.0-2ubuntu2 is to be installed
The following actions will resolve these dependencies:

Следовательно, нам придется выполнить сборку Zabbix Agent версии 4 в ручную и это на само деле не сложно, просто следуйте моим инструкциям, а начинаем мы как обычно с установки необходимых для сьорки пакетов:

# apt-get install subversion build-essential autoconf automake pkg-config libpcre3-dev

Скачиваем исходные коды Zabbix версии 4.0:

# svn co svn://svn.zabbix.com/branches/4.0
# cd ./4.0/
# ./bootstrap.sh
# ./configure --enable-agent --disable-server
# make && make install

Конфигурационный файлы в этом случае будут находиться в каталоге /usr/local/etc/, нам остается только создать соответствующий SystemD юнит, взяв за основу стандартную версию из пакета. Но, еще есть одна маленькая, но важная деталь, а именно вам надо создать пользователя zabbix от имени которого все это будет работать:

# useradd zabbix

Для настройки автоматического запуска zabbix-агента создайте файл /lib/systemd/system/zabbix-agent.service следующего содержания:

[Unit]
Description=Zabbix Agent
After=syslog.target
After=network.target

[Service]
Environment="CONFFILE=/usr/local/etc/zabbix_agentd.conf"
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_agentd.pid
KillMode=control-group
ExecStart=/usr/local/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s

[Install]
WantedBy=multi-user.target

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

# systemctl enable zabbix-agent
# systemctl start zabbix-agent