Поиск по сайту:

Как контролировать Nginx с помощью Netdata в CentOS 7


На этой странице

  1. Что мы будем делать
  2. Предпосылки
  3. Шаг 1. Установите веб-сервер Nginx.
  4. Шаг 2. Включите модуль Nginx stub_status
  5. Шаг 3. Установите Netdata на CentOS 7
  6. Шаг 4. Мониторинг Nginx с помощью Netdata
  7. Шаг 5. Тестирование
  8. Предпочтения

Netdata — это система мониторинга с открытым исходным кодом для серверов Linux. Он обеспечивает мониторинг производительности и работоспособности в режиме реального времени с красивой приборной панелью и аналитикой. Netdata должен работать в любом дистрибутиве Linux — он был протестирован на Alpine Linux, Arch Linux, CentOS, Ubuntu и т. д. Он предлагает инструменты мониторинга работоспособности в реальном времени для ваших серверов, ЦП, использования памяти, сетей IPv4 и IPv6 и пользовательских приложений, таких как Nginx. , fail2ban, MySQL, MongoDB и т. д.

В этом уроке я покажу вам, как отслеживать Nginx с помощью Netdata. В этом руководстве рассматривается установка веб-сервера Nginx, включение модуля stub_status и установка Netdata в CentOS 7.

Что мы будем делать

  1. Установите веб-сервер Nginx.
  2. Включите модуль Nginx stub_status.
  3. Установите Netdata на CentOS 7.
  4. Мониторинг Nginx с помощью Netdata.
  5. Тестирование.

Предпосылки

  • Сервер CentOS 7
  • Привилегии root

Шаг 1. Установите веб-сервер Nginx.

На этом этапе мы установим веб-сервер Nginx из репозитория EPEL (Extra Packages for Enterprise 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. Включите модуль Nginx stub_status

Чтобы отслеживать 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;
        # Security: Only allow access from the IP below.
        allow 127.0.0.1;
        # Deny anyone else
        deny all;
    }

Сохранить и выйти.

Теперь проверьте конфигурацию nginx и убедитесь в отсутствии ошибок. Затем перезапустите nginx.

nginx -t
systemctl restart nginx

Модуль Nginx stub_status был включен — мы можем проверить его с помощью команды 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, чтобы продолжить установку Nedata.

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

Netdata была установлена на CentOS 7 и работает на порту 19999.

Откройте порт с помощью приведенной ниже команды firewall-cmd.

sudo firewall-cmd --permanent --add-port=19999/tcp
sudo firewall-cmd --reload

Netdata предоставляет сценарий служб 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.

Перейдите в каталог netdata python.d и отредактируйте файл конфигурации 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.

http://192.168.1.11:19999/

И вы получите панель инструментов Netdata.

Нажмите на локальный nginx справа и посмотрите активные подключения Nginx, запросы, статус и скорость подключения.

Netdata был установлен на сервере CentOS 7, а веб-сервер Nginx отслеживается с помощью Netdata.

предпочтение

  • https://github.com/firehol/netdata/wiki/