[comment]: # translation:outdated

[comment]: # ({new-35f3262a})
# Настройка шаблонов для Zabbix агента

Шаги для обеспечения правильной работы шаблонов, которые собирают
метрики с помощью [Zabbix агент](/ru/manual/concepts/agent):

1\. Убедитесь, что на узле сети установлен агент Zabbix. Для активных
проверок также убедитесь, что узел сети добавлен в параметр ServerActive
[файла конфигурации](/ru/manual/appendix/config/zabbix_agentd) агента.\
2. [Привяжите](/ru/manual/config/templates/linking#linking_a_template)
шаблон к целевому узлу сети (если шаблон недоступен в вашей установке
Zabbix, вам может потребоваться сначала импортировать файл .xml шаблона
- см. инструкции в разделе [Готовые
шаблоны](/ru/manual/config/templates_out_of_the_box)).\
3. При необходимости измените значения обязательных макросов.\
4. Настройте объект для мониторинга так, чтобы разрешить обмен данными с
Zabbix - см. инструкции в столбце *Дополнительные шаги/комментарии*.

::: notetip
 Эта страница содержит только минимальный набор макросов
и шагов настройки, необходимых для правильной работы шаблона. Подробное
описание шаблона, включая полный список макросов, элементов и триггеров,
доступно в файле Readme.md шаблона (доступном при нажатии на имя
шаблона). 
:::

|Шаблон|Обязательные макросы|Дополнительные шаги/комментарии|
|------------|---------------------------------------|------------------------------------------------------------|
|[Template App Apache by Zabbix agent](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/apache_agent/README.md)|**{$APACHE.STATUS.HOST}** - имя хоста или IP-адрес страницы состояния Apache (по умолчанию: 127.0.0.1)<br>**{$APACHE.STATUS.PATH}** - путь URL (по умолчанию: server-status?auto)<br>**{$APACHE.STATUS.PORT}** - порт страницы состояния Apache (по умолчанию: 80)|Должен быть установлен модуль Apache mod\_status (см. подробнее в [документации](https://httpd.apache.org/docs/current/mod/mod_status.html) Apache).<br>Чтобы проверить доступность, выполните:<br>`httpd -M 2>/dev/null \| grep status_module`<br><br>Пример конфигурации Apache:<br>`<Location "/server-status">`<br>`SetHandler server-status`<br>`Require host example.com`<br>`</Location>`|
|[Template App HAProxy by Zabbix agent](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/haproxy_agent/README.md)|**{$HAPROXY.STATS.PATH}** - путь к странице HAProxy Stats (по умолчанию: stats)<br>**{$HAPROXY.STATS.PORT}** - порт узла сети или контейнера HAProxy Stats (по умолчанию: 8404)<br>**{$HAPROXY.STATS.SCHEME}** - схема страницы HAProxy Stats. Поддерживается: http (по умолчанию), https|Страница HAProxy Stats должна быть настроена (см. подробнее о HAProxy Stats в блоге [HAProxy](https://www.haproxy.com/blog/exploring-the-haproxy-stats-page/); в Readme.md шаблона Zabbix есть готовый пример конфигурации).|
|[Template App IIS by Zabbix agent](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/iis_agent) / [Template App IIS by Zabbix agent active](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/iis_agent_active/README.md)|**{$IIS.PORT}** - порт, который IIS Server прослушивает (по умолчанию: 80)<br>**{$IIS.SERVICE}** - сервис проверки порта (по умолчанию: http). См. подробнее в разделе [net.tcp.service](/ru/manual/config/items/itemtypes/simple_checks).|Сервер должен иметь следующие роли:<br>[Web Server](https://docs.microsoft.com/en-us/iis/web-hosting/web-server-for-shared-hosting/installing-the-web-server-role)<br>[IIS Management Scripts and Tools](https://docs.microsoft.com/en-us/iis/manage/scripting/managing-applications-and-application-pools-on-iis-with-wmi)<br><br>См. подробнее в документации IIS.|
|[Template App Nginx by Zabbix agent](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/nginx_agent/README.md)|**{$NGINX.STUB\_STATUS.HOST}** - имя или IP-адрес узла сети или контейнера Nginx stub\_status (по умолчанию: localhost)<br>**{$NGINX.STUB\_STATUS.PATH}** - путь к странице Nginx stub\_status (по умолчанию: basic\_status)<br>**{$NGINX.STUB\_STATUS.PORT}** - порт узла сети или контейнера Nginx stub\_status (по умолчанию: 80)|`ngx_http_stub_status_module` должен быть создан (см. подробнее в [документации](https://nginx.org/en/docs/http/ngx_http_stub_status_module.html) Nginx; в Readme.md шаблона Zabbix есть готовый пример конфигурации).<br>Чтобы проверить доступность, выполните:<br>`nginx -V 2>&1 \| grep -o with-http_stub_status_module`|
|[Template App RabbitMQ cluster by Zabbix agent](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/rabbitmq_agent)|**{$RABBITMQ.API.CLUSTER\_HOST}** - имя узла сети или IP-адрес конечной точки API кластера RabbitMQ (по умолчанию: `127.0.0.1`)<br>**{$RABBITMQ.API.USER}**, **{$RABBITMQ.API.PASSWORD}** - учетные данные для входа в RabbitMQ (по умолчанию имя пользователя: zbx\_monitor, пароль: zabbix)|Включить плагин управления RabbitMQ (см. [документацию](https://www.rabbitmq.com/management.html) RabbitMQ).<br><br>Чтобы создать пользователя RabbitMQ с необходимыми разрешениями для мониторинга, запустите:<br>`rabbitmqctl add_user zbx_monitor <PASSWORD>`<br>`rabbitmqctl set_permissions -p / zbx_monitor %% "" "" ".*"%%`<br>`rabbitmqctl set_user_tags zbx_monitor monitoring`<br><br>Если кластер состоит из нескольких узлов, рекомендуется назначить шаблон мониторинга кластера отдельному балансирующему узлу сети. В случае мониторинга кластера с одним узлом, шаблон кластера можно назначить узлу сети с шаблоном узла.|
|[Template DB MySQL](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mysql_agent/README.md)|**{$MYSQL.HOST}** - имя узла сети или IP-адрес узла сети или контейнера MySQL (по умолчанию: localhost)<br>**{$MYSQL.PORT}** - порт службы базы данных (по умолчанию: 3306)|1\. При необходимости добавьте путь к утилитам mysql и mysqladmin в глобальную переменную окружения PATH.<br><br>2. Скопируйте файл `template_db_mysql.conf` из каталога *templates* Zabbix в папку с конфигурацией Zabbix агента (по умолчанию /etc/zabbix/zabbix\_agentd.d/) и перезапустите Zabbix агент.<br><br>3. Создайте пользователя MySQL `zbx_monitor`. Чтобы предоставить пользователю необходимые привилегии, выполните:<br>`GRANT USAGE,REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON %% *.* TO '<username>'@'%';%%`<br>(см. подробнее в [документации](https://dev.mysql.com/doc/refman/8.0/en/grant.html) MySQL).<br><br>4. Создайте `.my.cnf` в домашнем каталоге Zabbix агента для Linux (/var/lib/zabbix по умолчанию) или `my.cnf` в c:\\ для Windows. В файле должно быть три строки:<br>`[client]`<br>''user='zbx\_monitor' ''<br>''password='<password>' ''|
|[Template DB PostgreSQL](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/postgresql/README.md)|**{$PG.DB}** - имя базы данных для подключения к серверу (по умолчанию: postgres)<br>**{$PG.HOST}** - каталог сокета или узел сети сервера базы данных (по умолчанию:127.0.0.1)<br>**{$PG.PORT}** - порт сервера базы данных (по умолчанию: 5432)<br>**{$PG.USER}** - имя пользователя базы данных (по умолчанию: zbx\_monitor)|1\. Создать пользователя только для чтения `zbx_monitor` с правильным доступом к серверу PostgreSQL. Для PostgreSQL 10 и новее запустите:<br>`CREATE USER zbx_monitor WITH PASSWORD '<PASSWORD>' INHERIT;`<br>`GRANT pg_monitor TO zbx_monitor;`<br>Для более старых версий PostgreSQL, выполните:<br>`CREATE USER zbx_monitor WITH PASSWORD '<PASSWORD>';`<br>`GRANT SELECT ON pg_stat_database TO zbx_monitor;`<br><br>2. Скопируйте `postgresql/` в домашний каталог Zabbix агента (/var/lib/zabbix/).<br><br>3. Скопируйте `template_db_postgresql.conf` из папки в Zabbix *templates* в папку конфигурации Zabbix агента (/etc/zabbix/zabbix\_agentd.d/) и перезапустите Zabbix агент.<br><br>4. Отредактируйте `pg_hba.conf`, чтобы разрешить соединения от агента Zabbix (см. подробнее в [документации](https://www.postgresql.org/docs/current/auth-pg-hba-conf.html) PostgreSQL).<br>Примеры строк:<br>`host all zbx_monitor 127.0.0.1/32 trust`<br>`host all zbx_monitor 0.0.0.0/0 md5`<br>`host all zbx_monitor ::0/0 md5`<br><br>5. Для мониторинга удаленного сервера создайте файл `.pgpass` в домашнем каталоге Zabbix агента (/var/lib/zabbix/) и добавьте строки с информацией об экземпляре, порте, базе данных, пользователе и пароле (см. подробнее в документации [PostgreSQL](https://www.postgresql.org/docs/current/libpq-pgpass.html)).<br>Примеры строк:<br>`<REMOTE_HOST1>:5432:postgres:zbx_monitor:<PASSWORD>`<br>`*:5432:postgres:zbx_monitor:<PASSWORD>`|

[comment]: # ({/new-35f3262a})
