3 Мониторинг Apache по HTTP

Введение

На этой странице показан быстрый и простой способ начать мониторинг веб-сервера Apache без установки какого-либо дополнительного программного обеспечения.

Для кого предназначено это руководство

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

Предварительные требования

Прежде чем продолжить работу с этим руководством по установке, необходимо загрузить и установить сервер Zabbix и веб-интерфейс Zabbix в соответствии с инструкциями для вашей ОС.

Подготовка Apache

1. Проверьте, какую версию Apache вы используете:

В системе на базе RHEL выполните:

httpd -v

В Debian/Ubuntu выполните:

apache2 -v

2. Убедитесь, что модуль Status включен в вашем экземпляре Apache.

В системе на базе RHEL выполните:

httpd -M | grep status
status_module (shared)

В Debian/Ubuntu выполните:

apache2ctl -M | grep status
status_module (shared)

Если вы не видите status_module в списке, включите модуль, выполнив:

В системе на базе RHEL выполните:

LoadModule status_module /usr/lib/apache2/modules/mod_status.so

В Debian/Ubuntu выполните:

sudo /usr/sbin/a2enmod status

3. Отредактируйте файл конфигурации Apache, чтобы разрешить доступ к отчетам о состоянии с IP-адреса сервера Zabbix.

В системе на базе RHEL: /etc/httpd/conf.modules.d/status.conf:

sudo vi /etc/httpd/conf.modules.d/status.conf

В Debian/Ubuntu: /etc/apache2/mods-enabled/status.conf:

sudo vi /etc/apache2/mods-enabled/status.conf

Добавьте в файл следующие строки (замените 198.51.100.255 на IP-адрес вашего сервера Zabbix):

  • Для Apache 2.2:
    <Location /server-status> SetHandler server-status

    Order Deny,Allow Deny from all Allow from 198.51.100.255 </Location>

  • Для Apache 2.4:
    <Location "/server-status"> SetHandler server-status Require ip 198.51.100.255 </Location>

4. Перезапустите Apache

В системе на базе RHEL выполните:

sudo systemctl restart httpd

В Debian/Ubuntu выполните:

sudo systemctl restart apache2 

5. Чтобы проверить, что все настроено правильно, выполните (замените 198.51.100.255 на IP-адрес вашего сервера Zabbix):

curl 198.51.100.255/server-status

В ответе должна содержаться статистика веб-сервера Apache.

Настройка Zabbix для мониторинга

1. Войдите в веб-интерфейс Zabbix.

2. Создайте узел сети в веб-интерфейсе Zabbix.

Этот узел сети будет представлять ваш сервер Apache.

3. В параметре Interfaces добавьте интерфейс Агент и укажите IP-адрес вашего экземпляра Apache. Вам не нужно устанавливать агент Zabbix на эту машину, интерфейс будет использоваться только для разрешения макроса {HOST.CONN}. Этот макрос используется в элементах данных шаблона для определения местоположения экземпляра Apache.

4. В параметре Templates введите или выберите Apache by HTTP.

5. Перейдите на вкладку Macros и выберите режим Inherited and host macros. Убедитесь, что значения макросов {$APACHE.STATUS.PORT} и {$APACHE.STATUS.SCHEME} соответствуют настройкам вашей установки. По умолчанию используется порт 80 и схема http. Измените значения макросов, если вы используете другой порт и/или схему.

Просмотр собранных метрик

Поздравляем! На этом этапе Zabbix уже выполняет мониторинг вашего веб-сервера Apache.

Чтобы просмотреть собранные метрики, откройте раздел меню Monitoring->Hosts и нажмите Dashboards рядом с узлом сети.

Это действие перенаправит вас на панель узла сети с наиболее важными метриками, собранными со страницы Apache /server-status.

Кроме того, в разделе Monitoring->Hosts вы можете нажать Latest data, чтобы просмотреть все последние собранные метрики в виде списка.

Настройка оповещений о проблемах

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

1. Перейдите в User settings -> Profile, откройте вкладку Media и добавьте свой адрес электронной почты.

2. Следуйте руководству Получение уведомлений о проблемах.

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

Проверьте вашу конфигурацию

Чтобы смоделировать реальную проблему и получить тестовое оповещение о проблеме:

1. Откройте конфигурацию узла сети Apache server в Zabbix.

2. Перейдите на вкладку Macros и выберите Inherited and host macros.

3. Нажмите Change рядом с макросом {$APACHE.STATUS.PORT} и укажите другой порт.

4. Нажмите Update, чтобы сохранить конфигурацию узла сети.

5. Через несколько минут Zabbix обнаружит проблему Apache service is down, поскольку теперь он не может подключиться к экземпляру. Она появится в разделе Monitoring->Problems.

Если оповещения настроены, вы также получите уведомление о проблеме.

6. Измените значение макроса обратно, чтобы устранить проблему и продолжить мониторинг Apache.

См. также:

  • Усиление защиты веб-сервера — рекомендуемые настройки для повышения безопасности веб-сервера.
  • Создание элемента данных — как начать мониторинг дополнительных метрик.
  • HTTP-элементы данных — как отслеживать пользовательские метрики с помощью HTTP-агента.
  • Эскалации проблем — как создавать многошаговые сценарии оповещений
    (например, сначала отправить сообщение системному администратору, затем, если проблема не будет решена в течение 45 минут, отправить сообщение
    менеджеру центра обработки данных).