бесплатно с городских телефонов Украины
Киев | 044 392-73-56 |
Харьков | 057 728-49-18 |
Днепр | 056 790-86-00 |
Одесса | 048 734-56-54 |
Львов | 032 229-58-50 |
Николаев | 051 270-12-63 |
Полтава | 053 262-53-74 |
Запорожье | 061 228-69-91 |
Zabbix является открытым программным обеспечением для мониторинга сетей и приложений, при помощи которого возможно в реальном времени отслеживать множество метрик, собранных с серверов, виртуальных машин и любых других сетевых устройств.
В инструкции используется два сервера.
Перед выполнением инструкции необходимо предварительно на первом сервере установить Apache, MySQL и PHP.Рекомендуется на обеих серверах создать не root пользователя с доступом к sudo.
В инструкции используется текстовый редактор nano, для установки которого требуется выполнить команду:
yum install nano
Процедура мониторинга удаленного VPS в zabbix выглядит таким образом:
Переходим на первый сервер, на котором были установлены Apache, MySQL и PHP.
Добавляем официальный репозиторий Zabbix:
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Устанавливаем Zabbix с поддержкой MySQL:
sudo yum install zabbix-server-mysql zabbix-web-mysql
Устанавливаем агент Zabbix, который будет собирать данные о сервере Zabbix:
sudo yum install zabbix-agent
Настраиваем базу данных MySQL для Zabbix.
Подключаемся к mysql, указав при подключении имя пользователя root, которое было назначено при установке mysql:
mysql -uroot -p
Создаем базу данных zabbix с поддержкой символов UTF-8:
create database zabbix character set utf8;
Затем создайте пользователя, с помощью которого Zabbix сможет взаимодействовать с БД, и выберите пароль для него (в инструкции указан пароль 5N1z5V5y4I0u6O3e):
grant all privileges on zabbix.* to zabbix@localhost identified by '5N1z5V5y4I0u6O3e';
Сбрасываем привилегии:
flush privileges;
Закрываем MySQL:
quit;
Переходим в каталог /usr/share/doc/zabbix-server-mysql-3.0.16
cd /usr/share/doc/zabbix-server-mysql-3.0.16
Импортируем базовую схему базы данных Zabbix, поставляющуюся вместе с программой, указав после выполнения команды пароль пользователя zabbix , который ранее был указан при создании базы данных zabbix:
zcat create.sql.gz | mysql -uzabbix -p zabbix
Для взаимодействовия сервера Zabbix с базой данных, необходимо добавить пароль пользователя базы данных в конфигурационный файл Zabbix.
Открываем файл /etc/zabbix/zabbix_server.conf
sudo nano /etc/zabbix/zabbix_server.conf
и изменяем строку (вместо 5N1z5V5y4I0u6O3e необходимо указать собственный пароль, который был назначен пользователю zabbix):
# DBPassword=
на строку:
DBPassword=5N1z5V5y4I0u6O3e
Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.
Настраеваем PHP для поддержки Zabbix.
Открываем файл /etc/httpd/conf.d/zabbix.conf:
sudo nano /etc/httpd/conf.d/zabbix.conf
и изменяем строку:
# php_value date.timezone Europe/Riga
на строку:
php_value date.timezone Europe/Kiev
Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.
Перезапускаем Apache:
sudo systemctl restart httpd
Запускаем сервер Zabbix:
sudo systemctl start zabbix-server
Убеждаемся, что сервер Zabbix успешно запущен:
sudo systemctl status zabbix-server
Включаем автозапуск Zabbix:
sudo systemctl enable zabbix-server
Открываем порт 10050 и 10051:
sudo firewall-cmd --permanent --zone=public --add-port=10050/tcp
sudo firewall-cmd --permanent --zone=public --add-port=10051/tcp
sudo firewall-cmd --reload
Устанавливаем веб-интерфейс Zabbix.
В браузере открываем адрес (вместо 93.190.42.52 необходимо указать IP адрес собственного сервера):
http://93.190.42.52/zabbix/
На шаге Welcome нажимаем кнопку Next
На шаге Check of pre-requisites нажимаем кнопку Next
На шаге Configure DB connection заполняем данные для подключения к ранее созданной базе данных zabbix, после чего нажимаем кнопку Next.
На шаге Zabbix server details оставляем осе по умолчанию и нажимаем кнопку Next.
На шаге Pre-installation summary нажимаем кнопку Next.
На шаге Install нажимаем кнопку Finish.
После этого откроется окно авторизации в zabbix.
Переходим на второй сервер.
Устанавливаем официальный репозиторий Zabbix:
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Устанавливаем агент Zabbix:
sudo yum install zabbix-agent
Генерируем ключ PSK (ключ необходимо скопировать, т.к он понадобится при дальнейшей настройке):
sudo sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"
Смотрим ключ и копируем, т.к он понадобится на дальнейших этапах:
cat /etc/zabbix/zabbix_agentd.psk
Для обеспечения безопасного соединения с сервером Zabbix открываем настройки агента Zabbix:
sudo nano /etc/zabbix/zabbix_agentd.conf
Изменяем строку:
Server=127.0.0.1
на строку(вместо 93.190.42.52 необходимо указать собственный IP адрес сервера Zabbix):
Server=93.190.42.52
Изменяем строку:
# TLSConnect=unencrypted
на строку
TLSConnect=psk
Изменяем строку:
TLSAccept=unencrypted
на строку:
TLSAccept=psk
Изменяем строку:
# TLSPSKIdentity=
на строку:
TLSPSKIdentity=PSK 001
Изменяем строку:
# TLSPSKFile=
на строку:
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.
Запускаем агент Zabbix:
sudo systemctl start zabbix-agent
Включаем автозапуск агента Zabbix:
sudo systemctl enable zabbix-agent
Убеждаемся, что агент Zabbix успешно запущен:
sudo systemctl status zabbix-agent
Для открытия портов 10050 и 10051 открываем файл /etc/sysconfig/iptables
sudo nano /etc/sysconfig/iptables
и после строки:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
вставляем следующие строки:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 10051 -j ACCEPT
Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.
Обновляем информацию в iptables:
sudo service iptables reload
Включаем firewalld в иносим дополнительные правила:
sudo systemctl start firewalld
sudo firewall-cmd --permanent --zone=public --add-port=10050/tcp
sudo firewall-cmd --permanent --zone=public --add-port=10051/tcp
sudo firewall-cmd --reload
В браузере открываем адрес (вместо 93.190.42.52 необходимо указать IP адрес собственного сервера):
http://93.190.42.52/zabbix/index.php
Имя пользователя по умолчанию: admin
Пароль по умолчанию: zabbix
Чтобы сервер Zabbix начал отслеживать установленный агент, необходимо добавить его в список хостов через веб-интерфейс.
В верхней панели нажимаем в разделе «Configuration» на подраздел «Hosts» и затем на кнопку «Create host», находящуюся в правом верхнем углу:
На экране появится страница настройки хоста.
В полях «Host name» и «IP address» указываем имя и IP-адрес клиента (вместо 93.190.42.60 (IP адрес второго сервера) необходимо указать IP адрес собственного сервера).
Далее выбираем из списка «Other groups» группу «Linux servers» и переносим ее в «In groups».
Переходим на вкладку Templates.
В поле «Link new templates» вводим «Template OS Linux», выбираем введенный шаблон и нажимаем на кнопку «Add», для добавления шаблона.
Переходим на вкладку «Encryption».
Выбираем «PSK» в «Connections to host» и «Connections from host».
В «PSK identity» указываем имя ключа, который был ранее установлен в файле /etc/zabbix/zabbix_agentd.conf для параметра «TLSPSKIdentity» (в данном случае PSK 001).
В «PSK» указываем ключ, который хранится в /etc/zabbix/zabbix_agentd.psk и который был скопирован на одном из предыдущих этапов.
После этого нажимаем на кнопку «Add».
Видим, что хост с именем «MyHost» добавился:
Чтобы посмотреть данные агента, нажимаем в разделе Monitoring на пункт Latest data, в поле Host groups выбираем Linux servers, в поле MyHost выбираем MyHost и нажимаем на кнопку Filter.
Видим данные мониторинга:
См.также:
Мониторинг удалённых серверов с помощью Zabbix