news
Serverspace в «Рейтинге провайдеров IaaS Enterprise 2023» от Market.CNews
VS
15 июня 2023
Обновлено 21 июля 2023

Мониторинг Nginx с помощью Zabbix

Nginx Zabbix Мониторинг

Nginx – это широко используемый веб-сервер, который часто используется для обслуживания статического контента, обратного прокси или балансировки нагрузки веб-трафика. Он известен своей надежностью, гибкостью и высокой производительностью. Как и с любым сервером, важно контролировать Nginx, чтобы убедиться, что он функционирует должным образом, и решать любые проблемы, которые могут возникнуть. В этой статье мы рассмотрим, как мониторить Nginx с помощью Zabbix для обнаружения и устранения проблем с вашим сервером Nginx.

Подготовка

Прежде чем мы начнем изучать процесс мониторинга Nginx с помощью Zabbix, необходимо убедиться, что у нас есть все необходимое:

  • Сервер с установленным Nginx, за которым вы хотите наблюдать
  • Запущенный сервер Zabbix
  • Установленный и настроенный агент Zabbix на сервере, на котором работает Nginx.

Настройка Nginx

Откройте файл /etc/nginx/conf.d/stub_status.conf любым удобным вам редактором и вставьте следующий текстовый блок:

server {
listen 127.0.0.1:80;
server_name 127.0.0.1;
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}
location = /basic_status {
stub_status;
allow 127.0.0.1;
allow ::1;
deny all;
}
}

Conf.d file
Эти настройки позволят серверу генерировать базовую информацию о состоянии на странице /basic_status, доступной только с этого же сервера, чтобы наш агент мог получить ее.
Теперь давайте проверим, работает ли процесс Nginx с новыми настройками, выполнив следующие команды:

nginx -t
systemctl restart nginx
systemctl status nginx

Nginx status

Затем давайте проверим, работает ли новая страница состояния с помощью curl:

Curl result

curl http://127.0.0.1/basic_status

Настройка логов

Вы должны проверить, генерирует ли Nginx необходимые для Zabbix логи, проверив настройки логирования в файле /etc/nginx/nginx.conf

log conf Теперь, чтобы Zabbix смог работать с логами, давайте закомментируем оригинальную строку access_log и вставим этот фрагмент:

error_log /var/log/nginx/error.log notice; access_log /var/log/nginx/access.log main; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';

Он должен выглядеть примерно так: Log end result Проверьте и перезапустите Nginx еще раз, и приступим к настройке Zabbix.

Настройка Zabbix

Предполагая, что все предыдущие инструкции выполнены, вам теперь нужно только создать хост для этого сервера и добавить к нему Nginx с помощью шаблона Zabbix agent, или добавить его к уже существующему. Назначьте шаблон хосту с установленным Nginx, перейдя в Configuration → Hosts → Выберите хост → Templates → Add.
Zabbix-nginx6 adding template
Если все правильно, вы сможете работать с данными, предоставляемыми шаблоном:

  • Общие показатели: использование процессора и памяти, количество открытых подключений к серверу.
  • Метрики запросов: среднее время отклика на запрос, процент запросов, приводящих к ошибке, количество запросов, обрабатываемых Nginx в секунду.
  • Метрики SSL: количество обработанных Nginx рукопожатий в секунду, количество поддерживаемых Nginx шифров и количество ошибок сертификатов, с которыми сталкивается Nginx.
  • Время работы: отслеживает, как долго Nginx работает без простоев.

Graphs
Items
Шаблон Zabbix также включает ряд триггеров, которые уведомляют вас о проблемах с вашим сервером Nginx. Эти триггеры оповещают вас о таких проблемах, как высокая загрузка процессора, высокое использование памяти, высокий уровень ошибок и простои. Например:

  • Триггер высокой загрузки процессора: этот триггер будет оповещать вас, когда использование процессора на вашем сервере Nginx превысит определенный порог.
  • Триггер высокого использования памяти: этот триггер будет оповещать вас, когда использование памяти на вашем сервере Nginx превысит определенный порог.
  • Триггер высокого уровня ошибок: этот триггер будет оповещать вас, когда уровень ошибок на вашем сервере Nginx превысит определенный порог.
  • Триггер простоя: этот триггер будет оповещать вас, если ваш сервер Nginx перестанет работать.

Triggers

Вывод

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

Оценка:
4 из 5
Аverage rating : 4.5
Оценок: 2
191028 Санкт-Петербург Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99
700 300
ООО «ИТГЛОБАЛКОМ ЛАБС»
700 300

Вам также может быть интересно...