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

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


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

  1. Шаг 1. Установите веб-сервер Nginx
  2. Шаг 2. Установите инструмент мониторинга Netdata в Ubuntu 16.04
  3. Шаг 3. Включите модуль Nginx stub_status
  4. Шаг 4. Настройте Netdata для мониторинга Nginx
  5. Шаг 5. Настройка брандмауэра UFW
  6. Шаг 6. Тестирование
  7. Справочник

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

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

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

  1. Установите веб-сервер Nginx.
  2. Установите средство мониторинга Netdata в Ubuntu 16.04.
  3. Включите модуль Nginx stub_status.
  4. Настройте Netdata для мониторинга Nginx.
  5. Настройте брандмауэр UFW.
  6. Тестирование.

Предпосылка

  • Сервер Ubuntu 16.04
  • Привилегии root

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

Первый шаг, который нам нужно сделать, это установить веб-сервер Nginx из репозитория. Обновите репозиторий Ubuntu перед установкой Nginx с помощью команды apt update.

apt update

Установите Nginx из репозитория Ubuntu, используя приведенную ниже команду apt install.

apt install -y nginx

Когда установка будет завершена, запустите Nginx и добавьте его для автоматического запуска во время загрузки с помощью команд systemctl.

systemctl start nginx
systemctl enable nginx

Веб-сервер работает, проверьте его с помощью curl.

curl -I localhost

Убедитесь, что у вас есть статус HTTP 200 OK, как на скриншоте ниже.

Установлен веб-сервер Nginx.

Шаг 2. Установите инструмент мониторинга Netdata в Ubuntu 16.04.

На этом этапе мы установим инструмент мониторинга Netdata из исходного кода. Я установлю его вручную, используя предоставленный установщик. Перед установкой Netdata нам нужно установить некоторые необходимые пакеты.

Установите пакеты, необходимые для установки Netdata, с помощью приведенной ниже команды apt install.

apt install -y zlib1g-dev uuid-dev libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkg-config curl

Когда все пакеты будут установлены, загрузите исходный код Netdata с github с помощью команды git.

git clone https://github.com/firehol/netdata.git --depth=1

Перейдите в каталог netdata и запустите скрипт установки netdata-installer.sh с привилегиями sudo.

cd netdata/
sudo ./netdata-installer.sh

Нажмите Enter, чтобы продолжить установку Netdata.

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

Инструмент мониторинга Netdata предоставляет служебный скрипт для системы systemd. Запустите netdata и добавьте его для автоматического запуска во время загрузки с помощью приведенных ниже команд systemctl.

systemctl start netdata
systemctl enable netdata

По умолчанию он работает на порту 19999, проверьте порт с помощью netstat и убедитесь, что порт 19999 находится в состоянии LISTEN.

netstat -plntu

Инструмент мониторинга Netdata был установлен.

Шаг 3. Включите модуль Nginx stub_status

Для мониторинга веб-сервера Nginx с помощью инструмента мониторинга Netdata нам потребуется дополнительная настройка. Во-первых, мы должны включить модуль nginx stub_status в конфигурацию виртуального хоста.

Прежде чем редактировать конфигурацию виртуального хоста, убедитесь, что у вас установлена версия nginx с модулем stub_status. Проверьте это с помощью команды ниже.

nginx -V

Убедитесь, что у вас есть модуль stub_status, как показано ниже.

Затем перейдите в каталог конфигурации nginx и отредактируйте файл виртуального хоста по умолчанию с помощью редактора vim.

cd /etc/nginx/sites-available/
vim default

Вставьте приведенную ниже конфигурацию в блок 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 включен, проверьте его с помощью команды netstat ниже.

curl http://127.0.0.1/stub_status

И вы получите результат, как показано ниже.

Шаг 4. Настройте Netdata для мониторинга Nginx

Netdata предоставляет модули Python для мониторинга наших установленных приложений в системе, включая веб-серверы Nginx. Для мониторинга Nginx с помощью Netdata нам нужен модуль Nginx stub_status, и он уже включен.

Теперь перейдите в каталог конфигурации netdata. Затем отредактируйте файл nginx.conf в каталоге python.d.

cd /etc/netdata/
vim python.d/nginx.conf

Убедитесь, что у вас есть конфигурация, как показано ниже.

localhost:
  name : 'local'
  url  : 'http://localhost/stub_status'

Сохраните файл и выйдите из vim.

Теперь перезапустите Netdata с помощью systemctl.

systemctl restart netdata

Настройка Netdata для мониторинга Nginx завершена.

Шаг 5. Настройте брандмауэр UFW.

В этом руководстве я включу UFW брандмауэра Ubuntu. Я открою порты HTTP и HTTPS, а затем открою новый порт 19999 для доступа к Netdata Dashboard.

Убедитесь, что вы установили пакет брандмауэра UFW, если нет, используйте приведенную ниже команду для его установки.

apt install -y ufw

Теперь откройте порты для ssh, http, https и netdata port 19999, используя приведенные ниже команды ufw allow.

ufw allow ssh
ufw allow http
ufw allow https
ufw allow 19999/tcp

Затем запустите брандмауэр UFW и добавьте его для автоматического запуска во время загрузки.

ufw enable

Введите y для yes и нажмите Enter.

Когда вы закончите с этим, проверьте состояние брандмауэра, как показано ниже.

ufw status

И вы получите новые порты в списке, как показано ниже.

Шаг 6 — Тестирование

Откройте браузер и введите адрес сервера с портом 19999.

Вы должны увидеть панель мониторинга Netdata.

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

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

Ссылка

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