Мониторинг. · 4 min read · Nov 20, 2025
Как мониторить Nginx с помощью Netdata на CentOS 7
Netdata — это система мониторинга с открытым исходным кодом для серверов Linux. Она предоставляет мониторинг производительности и состояния в реальном времени с красивой панелью и аналитикой. Netdata должна работать на любой дистрибутиве Linux — была протестирована на Alpine Linux, Arch Linux, CentOS, Ubuntu и т.д. Она предлагает инструменты мониторинга состояния в реальном времени для ваших серверов, использования CPU, памяти, сетей IPv4 и IPv6 и пользовательских приложений, таких как Nginx, fail2ban, MySQL, MongoDB и т.д.
В этом руководстве я покажу вам, как мониторить Nginx с помощью Netdata. Это руководство охватывает установку веб-сервера Nginx, включение модуля ‘stub_status’ и установку Netdata на CentOS 7.
Что мы будем делать
- Установить веб-сервер Nginx.
- Включить модуль ‘stub_status’ Nginx.
- Установить Netdata на CentOS 7.
- Мониторить Nginx с помощью Netdata.
- Тестирование.
Предварительные требования
- Сервер CentOS 7
- Привилегии root
Шаг 1 - Установка веб-сервера Nginx
На этом шаге мы установим веб-сервер Nginx из репозитория EPEL (Дополнительные пакеты для корпоративного Linux). Перед установкой Nginx убедитесь, что репозиторий EPEL установлен на вашем сервере.
Если у вас его нет, вы можете установить его с помощью команды ниже.
yum -y install epel-releaseДалее установите Nginx с помощью команды yum ниже.
yum -y install nginxИ если установка завершена, запустите службу и включите ее для автоматического запуска при загрузке системы с помощью команд systemctl ниже.
systemctl start nginx
systemctl enable nginxПосле установки откройте порты HTTP и HTTPS с помощью команды firewall-cmd ниже.
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --reload
Примечание: Если у вас нет команды firewall-cmd, вы можете установить пакеты firewalld из репозитория.
yum -y install firewalldВеб-сервер Nginx установлен.
Шаг 2 - Включение модуля stub_status Nginx
Чтобы мониторить Nginx с помощью Netdata, мы должны включить модуль ‘stub_status’, отредактировав конфигурацию. Убедитесь, что ваша версия Nginx имеет модуль с именем ‘stub_status’, проверьте модуль с помощью команды ниже.
nginx -VВы должны получить результат, похожий на следующий.
Убедитесь, что у вас есть модуль ‘stub_status’ в списке.
Далее отредактируйте файл конфигурации nginx ‘nginx.conf’, чтобы включить модуль ‘stub_status’. Перейдите в директорию ‘/etc/nginx/‘ и отредактируйте конфигурацию с помощью vim.
cd /etc/nginx/
vim nginx.confВставьте следующую конфигурацию внутри блока ‘server {}‘.
location /stub_status {
stub_status;
# Безопасность: Разрешить доступ только с IP ниже.
allow 127.0.0.1;
# Запретить всем остальным
deny all;
}
Сохраните и выйдите.
Теперь протестируйте конфигурацию nginx и убедитесь, что ошибок нет. Затем перезапустите nginx.
nginx -t
systemctl restart nginxМодуль ‘stub_status’ Nginx был включен — мы можем проверить это с помощью команды curl, как показано ниже.
curl http://127.0.0.1/stub_statusКогда он включен, вы можете увидеть результат, как показано ниже.
Шаг 3 - Установка Netdata на CentOS 7
На этом шаге мы установим Netdata на сервер CentOS 7. Перед установкой Netdata нам нужно установить некоторые пакеты для установки Netdata.
Установите пакеты, необходимые для установки Netdata, с помощью следующей команды yum.
yum -y install zlib-devel libuuid-devel libmnl-devel gcc make git autoconf autogen automake pkgconfig curl jq nodejsДалее загрузите исходный код Netdata с помощью следующей команды git.
cd ~
git clone https://github.com/firehol/netdata.git --depth=1
Перейдите в директорию netdata и запустите скрипт установки Netdata с правами sudo.
cd netdata/
sudo ./netdata-installer.shНажмите ‘Enter’, чтобы продолжить установку Netdata.

И когда установка завершится, вы увидите результат, как показано ниже.

Netdata была установлена на CentOS 7 и работает на порту ‘19999’.
Откройте порт с помощью команды firewall-cmd ниже.
sudo firewall-cmd --permanent --add-port=19999/tcp
sudo firewall-cmd --reloadNetdata предоставляет скрипт службы systemd, так что вы можете управлять Netdata с помощью команды systemctl. Перезапустите netdata и включите его для автоматического запуска каждый раз при загрузке системы.
systemctl restart netdata
systemctl enable netdataПроверьте открытые порты сервера — убедитесь, что порт 19999 находится в состоянии ‘LISTEN’.
netstat -plntu
Инструмент мониторинга Netdata был установлен на CentOS 7.
Шаг 4 - Мониторинг Nginx с помощью Netdata
На этом этапе Nginx установлен, модуль stub_status включен, и установка Netdata завершена. На этом шаге мы хотим мониторить веб-сервер nginx с помощью Netdata. Мониторинг запросов, активных соединений и состояния.
Netdata предоставляет модули для мониторинга системных приложений. Есть некоторые приложения, такие как Apache, Nginx, MongoDB и т.д., которые используют модули python для мониторинга с помощью Netdata.
Перейдите в директорию ‘python.d’ netdata и отредактируйте файл конфигурации nginx.conf с помощью vim.
cd /etc/netdata/python.d/
vim nginx.confПерейдите к последней строке и убедитесь, что у вас есть конфигурация, как показано ниже.
localhost:
name : 'local'
url : 'http://localhost/stub_status'
Сохраните и выйдите.
Теперь перезапустите службу netdata с помощью команды systemctl.
systemctl restart netdataШаг 5 - Тестирование
Откройте веб-браузер и посетите IP-адрес сервера с портом 19999.
И вы получите панель управления Netdata.

Нажмите на ‘nginx local’ справа и посмотрите активные соединения Nginx, запросы, состояние и скорость соединения.

Netdata была установлена на сервере CentOS 7, и веб-сервер Nginx мониторится с помощью Netdata.
Предпочтения
Get new posts in your inbox
No spam. Unsubscribe anytime.