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