Настройка и использование NGINX Amplify

Обновлено и опубликовано Опубликовано:

В двух словах, NGINX Amplify — сервис для мониторинга как самого NGINX, так и его компонентов, составляющих веб-сервис. Развертывание системы состоит из нескольких шагов:

  1. Регистрация на портале сервиса.
  2. Установка агента на сервер.
  3. Настройка NGINX.

Регистрация на сервисе

Заходим на портал NGINX Amplify и создаем учетную запись или используем аккаунт Google:

Создаем новый аккаунт или входим с использованием учетной записи Google

После создания и входа учетной записи, мы увидим инструкцию по установке агента:

Инструкция по установке агента nginx amplify

Установка агента

Подключаемся к нашему серверу по SSH и, согласно инструкции, скачиваем файл install:

wget https://github.com/nginxinc/nginx-amplify-agent/raw/master/packages/install.sh

Согласно инструкции на портале, запускаем установку:

API_KEY='47e5827b88a0067a4e8207b38731810f' sh ./install.sh

* где 47e5827b88a0067a4e8207b38731810f — ключ, который мы получили после регистрации.

Система предложит установить недостающие компоненты — соглашаемся. Готово.

Добавляем агента в автозагрузку.

Для CentOS:

chkconfig amplify-agent on

Для Ubuntu:

update-rc.d amplify-agent defaults

Настройка NGINX

Возвращаемся на портал и кликаем по Continue. Запуститься процесс настройки.

После настройки системы мы увидим следующие подсказки по настройке веб-сервера NGINX:

Инструкция по настройке nginx

Создаем дополнительный конфигурационный файл в NGINX.

Для CentOS:

vi /etc/nginx/conf.d/stub_status.conf

Для Ubuntu:

vi /etc/nginx/sites-enabled/stub_status.conf

Со следующим содержимым:

server {
        listen 127.0.0.1:80;
        server_name 127.0.0.1;
        location /nginx_status {
                stub_status on;
                allow 127.0.0.1;
                deny all;
        }
}

Проверяем корректность настройки:

nginx -t

Перезапускаем nginx:

systemctl restart nginx

На портале NGINX Amplify снова нажимаем Continue. Ждем.

Мы увидим последнюю подсказку — либо настраиваем расширенные метрики, либо кликаем по Finish.

Дополнительные метрики

Для получения большей информации, необходимо поменять формат логов в NGINX.

Открываем основной конфигурационный файл NGINX:

vi /etc/nginx/nginx.conf

Создаем новый формат логов, дописав:

log_format  main_ext  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for" '
                      '"$host" sn="$server_name" '
                      'rt=$request_time '
                      'ua="$upstream_addr" us="$upstream_status" '
                      'ut="$upstream_response_time" ul="$upstream_response_length" '
                      'cs=$upstream_cache_status' ;

* где main_ext — название формата.

И применяем созданный формат, отредактировав access_log:

access_log /var/log/nginx/access.log main_ext;

Проверяем настройки и перезапускаем веб-сервер:

nginx -t

systemctl restart nginx

# Серверы # Интернет # NGINX # Linux
Дмитрий Моск — частный мастер
Была ли полезна вам эта инструкция?

Да            Нет