среда, 11 сентября 2013 г.

Установка Zabbix 2.0 на CentOS 6.4

Zabbix является одной из самых распространённых систем мониторинга доступности сервисов и устройств в сети. Система состоит из сервера, который собирает и обрабатывает информацию, базы данных, веб-интерфейса и агента. В данной статье описано как установить и настроить Zabbix-сервер и сопутствующие службы на компьютере под управлением CentOS 6.4.

Так как Zabbix отсутствует в основных репозиториях CentOS, то прежде всего нужно подключить сторонний репозиторий, из которого будет производиться установка пакетов.
sudo -i
rpm -ivh http://repo.zabbix.com/zabbix/2.0/rhel/6/x86_64/zabbix-release-2.0-1.el6.noarch.rpm
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
После того, как Zabbix установлен переходим к установке и настройке сервера БД, роль которого будет выполнять MySQL Server.
yum install mysql-server -y
Хотя MySQL довольно популярная СУБД, но всё же настройки кодировки, используемые по умолчанию, редко бывают пригодными для использования кириллицы. Если повезёт, то будет latin1, если нет, то latin1_swedish_ci, что совсем не вариант. Если кодировка таблицы будет неверной, то в веб-интерфейсе текст на кириллице, хранящийся в базе, будет отображаться вопросительными знаками, в то время как текст, генерируемый при помощи PHP, будет отображаться корректно.


Чтобы избежать подобных неприятностей, нужно после установки задать значения некоторых параметров, добавив соответствующие строки в файл /etc/my.cnf.
nano /etc/my.cnf
[mysqld]
# utf8 encoding
character_set_server=utf8
character_set_client=utf8
collation_server = utf8_unicode_ci
init_connect="SET NAMES utf8 collate utf8_unicode_ci"
init_connect="SET NAMES utf8"
Теперь нужно добавить службу в автозагрузку и запустить
chkconfig --level 35 mysqld on
service mysqld start
Для улучшения защиты MySQL-сервера существует скрипт, который помимо смены пароля пользователя root, по умолчанию пустой, изменяет некоторые параметры доступа к серверу.
mysql_secure_installation
Enter current password for root (enter for none):
Change the 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 нужно создать базу данных и пользователя.
mysql -u root -p
Enter password:
mysql> create database zabbix;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by "пароль";
mysql> flush privileges;
mysql> quit;
После создания в базу нужно импортировать структуру и данные.
cd /usr/share/doc/zabbix-server-mysql-2.0.8/create
mysql zabbix < schema.sql -u zabbix -p
mysql zabbix < images.sql -u zabbix -p 
mysql zabbix < data.sql -u zabbix -p
Это всё, что необходимо для настройки MySQL-сервера. Если MySQl-сервер уже был установлен и настроен ранее, а кодировка не была изменена в настройках на utf8, то после импорта структуры и данных нужно выполнить небольшой скрипт, спасибо его автору за создание.
echo ‘show tables;’ | mysql zabbix -uroot -psecretpass | xargs -i -t -p echo ‘ALTER TABLE {} CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;’ | mysql zabbix -uroot -p<пароль>
Для отображения веб-интерфейса используется веб-сервер Apache, который тоже необходимо немного настроить перед запуском, а именно изменить настройки PHP
nano /etc/php.ini
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = "Asia/Yekaterinburg"
часовой пояс нужно указать свой, полный список поясов можно посмотреть вот здесь.
После настройки веб-сервера и сервера БД необходимо настроить сервер и агент Zabbix. Единственное, что нужно для настройки сервера, это указать в файле /etc/zabbix/zabbix_server.conf параметры аутентификации на сервере БД: DBName, DBUser, DBPassword, последний может быть закомментирован.
Настройка агента Zabbix тоже требует изменения всего пары строк конфигурационного файла /etc/zabbix/zabbix_agentd.conf, а именно:
  • В строке Server= нужно указать имя или ip-адрес сервера Zabbix;
  • В строке Hostname= нужно указать имя компьютера так, как оно должно отображаться в панели Zabbix.
Теперь нужно добавить оставшиеся службы в автозагрузку и запустить их
chkconfig --level 35 httpd on
chkconfig --level 35 zabbix-server on
chkconfig --level 35 zabbix-agent on
service httpd start
service zabbix-server start
service zabbix-agent start
Аген Zabbix для Windows и других ОС можно скачать на Zabbix.com
После того, как все службы настроены и запущены необходимо сделать так, чтобы доступ к ним могли получить агенты на других компьютерах и пользователь, через веб интерфейс.
iptables -I INPUT -p tcp --dport 10051 -m state --state NEW -j ACCEPT
iptables -I INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
service iptables save
setsebool -P httpd_can_network_connect 1
Теперь можно в браузере перейти по адресу http://zabbix-ip/zabbix и продолжить установку через веб-интрефейс.


Имя пользователь и пароль по умолчанию admin:zabbix. После входа в веб-интерфейс можно переключить язык на русский, для этого его нужно выбрать в меню "Profile".

Комментариев нет:

Отправка комментария