В предыдущих постах я рассказывал о том, как установить Zabbix на Ubuntu. Однако, согласно рекомендациям Zabbix, для крупных инсталляций используется Centos/Red Hat. Приступим.
Для начала я установил Centos 6.5 x64 на VirtualBox. Включил один сетевой адаптер, тип подключения: "Сетевой мост".
Для начала настроим сеть.
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 #имя адаптера
HWADDR=08:00:27:AB:6B:C3 #мак-адрес менять не надо
TYPE=Ethernet #тип подключения
UUID=049a960c-8d2c-4031-90ba-6f7502f357b4 #идентификатор интерфейса (не трогаем)
ONBOOT=yes #запускать при загрузке
NM_CONTROLLED=yes #контролируется ли интерфейс службой NetworkManager
BOOTPROTO=none #DHCP не используем
IPADDR=192.168.1.52 #IP адрес нашего Zabbix сервера
NETMASK=255.255.255.0 #макса сети
GATEWAY=192.168.1.1 #шлюз по умолчанию (в данном случае это адрес роутера)
DNS1=8.8.8.8 #DNS адрес
Сохраняем (В редакторе vi это делается нажав на Esc, затем ":" вводим "wq"). Для надежности перезагружаем виртуальную машину. Видим что настройки применились. Подключаемся по SSH к виртуальной машине. Я использовал Putty для подключения. Делается для удобства работы (можно копировать текст в консоль прямо из своей системы) На сколько мне известно openssh-server установлен на centos по умолчанию. Если не установлен, то ставим:
yum install openssh-server
1)Теперь добавим свежий репозиторий Zabbix. Найти актуальный можно здесь. В моем случае это:
rpm -ihv http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
Если будете искать сами, то увидите что там много файлов. Копировать надо именно "noarch".
2)Делаем update
yum update
3)Переходим к установке
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent
4)Ставим MySQL
yum install mysql-server
service mysqld start
5)Настроим MySQL
mysql_secure_installation
- Enter current password for root (enter for none): <Press enter without password>
- Set root password? [Y/n] <Enter Y>
- Remove anonymous users? [Y/n] <Enter Y>
- Disallow root login remotely? [Y/n] <Enter n>
- Remove test database and access to it? [Y/n] <Enter Y>
- Reload privilege tables now? [Y/n] <Enter Y>
6)Создадим базу данных
# mysql -uroot -p<root пароль>
(пример: mysql -uroot -pparol)
mysql> create database zabbix character set utf8;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> exit
cd /usr/share/doc/zabbix-server-mysql-2.0.10/create
mysql -uroot -p<root пароль> zabbix < schema.sql
mysql -uroot -p<root пароль> zabbix < images.sql
mysql -uroot -p<root пароль> zabbix < data.sql
7)Правим базу данных
vi /etc/zabbix/zabbix_server.conf
Правим следующие строчки:
– DBHost=localhost (раскомментируем данную строку)
– DBName=zabbix
– DBUser=zabbix
– DBPassword=zabbix (раскомментируем эту строку)
8)Стартуем Zabbix-сервер и Zabbix-агент
service zabbix-server start
service zabbix-agent start
9)Поправим конфигурационный файл Apache
vi /etc/httpd/conf.d/zabbix.conf
Должны быть выставлены следующие параметры:
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
Находим строчку:
php_value date.timezone Europe/Riga и правим на:
php_value date.timezone Europe/Moscow
Сохраняем и делаем рестарт службы
service httpd restart
10)Может возникнуть следующая ошибка:
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName
Решается так:
vi /etc/httpd/conf/httpd.conf
дописываем строчку
ServerName localhost
снова делаем рестарт
service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
11)Прописываем автозагрузку
chkconfig zabbix-server on
chkconfig zabbix-agent on
chkconfig mysqld on
chkconfig httpd on
12)Теперь необходимо настроить фаервол. Вы можете прописать конкретные правила, либо выключить фаервол вообще, что я собственно и сделал:
service iptables stop
chkconfig iptables off
13)Подключаемся с помощью браузера. В моем случае это http://192.168.1.52/zabbix. И приступаем к установке.
Правим настройки базы данных, в соответствии с ранее созданной базой данных.
Логинемся под Username: Admin и Password: zabbix
Может возникнуть следующая ошибка:
"Zabbix server is not running: the information displayed may not be current."
Необходимо выключить SELinux. В Fedora Core, CentOS и RedHat Enterprise, достаточно отредактировать /etc/selinux/config и изменить параметр SELINUX=enforcing на SELINUX=permissive, после чего перезагрузить систему.
Снова заходим на вебинтерфейс.
И когда я подумал что установка закончена, то обнаружил, что если экстренно выключать виртуальную машину появляется следующая ошибка:
Database error: Error connecting to database [Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)]
Помогло удаление файла /var/lib/mysql/mysql.sock. После этого потребовалось перезапустить mysql и zabbix server.
service mysqld restart
service zabbix-server restart
С чем это связано я так и не понял, но при штатном выключении (или перезагрузке) виртуальной машины все работает нормально.
Огромное спасибо, очень хорошая статья!
ОтветитьУдалитьРад, что оказался полезным
УдалитьЭтот комментарий был удален автором.
ОтветитьУдалитьЭтот комментарий был удален автором.
ОтветитьУдалитьпроблему решили?
УдалитьСпасибо! )
ОтветитьУдалитьрад, что пригодилось
УдалитьСпасибо за наглядную инструкцию!
ОтветитьУдалитьПара комментариев:
1) после grant all privileges также потребовалась выполнить
flush privileges;
2) для применения настройки selinux, вместо перезагрузки, достаточно выполнить
setenforce 0
спасибо за дополнение, уверен кому-нибудь пригодится.
УдалитьСпасибо.. помогло.. всё работает..
ОтветитьУдалить