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

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


Netdata — это бесплатный, масштабируемый, адаптивный, настраиваемый, расширяемый и мощный инструмент с открытым исходным кодом для мониторинга производительности и работоспособности систем Linux, который собирает и визуализирует показатели. Он работает на настольных компьютерах, персональных компьютерах, серверах, встроенных устройствах, IoT и т. д.

Читайте также: как отслеживать производительность Apache с помощью Netdata в CentOS 7

Это инструмент мониторинга работоспособности системы, который позволяет вам следить за тем, как работают ваши системы и приложения или службы, такие как веб-серверы, или почему они работают медленно или плохо себя ведут. Это чрезвычайно эффективно и результативно с точки зрения использования процессора, а также других системных ресурсов.

В этой статье мы объясним, как отслеживать производительность веб-сервера Nginx HTTP с помощью Netdata в CentOS 7 или RHEL 7. > Распространение.

К концу этого руководства вы сможете просматривать визуализации активных соединений, запросов, состояния и скорости соединения вашего веб-сервера Nginx.

Требования:

  1. Сервер CentOS 7 или сервер RHEL 7 с минимальной установкой.
  2. Установка HTTP-сервера Nginx с включенным модулем ngx_http_stub_status_module.

Шаг 1. Установите Nginx на CentOS 7.

1. Сначала включите репозиторий EPEL, а затем установите сервер Nginx HTTP из репозиториев программного обеспечения EPEL с помощью менеджера пакетов YUM.

yum install epel-release
yum install nginx 

2. Затем проверьте версию Nginx, установленную в вашей системе. Она должна быть скомпилирована с модулем stub_status, указанным - -with-http_stub_status_module аргумент конфигурации, как показано на следующем снимке экрана.

nginx -V

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

systemctl status nginx
systemctl enable nginx
systemctl status nginx

4. Если вы используете динамический брандмауэр firewalld, вам необходимо открыть порты 80 (HTTP) и 443 ( HTTPS), который прослушивает веб-сервер для запросов на подключение клиентов.

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload 

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

5. Теперь включите модуль stub_status, который Netdata использует для сбора показателей с вашего веб-сервера Nginx.

vim /etc/nginx/nginx.conf

Скопируйте и вставьте приведенную ниже конфигурацию location в блок сервера, как показано на снимке экрана.

location /stub_status {
 	stub_status;
 	allow 127.0.0.1;	#only allow requests from localhost
 	deny all;		#deny all other hosts	
 }

6. Затем проверьте новую конфигурацию nginx на наличие ошибок и перезапустите службу nginx, чтобы применить последние изменения.

nginx -t
systemctl restart nginx

7. Затем проверьте страницу состояния nginx с помощью инструмента командной строки curl.

curl http://127.0.0.1/stub_status

Шаг 3. Установите Netdata на CentOS 7.

8. Существует однострочный сценарий оболочки, который можно использовать для запуска установки последней версии netdata из репозитория github. Этот сценарий загрузит другой сценарий для обнаружения вашего дистрибутива Linux и установит необходимые системные пакеты для создания сетевых данных; после этого получает последние исходные файлы netdata; собирает и устанавливает его.

Используйте команду ниже, чтобы запустить скрипт Kickstarter, опция all позволяет установить необходимые пакеты для всех плагинов netdata, включая те, что для Nginx.

bash <(curl -Ss https://my-netdata.io/kickstart.sh) all

Если вы не получаете доступ к системе как root, вам будет предложено ввести пароль пользователя для команды sudo, а также вам будет предложено подтвердить определенные операции, нажав [Ввести].

8. После сборки и установки netdata сценарий автоматически запустит службу netdata через диспетчер служб systemd и позволит ей запускаться при загрузке системы. Netdata по умолчанию прослушивает порт 19999.

9. Затем откройте порт 19999 в брандмауэре, чтобы получить доступ к веб-интерфейсу netdata.

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

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

9. Конфигурация netdata для плагина Nginx хранится в файле конфигурации /etc/netdata/python.d/nginx.conf, написанном на YaML. > формат.

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

Конфигурации по умолчанию достаточно, чтобы начать мониторинг вашего веб-сервера Nginx.

Если вы внесли какие-либо изменения в файл конфигурации, после прочтения документации перезапустите службу netdata, чтобы изменения вступили в силу.

systemctl restart netdata

Шаг 5. Мониторинг производительности Nginx с помощью Netdata

10. Теперь откройте веб-браузер и используйте следующий URL-адрес для доступа к веб-интерфейсу netdata.

http://domain_name:19999
OR
http://SERVER_IP:19999

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

Репозиторий Netdata Github: https://github.com/firehol/netdata

Вот и все! Netdata — это распределенный инструмент мониторинга производительности и работоспособности в режиме реального времени для систем Linux. В этой статье мы показали, как отслеживать производительность веб-сервера Nginx с помощью сетевых данных в CentOS 7. Используйте форму комментариев ниже, чтобы поделиться любыми вопросами или мыслями по поводу этого руководства.