Установка производится на систему:
# cat /etc/SuSE-release
SUSE Linux Enterprise Server 10 (i586)
VERSION = 10
Качаем нужную версию Zabbix с сайта:
http://www.zabbix.com/download.php
В этом примере используется:
Распаковываем:
# tar -zxvf zabbix-2.0.9.tar.gz
Указывайте актуальную версию.
Добавляем группу и пользователя, от которого будет запускаться агент:
# groupadd zabbix # useradd -g zabbix zabbix
Переходим в каталог с распакованными кодами Zabbix:
# cd zabbix-2.0.9/
Собираем агента:
# ./configure --enable-agent
В случае ошибки вида:
if configure: error: no acceptable C compiler found in $PATH
Установите GNU Compiler Collection:
# yast2 -i gcc
Проверяем:
# gcc --version gcc (GCC) 4.1.0 (SUSE Linux) Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
В случае проблем – ведётся лог-файл, в том же каталоге:
# less config.log
Создаём файл лога:
# touch /var/log/zabbix_agentd.log # chown zabbix:zabbix /var/log/zabbix_agentd.log
Далее – установка и настройка производится так же, как в статье CentOS: установка, настройка Zabbix-agent и добавление нового хоста в мониторинг.
Редактируем файл настроек агента:
# vim /usr/local/etc/zabbix_agentd.conf
Запускаем:
# ./src/zabbix_agent/zabbix_agentd # ps aux | grep zabbix zabbix 14244 0.0 0.0 2592 592 ? S 14:41 0:00 ./src/zabbix_agent/zabbix_agentd zabbix 14245 0.0 0.0 2592 636 ? S 14:41 0:00 ./src/zabbix_agent/zabbix_agentd zabbix 14246 0.0 0.0 2592 468 ? S 14:41 0:00 ./src/zabbix_agent/zabbix_agentd zabbix 14247 0.0 0.0 2592 468 ? S 14:41 0:00 ./src/zabbix_agent/zabbix_agentd zabbix 14248 0.0 0.0 2592 468 ? S 14:41 0:00 ./src/zabbix_agent/zabbix_agentd zabbix 14249 0.0 0.0 2600 672 ? S 14:41 0:00 ./src/zabbix_agent/zabbix_agentd
Заметьте – хотя агент был запущен от root
– он всё-равно работает под пользователем zabbix
. Что бы изменить это – в файле конфигурации надо разрешить работу от root
:
# AllowRoot=0
Удалите символ комментария и установите значение 1.
Проверяем порт:
# netstat -anp | grep 10050 tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 14309/zabbix_agentd
Устанавливаем агент как сервис.
Останавливаем работающие процессы zabbix-агента:
# killall -u zabbix
Переносим каталог с агентом в каталог /opt
в корне системы:
# cp -r src/zabbix_agent/ /opt/
В SUSE Linux Enterprise Server имеется шаблон скрипта. Копируем его, и редактируем под свои параметры:
# cp /etc/init.d/skeleton /etc/init.d/zabbix_agent
Редактируем такие поля:
### BEGIN INIT INFO # Provides: Zabbix agent service
Вместо FOO_***
объявим свою переменную, напрмиер ZAB_*
.
Указываем файл для запуска:
ZAB_BIN=/opt/zabbix_agent/zabbix_agentd test -x $ZAB_BIN || { echo "$ZAB_BIN not installed"; if [ "$1" = "stop" ]; then exit 0; else exit 5; fi; } ... ZAB_CONFIG=/usr/local/etc/zabbix_agentd.conf test -r $ZAB_CONFIG || { echo "$ZAB_CONFIG not existing"; if [ "$1" = "stop" ]; then exit 0; else exit 6; fi; } ... case "$1" in start) echo -n "Starting Zabbix agent "
Проверяем:
# /etc/init.d/zabbix_agent Usage: /etc/init.d/zabbix_agent {start|stop|status|try-restart|restart|force-reload|reload|probe}
# /etc/init.d/zabbix_agent start Starting Zabbix agent done
# ps axu | grep zabbix zabbix 14488 0.0 0.0 2596 600 ? S 15:41 0:00 /opt/zabbix_agent/zabbix_agentd zabbix 14489 0.0 0.0 2596 596 ? S 15:41 0:00 /opt/zabbix_agent/zabbix_agentd zabbix 14490 0.0 0.0 2596 476 ? S 15:41 0:00 /opt/zabbix_agent/zabbix_agentd zabbix 14491 0.0 0.0 2596 476 ? S 15:41 0:00 /opt/zabbix_agent/zabbix_agentd zabbix 14492 0.0 0.0 2596 476 ? S 15:41 0:00 /opt/zabbix_agent/zabbix_agentd zabbix 14493 0.0 0.0 2608 668 ? S 15:41 0:00 /opt/zabbix_agent/zabbix_agentd
# netstat -anp | grep zabbix tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 14488/zabbix_agentd
# service zabbix_agent status Checking for service Zabbix agent status running
# service zabbix_agent stop Shutting down Zabbix agent done
# service zabbix_agent start Starting Zabbix agent done
Устанавливаем в автозапуск (читайте блок INIT INFO
для получения иформации о runlevel
-ах для сервиса):
# insserv /etc/init.d/zabbix_agent
Проверяем:
# chkconfig -l | grep zabbix zabbix_agent 0:off 1:off 2:off 3:on 4:off 5:on 6:off
Установка завершена.