Введите имя домена:
.ua .com.ua .in.ua .org.ua
.ru .com .net .org
Показать все домены

Мониторинг удалённых серверов с помощью Zabbix

Ответы на вопросы от компании «Украинский хостинг».

Мониторинг удаленного VPS в zabbix

Zabbix является открытым программным обеспечением для мониторинга сетей и приложений, при помощи которого возможно в реальном времени отслеживать множество метрик, собранных с серверов, виртуальных машин и любых других сетевых устройств.

В инструкции используется два сервера.

Перед выполнением инструкции необходимо предварительно на первом сервере установить Apache, MySQL и PHP.

Рекомендуется на обеих серверах создать не root пользователя с доступом к sudo.

В инструкции используется текстовый редактор nano, для установки которого требуется выполнить команду:

yum install nano

Процедура мониторинга удаленного VPS в zabbix выглядит таким образом:

  1. Переходим на первый сервер, на котором были установлены 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
  2. Устанавливаем Zabbix с поддержкой MySQL:

    sudo yum install zabbix-server-mysql zabbix-web-mysql
  3. Устанавливаем агент Zabbix, который будет собирать данные о сервере Zabbix:

    sudo yum install zabbix-agent
  4. Настраиваем базу данных MySQL для Zabbix.

    Подключаемся к mysql, указав при подключении имя пользователя root, которое было назначено при установке mysql:

    mysql -uroot -p
  5. Создаем базу данных zabbix с поддержкой символов UTF-8:

    create database zabbix character set utf8;
  6. Затем создайте пользователя, с помощью которого Zabbix сможет взаимодействовать с БД, и выберите пароль для него (в инструкции указан пароль 5N1z5V5y4I0u6O3e):

    grant all privileges on zabbix.* to zabbix@localhost identified by '5N1z5V5y4I0u6O3e';
  7. Сбрасываем привилегии:

    flush privileges;
  8. Закрываем MySQL:

    quit;
  9. Переходим в каталог /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
  10. Для взаимодействовия сервера Zabbix с базой данных, необходимо добавить пароль пользователя базы данных в конфигурационный файл Zabbix.

    Открываем файл /etc/zabbix/zabbix_server.conf

    sudo nano /etc/zabbix/zabbix_server.conf

    и изменяем строку (вместо 5N1z5V5y4I0u6O3e необходимо указать собственный пароль, который был назначен пользователю zabbix):

    # DBPassword=

    на строку:

    DBPassword=5N1z5V5y4I0u6O3e

    Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.

  11. Настраеваем 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.

  12. Перезапускаем Apache:

    sudo systemctl restart httpd
  13. Запускаем сервер Zabbix:

    sudo systemctl start zabbix-server
  14. Убеждаемся, что сервер Zabbix успешно запущен:

    sudo systemctl status zabbix-server
  15. Включаем автозапуск Zabbix:

    sudo systemctl enable zabbix-server
  16. Открываем порт 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
  17. Устанавливаем веб-интерфейс 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.

  18. Переходим на второй сервер.

    Устанавливаем официальный репозиторий Zabbix:

    sudo rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
  19. Устанавливаем агент Zabbix:

    sudo yum install zabbix-agent
  20. Генерируем ключ PSK (ключ необходимо скопировать, т.к он понадобится при дальнейшей настройке):

    sudo sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"

    Смотрим ключ и копируем, т.к он понадобится на дальнейших этапах:

    cat /etc/zabbix/zabbix_agentd.psk
  21. Для обеспечения безопасного соединения с сервером 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
  22. Изменяем строку:

    # TLSConnect=unencrypted

    на строку

    TLSConnect=psk
  23. Изменяем строку:

    TLSAccept=unencrypted

    на строку:

    TLSAccept=psk
  24. Изменяем строку:

    # TLSPSKIdentity=

    на строку:

    TLSPSKIdentity=PSK 001
  25. Изменяем строку:

    # TLSPSKFile=

    на строку:

    TLSPSKFile=/etc/zabbix/zabbix_agentd.psk

    Сохраняем изменение в файле, нажав сочетание клавиш Ctrl+x , затем клавишу y и затем клавишу Enter.

  26. Запускаем агент Zabbix:

    sudo systemctl start zabbix-agent

    Включаем автозапуск агента Zabbix:

    sudo systemctl enable zabbix-agent
  27. Убеждаемся, что агент Zabbix успешно запущен:

    sudo systemctl status zabbix-agent
  28. Для открытия портов 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.

  29. Обновляем информацию в iptables:

    sudo service iptables reload
  30. Включаем 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
  31. В браузере открываем адрес (вместо 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, сервер, vps

См.также: