В стандартном репозитории CentOS пакетов Zabbix увы нет, тч нам остаются два варианта, либо собирать из исходников, либо искать уже готовые сборки. В этой статье я опишу установку Zabbix 1.8.3 (актуальная версия на момент написания статьи) из репозитория NixTime.

C 11.06.2011 репозиторий NixTime не работает, поэтому предлагаю собирать zabbix самостоятельно по статье Сборка Zabbix 1.8 в CentOS 5.6. А эта статья в ближайшее время будет переведена в архив.

1. Установка Zabbix 1.8.3

Устанавливаем fping с сайта http://packages.sw.be, он понадобится для удовлетворения зависимостей пакета zabbix-server-mysql

[root@localhost ~]# wget http://packages.sw.be/fping/fping-2.4-1.b2.2.el5.rf.i386.rpm
[root@localhost ~]# rpm -i fping-2.4-1.b2.2.el5.rf.i386.rpm
warning: fping-2.4-1.b2.2.el5.rf.i386.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6

Подключаем репозиторий NixTime

[root@localhost ~]# rpm -ivh http://nixtime.ru/repository/centos/5/x86_64/centnixtime-release-5-5.el5.noarch.rpm

Устанавливаем Zabbix и недостающие пакеты

[root@localhost ~]# yum install zabbix.i386 zabbix-agent.i386 zabbix-server-mysql.i386 zabbix-web.i386
[root@localhost ~]# yum install php-mbstring.i386

2. Установка и настройка mysql-server

Устанавливаем mysql-server и библиотеку php-mysql.

[root@localhost ~]# yum install mysql-server php-mysql

Добавляем mysql-server в автозапуск и запускаем.

[root@localhost ~]# chkconfig mysqld on
[root@localhost ~]# service mysqld start

Делаем первоначальную настройку mysql при помощи скрипта mysql_secure_installation

[root@localhost] mysql_secure_installation
Enter current password for root (enter for none):
Set root password? [Y/n] Y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Создаем базу данных для zabbix-server

[root@localhost var]# mysql -u root -p
Enter password:
mysql> create database zabbix;
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbixpassword';
mysql> FLUSH PRIVILEGES;
mysql> QUIT;

Импортируем первоначальные настройки и шаблоны. (Пути указаны с учетом текущей версии zabbix 1.8.3)

mysql -u root -p zabbix < /usr/share/doc/zabbix-server-mysql-1.8.3/create/schema/mysql.sql
mysql -u root -p zabbix < /usr/share/doc/zabbix-server-mysql-1.8.3/create/data/data.sql
mysql -u root -p zabbix < /usr/share/doc/zabbix-server-mysql-1.8.3/create/data/images_mysql.sql

3. Настройка zabbix

Открываем для редактирования конфиг zabbix-сервера /etc/zabbix/zabbix_server.conf, здесь нам понадобится задать параметры соединения с сервером баз данных.

# Хост базы данных
DBHost=localhost
# Имя базы данных
DBName=zabbix
# Пользователь БД
DBUser=zabbix
# Пароль пользователя БД, меняем password на наш пароль
DBPassword=zabbixpassword

Точно также задаем параметры соединения с БД в файле /etc/zabbix/web/zabbix.conf.php

$DB["TYPE"]             = 'MYSQL';
$DB["SERVER"]           = 'localhost';
$DB["PORT"]             = '0';
$DB["DATABASE"]         = 'zabbix';
$DB["USER"]             = 'zabbix';
$DB["PASSWORD"]         = 'zabbixpassword';
$ZBX_SERVER             = 'localhost';
$ZBX_SERVER_PORT        = '10051';
$ZBX_SERVER_NAME        = '';

Версиях zabbix 1.6 из rpmforge для centos эти параметры можно задать во время установки, но в версии от NixTime увы приходится немножко потанцевать с бубном. Без правильной настроики zabbix.conf.php веб-интерфейс установщика просто не стартует, а если все в порядке то перед началом стандартной установки просит ввести логин admin и пароль zabbix.

Итак переходим к настройке php, думаю лучше сделать это сразу чем откладывать до шага 3 веб-интерфейса установки.

max_execution_time = 300
post_max_size = 16M
max_input_tine = 300
date.timezone = Europe/Moscow

Включаем в автозагрузку и запускаем сервисы apache, zabbix-server, zabbix-agent

[root@localhost zabbix]# chkconfig httpd on
[root@localhost zabbix]# service httpd start
[root@localhost zabbix]# chkconfig zabbix-server on
[root@localhost zabbix]# chkconfig zabbix-agent on
[root@localhost zabbix]# service zabbix-server start
[root@localhost zabbix]# service zabbix-agent start

Теперь открываем в браузере http://адрес.нашего.сервера/zabbix/setup.php, нажимаем кнопку «Login», а затем вводим логин admin и пароль zabbix

И переходим к стандартной настройке веб-интерфейса, т.е. со всем соглашаемся и нажимаем кнопку «Далее». Если PHP правильно настроен, то на третьем шаге «3. Check of pre-requisites» мы увидим следующее окно.

Четвертым шагом «4. Configure DB connection», не смотря на то что мы уже настроили zabbix.conf.php, нам придется еще раз ввести данные для подключения к базе mysql и нажать кнопку «Test connection».

Все установку можно считать завершенной.

15 Коммент. : “Установка Zabbix 1.8 в CentOS 5.5”

  1. Спасибо. Первоначальный этап освоения сделан, осталось дальше углубляться в настройку хостов и сервисов.

  2. Ser пишет:

    +500
    спс тебе :)

  3. Saykhan пишет:

    Большое спасибо! Очень выручил)))везде бы так)я-то думал, что у меня одного такая ошибка выходит из-за того, что я что-то сделал не так…еще раз большое спасибо!

  4. Masty пишет:

    [root@test zabbix-1.8.4]# chkconfig –add zabbix_server
    сервис zabbix_server не поддерживает chkconfig

    Что делать?

  5. Alsigned пишет:

    @Masty
    Привет.

    Если chkconfig при добавлении сервиса пишет что сервис не поддерживается – значит заголовок скрипта запуска-остановки сервиса не содержит необходимых для работы chkconfig параметров.

    Открываем файл скрипта (для Zabbix в CentOS 5.5 это /etc/init.d/zabbix-server) и после строки #!/bin/sh добавляем следущие строчки:

    #
    # chkconfig: – 85 15
    # description: ZABBIX server daemon

    На сколько я помню строчки чувствительны к пробелам.

  6. sidor пишет:

    А я в такой ситуации иду в репозиторий федоры rawhide, беру там src.rpm и пересобираю под центосью. Минус конечно в автоматизации обновления, но зато минимальны донастройки и лучшая совместимомть с системой (типа правки инит-скрипта).

  7. Alsigned пишет:

    @sidor
    Совместимость с системой вопрос очень растяжимый:
    1. Линки ln -s на различные .so делать не надо
    2. Сервис каждые два дня перезапускать не нужно.
    3. Ошибки в логи не валит.
    Значит совместимый ) По-моему так.

    Отличие от установки Zabbix 1.6 заключается всего ничего в правке /etc/zabbix/web/zabbix.conf и добавлении сервисов в автозапуск.

    Отказ от обновления через yum для 2-3 серверов не вызывает трудностей, но кода у тебя их за 20 – попробуй-ка обнови на каждом агента.

  8. n0mad пишет:

    Спасибо за статью. Поставилось без вопросов, вот еще вспомнить-бы как настраивать.
    Для начала тупо пинговать локальные и инетовые хосты/

  9. Alsigned пишет:

    @n0mad
    Желаю успехов в настройке.

    Главное не забыть про шаблоны – в них вся правда ;)

  10. Vladimir пишет:

    Доброго времни суток, установил все как нужно по статье, все но тока когда перехжу к установке непосредсвенно самого забикса то выдает это

    mysql_connect() [function.mysql-connect]: Access denied for user ‘zabbix’@'localhost’ (using password: YES)[/usr/share/zabbix/include/db.inc.php:58]

    подскажить или поссоветуйте что не так

  11. Alsigned пишет:

    Привет, @Vladimir

    Эта ошибка говорит о несоответствии пароля заданного в /usr/share/zabbix/include/db.inc.php (который в свою очередь берет его из /etc/zabbix/web/zabbix.conf.php) и пароля для пользователя zabbix в mysql.
    Можно задать пароль еще раз

    mysql -u root -p
    mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbixpassword';
    mysql> FLUSH PRIVILEGES;
    mysql> QUIT;

    Заданный пароль должен совпадать с параметром $DB["PASSWORD"]из /etc/zabbix/web/zabbix.conf.php

  12. Vladimir пишет:

    Спасибо помогло поиду ковырять дальше

  13. Andrey пишет:

    Здравствуйте, посоветуйте что делать?
    В конце установки на странице авторизации получил ошибку
    DB type is not set.

    Содержание /etc/zabbix/web/zabbix.conf.php брал тут

    Залез в логи, там – Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’

  14. Alsigned пишет:

    Привет, Андрей.

    Как-то репозиторий NixTime не работал в течении месяца и за это время я полностью отказался от него. И стал собирать zabbix для CentOS сам – вот статейка http://www.alsigned.ru/?p=1531.

    Твоя ошибка говорит о том что mysql-server не запущен, проверь для начала:
    service mysql status

  15. Таня пишет:

    Ошибка DB type is not set, SQL запущен, в чем может быть проблема и куда смотреть?

Трекбеки/Пинги

  1. CentOS 5.5 Zabbix 1.8.3 | Unix Blog - [...] Блогу Админа-Маньяка Так как в стандартном репозитории старая версия, [...]

Оставить комментарий