вторник, 16 февраля 2010 г.

Установка Zabbix 1.6.1 на RHEL 5 (CentOS 5)

На момент публикации статьи уже доступна версия zabbix 1.8, но тем не менее установка и настройка остаются актуальными.
_______________________________________________________________________________________________________

Поднимаем Red Hat Enterprise Linux 5 (CentOS 5) с минимальным набором пакетов (базовая установка) 

Для начала отредактируйте время:

date 111815272008 (Tue Nov 18 15:27:00 MSK 2008)

Установим необходимые пакеты:

yum -y install ntp php php-bcmath php-gd php-mysql httpd mysql gcc mysql-server mysql-devel net-snmp net-snmp-utils net-snmp-devel net-snmp-libs curl-devel make

Запускаем сервер времени. Это необходимо для синхронизации времени между нашими устройствами.

/etc/init.d/ntpd start

Скачаем пакет fPing, и установим его:

wget http://dag.wieers.com/rpm/packages/fping/fping-2.4-1.b2.2.el5.rf.i386.rpm

rpm -Uvh fping-2.4-1.b2.2.el5.rf.i386.rpm

chmod 7555 /usr/sbin/fping

Создаем пользователя zabbix.

useradd zabbix

Скачиваем zabbix и распакуем его.

wget http://superb-east.dl.sourceforge.net/sourceforge/zabbix/zabbix-1.6.1.tar.gz

tar -xzvf zabbix-1.6.1.tar.gz

Стартуем MySQL, меняем пароль root-а.

/etc/init.d/mysqld start

/usr/bin/mysqladmin -u root password пишемсвойновыйпароль

Коннектимся к базе используя только что созданный пароль для root. Создадим базу zabbix, присвоим необходимые привилегии для нового пользователя (zabbixmysqluser).

mysql -u root -p

mysql> CREATE DATABASE zabbix;

mysql> GRANT DROP,INDEX,CREATE,SELECT,INSERT,UPDATE,ALTER,DELETE ON zabbix.* TO zabbixmysqluser@localhost IDENTIFIED BY ‘пишемсвойновыйпароль’;

mysql> quit;

Создаем схемы таблиц:

cd zabbix-1.6.1

cat create/schema/mysql.sql | mysql -u zabbixmysqluser -pпишемсвойновыйпароль zabbix

cat create/data/data.sql | mysql -u zabbixmysqluser -pпишемсвойновыйпароль zabbix

cat create/data/images_mysql.sql | mysql -u zabbixmysqluser -pпишемсвойновыйпароль zabbix


Мы будем конфигурировать сервер с поддержкой jabber, для этого необходимо устнановить пакеты:

rpm -Uvh iksemel-1.3-1.el5.rf.i386.rpm

rpm -Uvh iksemel-devel-1.3-1.el5.rf.i386.rpm


(Если не нужна поддержка jabber, конфигурим без --with-jabber)


./configure --enable-server --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-jabber --with-libcurl

make install

make clean

Ставим агента. Компилируем с параметром -–enable-static, в дальнейшом можно будет копировать настроенного агента на другие машины без лишних телодвижении.

./configure –-enable-agent -–prefix=/usr/local/zabbix -–enable-static

make install

Добавляем порты сервера zabbix и агента в файл /etc/services

echo ‘zabbix_agent 10050/tcp’ >> /etc/services

echo ‘zabbix_trap 10051/tcp’ >> /etc/services

Копируем конфиги севера и агента в папку /etc/zabbix

mkdir /etc/zabbix

cd /zabbix-1.6.1

cp misc/conf/zabbix_agentd.conf /etc/zabbix

cp misc/conf/zabbix_server.conf /etc/zabbix

в файле /etc/zabbix/zabbix_server.conf, меняем следующие строки:

DBUser=zabbixmysqluser

DBPassword=пишемсвойновыйпароль

DBSocket=/var/lib/mysql/mysql.sock

FpingLocation=/usr/sbin/fping

в файле /etc/zabbix/zabbix_agentd.conf, меняем:

Server=127.0.0.1,Your.Zabbix.Server.IP (Здесь пишем адрес нашего Zabbix Сервера)

Hostname=EnterAUniqueHostNameForEachAgent (Здесь пишем наш Hostname)

cd /zabbix-1.6.1

cp misc/init.d/redhat/zabbix_agentd_ctl /etc/init.d/zabbix_agentd
cp misc/init.d/redhat/zabbix_server_ctl /etc/init.d/zabbix_server

в файлах /etc/init.d/zabbix_agentd и /etc/init.d/zabbix_server меняем:

BASEDIR=/usr/local/zabbix

в файле /etc/init.d/zabbix_agentd на следующей строчке после #!/bin/sh пишем:

# chkconfig: 345 95 95
# description: Zabbix Agentd

в файле /etc/init.d/zabbix_server на следующей строчке после #!/bin/sh пишем:

# chkconfig: 345 95 95
# description: Zabbix Server

Настроим автоматический запуск служб.

chkconfig –-level 345 zabbix_server on

chkconfig –-level 345 zabbix_agentd on

chkconfig –-level 345 httpd on

chkconfig –-level 345 mysqld on

chkconfig –-level 0123456 iptables off

останавливаем фаервол:

/etc/init.d/iptables stop

Инфо: либо прописываем правила на фаерволе для портов 80, 10050, и 10051.

cd /zabbix-1.6.1

cp -r frontends/php /var/www/html/zabbix

В файле /etc/php.ini, меняем:

max_execution_time = 300

date.timezone = Europe/Moscow

Инфо: Свою временную зону можно посмотреть здесь http://us2.php.net/

/etc/init.d/httpd start

chmod 777 /var/www/html/zabbix/conf

Набираем в браузере http://your.servers.name/zabbix. Проходим все этапы настроек через web интерфейс. После этого набираем:

chmod 755 /var/www/html/zabbix/conf

mv /var/www/html/zabbix/setup.php /var/www/html/zabbix/setup.php.bak

mkdir /usr/local/zabbix/bin

copy all files from /usr/local/zabbix/sbin to /usr/local/zabbix/bin

Стартуем службы сервера и агента:

/etc/init.d/zabbix_agentd start

/etc/init.d/zabbix_server start

Заходим на сервер по адресу http://your.server.name/zabbix, пользователь “admin”, пароль "zabbix".

На этом все!

P.S. Далее методом научного тыка, либо через официальную документацию.