Шаги для гарантии корректной работы шаблонов, которые собирают метрики через Zabbix агент:
1. Убедитесь, что Zabbix агент установлен на хосте. Для активных проверок также убедитесь, что хост добавлен в 'ServerActive' параметр файла конфигурации агента.
2. Присоедините шаблон к нужному узлу сети (если шаблон недоступен в вашей инсталляции Zabbix, вам может потребуется сначала импортировать файл .xml шаблона - смотрите инструкции в разделе Готовые шаблоны).
3. При необходимости измените значения обязательных макросов.
4. Настройте экземпляр для мониторинга так, чтобы обмен данными с Zabbix был разрешен - смотрите инструкции в колонке Дополнительные шаги / комментарии.
Эта страница содержит только минимальный набор макросов и шагов настройки, необходимых для правильной работы шаблона. Подробное описание шаблона, включая полный список макросов, элементов данных и триггеров, доступно в файле Readme.md шаблона (доступном при нажатии на имя шаблона).
Имя шаблона | Обязательные макросы | Дополнительные шаги / комментарии |
---|---|---|
Apache by Zabbix agent | {$APACHE.STATUS.HOST} - имя хоста или IP адрес страницы состояния Apache (по умолчанию: 127.0.0.1) {$APACHE.STATUS.PATH} - URL путь (по умолчанию: server-status?auto) {$APACHE.STATUS.PORT} - порт страницы состояния Apache (по умолчанию: 80) |
Необходимо настроить mod_status модуль Apache (смотрите документацию Apache для получения подробных сведений). Чтобы проверить доступность, выполните: httpd -M 2>/dev/null \| grep status_module Пример конфигурации Apache: <Location "/server-status"> SetHandler server-status Require host example.com </Location> |
HAProxy by Zabbix agent | {$HAPROXY.STATS.PATH} - путь к странице HAProxy Stats (по умолчанию: stats) {$HAPROXY.STATS.PORT} - порт HAProxy Stats хоста или контейнера (по умолчанию: 8404) {$HAPROXY.STATS.SCHEME} - схема HAProxy Stats страницы. Поддерживается: http (по умолчанию), https |
Страница HAProxy Stats должна быть настроена (для получения более подробных сведений смотрите запись в блоге HAProxy или Readme.md шаблона как пример настройки). |
IIS by Zabbix agent / IIS by Zabbix agent active | {$IIS.PORT} - порт на котором слушает IIS Server (по умолчанию: 80) {$IIS.SERVICE} - сервис для проверки порта (по умолчанию: http). Для получения более подробных сведений смотрите раздел с net.tcp.service. |
Сервер должен иметь следующие роли: Web Server IIS Management Scripts and Tools Для получения более подробных сведений смотрите IIS документацию. |
Microsoft Exchange Server 2016 by Zabbix agent/Microsoft Exchange Server 2016 by Zabbix agent active | Обратите внимание, этот шаблон не предоставляет информацию о состоянии Windows служб. Его рекомендуется использовать вместе с OS Windows by Zabbix agent или OS Windows by Zabbix agent active шаблонами. | |
Nginx by Zabbix agent | {$NGINX.STUB_STATUS.HOST} - имя хоста или IP адрес NGINX stub_status хоста или контейнера (по умолчанию: localhost) {$NGINX.STUB_STATUS.PATH} - путь к странице NGINX stub_status (по умолчанию: basic_status) {$NGINX.STUB_STATUS.PORT} - порт NGINX stub_status хоста или контейнера (по умолчанию: 80) |
Необходимо настроить ngx_http_stub_status_module (для получения более подробных сведений смотрите документацию по NGINX или Readme.md шаблона для примера настройки).Для проверки доступности, выполните: nginx -V 2>&1 \| grep -o with-http_stub_status_module |
PHP-FPM by Zabbix agent | {$PHP_FPM.HOST} - имя хоста или IP адрес состояния PHP-FPM хоста или контейнера (по умолчанию: localhost ){$PHP_FPM.PING.PAGE} - PHP-FPM ping page path (default: ping ){$PHP_FPM.PORT} - the port of PHP-FPM status host or container (default: 80 ){$PHP_FPM.PROCESS_NAME} - PHP-FPM process name (default: php-fpm ){$PHP_FPM.STATUS.PAGE} - путь к PHP-FPM ping странице (по умолчанию: status ) |
1. Откройте файл конфигурации php-fpm и включите страницу состояния:pm.status_path = /status ping.path = /ping 2. Проверьте синтаксис: $ php-fpm7 -t 3. Перезагрузите сервис php-fpm. 4. В файле конфигурации в блоке сервера Nginx (виртуальный хост) добавьте (смотрите Readme.md шаблона для расширенного примера с комментариями): location ~ ^/(status\|ping)$ { access_log off; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_index index.php; include fastcgi_params; fastcgi_pass 127.0.0.1:9000; } 5. Проверьте синтаксис: $ nginx -t 6. Перезагрузите Nginx 7. Проверьте: curl -L 127.0.0.1/status |
RabbitMQ cluster by Zabbix agent | {$RABBITMQ.API.CLUSTER_HOST} - имя хоста или IP адрес RabbitMQ кластера точки входа API (по умолчанию:127.0.0.1 ){$RABBITMQ.API.USER}, {$RABBITMQ.API.PASSWORD} - учетные данные входа в RabbitMQ (имя пользователя по умолчанию: zbx_monitor, пароль: zabbix) |
Включите плагин управления RabbitMQ (смотрите RabbitMQ документацию). Чтобы создать пользователя RabbitMQ с необходимыми правами для мониторинга, выполните: '' rabbitmqctl add_user zbx_monitor <ПАРОЛЬ> '' rabbitmqctl set_permissions -p / zbx_monitor %% "" "" ".*"%% rabbitmqctl set_user_tags zbx_monitor monitoring Если кластер состоит из нескольких нод, рекомендуется назначить шаблон кластера на отдельный хост балансировки. В случае одно нодовой инсталляции, шаблон кластера можно назначить на узел сети с шаблоном нод. |
MySQL by Zabbix agent | {$MYSQL.HOST} - имя хоста или IP адрес MySQL хоста или контейнера (по умолчанию: 127.0.0.1 (с 6.0.8)/localhost (до 6.0.8)) {$MYSQL.PORT} - порт сервиса базы данных (по умолчанию: 3306) |
1. Если необходимо, добавьте путь к утилитам mysql и mysqladmin в глобальную переменную среды PATH. 2. Скопируйте template_db_mysql.conf файл с templates директории Zabbix в директории с конфигурацией Zabbix агента (по умолчанию /etc/zabbix/zabbix_agentd.d/) и перезапустите Zabbix агента.3. Создайте MySQL пользователя zbx_monitor . Чтобы разрешить требуемые привилегии пользователю, выполните:GRANT USAGE,REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON %% *.* TO '<имя_пользователя>'@'%';%% (для получения более подробных сведений смотрите документацию к MYSQL). 4. Создайте .my.cnf в домашней директории Zabbix агента для Linux (по умолчанию /var/lib/zabbix) или my.cnf в c:\ для Windows. Этот файл должен содержать три строки:[client] ''user='zbx_monitor' '' ''password='<пароль>' '' |
PostgreSQL | {$PG.DB} - имя базы данных для подключения к серверу (по умолчанию: postgres) {$PG.HOST} - хост сервера базы данных или директория с сокетом (по умолчанию:127.0.0.1) {$PG.PORT} - порт сервера базы данных (по умолчанию: 5432) {$PG.USER} - имя пользователя базы данных (по умолчанию: zbx_monitor) |
1. Создайте пользователя zbx_monitor с правами только чтения для доступа к PostgreSQL серверу. Для PostgreSQL 10 или новее, выполните:CREATE USER zbx_monitor WITH PASSWORD '<ПАРОЛЬ>' INHERIT; GRANT pg_monitor TO zbx_monitor; Для более старых версий PostgreSQL выполните: CREATE USER zbx_monitor WITH PASSWORD '<ПАРОЛЬ>'; GRANT SELECT ON pg_stat_database TO zbx_monitor; 2. Скопируйте postgresql/ в домашнюю директорию Zabbix агента (/var/lib/zabbix/).3. Скопируйте template_db_postgresql.conf с templates директории Zabbix в директорию конфигурации Zabbix агента (/etc/zabbix/zabbix_agentd.d/) и перезапустите Zabbix агента.4. Измените pg_hba.conf , чтобы разрешить подключения с Zabbix агента (для получения более подробных сведений смотрите документацию по PostgreSQL).Примеры строк: host all zbx_monitor 127.0.0.1/32 trust host all zbx_monitor 0.0.0.0/0 md5 host all zbx_monitor ::0/0 md5 5. Для мониторинга удаленного сервера создайте .pgpass файл в домашней директории Zabbix агента (/var/lib/zabbix/) и добавьте строки с информацией о экземпляре, порте, базе данных и пароле (для получения более подробной информации смотрите документацию по PostgreSQL).Примеры строк: <УДАЛЕННЫЙ_ХОСТ1>:5432:postgres:zbx_monitor:<ПАРОЛЬ> *:5432:postgres:zbx_monitor:<ПАРОЛЬ> |