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 добавьте интерфейс Agent и укажите 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 menu section и нажмите Dashboards рядом с узлом сети.

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

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

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

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

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

2. Следуйте руководству по Receiving problem notification.

В следующий раз, когда 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 минут, отправить сообщение менеджеру центра обработки данных).