[comment]: # ({8182ffcb-ecf9c397})
# 3 Мониторинг Apache через HTTP

[comment]: # ({/8182ffcb-ecf9c397})

[comment]: # ({d75c48d2-10fb7eeb})
## Введение

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

[comment]: # ({/d75c48d2-10fb7eeb})

[comment]: # ({36b7cfe4-faa6dcc9})
**Для кого предназначено это руководство**

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

[comment]: # ({/36b7cfe4-faa6dcc9})

[comment]: # ({8fc6c74e-3b4f784a})
**Предварительные требования**

Перед тем как продолжить это руководство по установке, необходимо [загрузить и установить](https://www.zabbix.com/download) сервер Zabbix и веб-интерфейс Zabbix в соответствии с инструкциями для вашей ОС.

[comment]: # ({/8fc6c74e-3b4f784a})

[comment]: # ({370c51ab-f10ccc2e})
## Подготовка Apache

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

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

    httpd -v

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

    apache2 -v

2\. Убедитесь, что [модуль Status](https://httpd.apache.org/docs/2.4/mod/mod_status.html) включен в вашем экземпляре 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.

[comment]: # ({/370c51ab-f10ccc2e})

[comment]: # ({2e98c579-1c8f60ff})
## Настройка Zabbix для мониторинга

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

2\. [Создайте узел сети](/manual/config/hosts/host) в веб-интерфейсе Zabbix. 

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

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

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

![](../../../assets/en/manual/guides/apache_host.png)

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

![](../../../assets/en/manual/guides/apache_host_macros.png){width="600"}

[comment]: # ({/2e98c579-1c8f60ff})

[comment]: # ({412d1d55-478d88e2})
## Просмотр собранных метрик

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

Чтобы просмотреть собранные метрики, откройте раздел меню *Monitoring->Hosts* 
[menu section](/manual/web_interface/frontend_sections/monitoring/hosts) и нажмите *Dashboards* рядом с узлом сети.

![](../../../assets/en/manual/guides/apache_hosts.png){width="600"}

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

![](../../../assets/en/manual/guides/apache_dashboard.png){width="600"}

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

![](../../../assets/en/manual/guides/apache_latest_data.png){width="600"}

[comment]: # ({/412d1d55-478d88e2})

[comment]: # ({86f39343-59785b62})
## Настройка оповещений о проблемах

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

1\. Перейдите в *User settings -> Profile*, откройте вкладку *Media* и [добавьте свой email](/manual/quickstart/login#adding-user).

![](../../../assets/en/manual/quickstart/new_media.png){width="600"}

2\. Следуйте руководству по [Receiving problem notification](/manual/quickstart/notification).

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

[comment]: # ({/86f39343-59785b62})

[comment]: # ({c6fb646c-21fefdf9})
## Проверьте вашу конфигурацию

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

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.

![](../../../assets/en/manual/guides/apache_problem.png){width="600"}

Если оповещения [настроены](#set-up-problem-alerts), вы также получите уведомление о проблеме.

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

[comment]: # ({/c6fb646c-21fefdf9})

[comment]: # ({7e8d3225-fe48fbbc})
**См. также:**

- [Усиление защиты веб-сервера](/manual/best_practices/security/web_server) - рекомендуемые настройки для повышения безопасности веб-сервера.
- [Создание элемента данных](/manual/config/items/item) - как начать мониторинг дополнительных метрик.
- [Элементы данных HTTP](/manual/config/items/itemtypes/zabbix_agent) - как отслеживать пользовательские метрики с помощью HTTP-агента.
- [Эскалации проблем](/manual/config/notifications/action/escalations) - как создавать многошаговые сценарии оповещений 
  (например, сначала отправить сообщение системному администратору, а затем, если проблема не решена в течение 45 минут, отправить сообщение 
  менеджеру центра обработки данных).

[comment]: # ({/7e8d3225-fe48fbbc})
