LINUX

Cómo instalar Nginx Amplify Agent en CentOS 7

Nginx Amplify Agent es una poderosa herramienta de monitoreo de Nginx escrita en Python. Su función es recopilar varias métricas y metadatos y enviarlos de forma segura al backend para su almacenamiento y visualización. Después de la instalación adecuada, le proporciona la interfaz web NGINX Amplify y debería ver métricas en tiempo real para sus sistemas monitoreados. También te ofrece las siguientes características:

  • Enumere todos los servidores monitoreados y el SLA brinda una verificación de 30 segundos del estado de NGINX.
  • Un conjunto estándar de gráficos para métricas de Nginx, PHP-FPM y SO.
  • Una descripción general de su archivo de configuración NGINX y alertas en caso de problemas de configuración comunes.
  • Un panel de control fácil de administrar para poseer sus gráficos
  • Notificaciones sobre comportamiento anormal de Nginx.

Esta aplicación es compatible con todas las distribuciones de sistemas operativos populares, a saber, Amazon Linux, CentOS, RHEL, Debian y Ubuntu. En este artículo, explicaré cómo instalar esta aplicación en un servidor CentOS 7.

Instalación de Amplify Agent

Antes de continuar con los pasos de instalación, deberá dirigirse a amplify.nginx.com y regístrese para obtener una cuenta.

Ahora puede iniciar sesión en su cuenta con las credenciales creadas. Se le proporcionará un conjunto de pasos de instalación para continuar. Suponiendo que ya tiene un servidor Nginx instalado y en ejecución. Comencemos con nuestros pasos de instalación de Amplify Agent a continuación:

Paso 1. SSH en su servidor que necesita para monitorear y descargar el script de instalación como se muestra a continuación:

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

Paso 2. Ejecute el siguiente comando como root para instalar el paquete Amplify Agent. Puede obtener esta API_KEY en la ventana emergente de instrucciones de instalación en Amplify Dashboard. Cada cuenta individual tiene una clave de API única. Por motivos de seguridad, he marcado claves de API en «***»

# API_KEY='***' sh ./install.sh
Installed:
 nginx-amplify-agent.x86_64 0:0.47-1.el7

Complete!

8. Installing nginx-amplify-agent package ... done.
 9. Building configuration file ... done.
 10. Checking if sudo -u nginx -g nginx can be used for tests ... done.
 11. Checking if euid 997(nginx) can find root processes ... ok.
 12. Checking if euid 997(nginx) can access I/O counters for nginx ... ok.
 13. Checking connectivity to the receiver ... ok.
 14. Checking system time ... ok.

OK, everything went just fine!

Paso 3. Verifique el estado del agente de la siguiente manera:

# ps ax | grep -i 'amplify-'
13536 ? S 0:01 amplify-agent

Estos comandos se pueden utilizar para iniciar / detener el agente.

# service amplify-agent start
# service amplify-agent stop
# service amplify-agent restart

Puede agregar nuevos sistemas a este agente haciendo clic en la opción «Nuevo sistema» en la esquina inferior derecha de la ventana principal. Puede seguir las mismas instrucciones para instalar el agente allí.

Actualización de Amplify Agent

Necesitamos comprobar periódicamente si hay actualizaciones e instalar la última versión estable del agente. Puedes hacerlo con un solo comando:

# yum makecache && 
yum update nginx-amplify-agent

Configurar el agente

NGINX Amplify Agent tiene su archivo de configuración ubicado en/etc/amplify-agent/agent.conf. Es realmente importante que el agente y las instancias de NGINX en ejecución utilicen la misma ID de usuario, de modo que el agente pueda recopilar correctamente todas las métricas de NGINX. De forma predeterminada, utilizará el ID de usuario del usuario nginx para establecer su ID de usuario efectivo, que se crea automáticamente durante la configuración. Si la directiva de usuario aparece en la configuración de NGINX, el agente seleccionará al usuario especificado en la configuración de NGINX para su ID de usuario efectivo (por ejemplo, www-data).

Incluso puede especificar manualmente el ID de usuario que el agente debe utilizar para su ID de usuario efectivo en el archivo de configuración bajo el [nginx] sección aquí.

[nginx]
user =
configfile = /etc/nginx/nginx.conf

Configuración de la URL para stub_status o Extended Status

Cuando el agente encuentra una instancia de NGINX en ejecución, detecta automáticamente las ubicaciones stub_status de la configuración de NGINX. O puede usar la opción de configuración stub_status para anular la URL stub_status como se muestra a continuación:

[nginx]
..
stub_status = http://127.0.0.1/nginx_status

Configuración de Syslog

El agente puede recopilar los archivos de registro de NGINX a través de syslog. Esto podría ser útil cuando no mantiene los registros de NGINX en el disco o cuando monitorea un entorno de contenedor como Docker con NGINX Amplify.

Para configurar el agente para syslog, modifique la siguiente directiva en /etc/amplify-agent/agent.conf:
[listeners]
keys = syslog-default

[listener_syslog-default]
dirección = * // Especifica el IP: puerto aquí como este 127.0.0.1:12000 // *

Reinicie el agente para volver a cargar la configuración y comience a escuchar en la dirección IP y el puerto especificados. En la instalación predeterminada, recopila toda la información de registro del archivo de configuración de Nginx.

Configuración de métricas adicionales de Nginx

Esto puede recopilar una serie de métricas útiles adicionales. Te lo haré saber para habilitar algunas de las métricas importantes para completar su configuración. Podemos agregar más gráficos predefinidos agregando estas métricas. Con la configuración de formato de registro requerida, podrá crear gráficos personalizados más específicos. Veamos cómo podemos agregar un conjunto extendido de variables NGINX al formato de registro de acceso. Puede agregar un nuevo formato de registro o modificar el existente y usarlo con las directivas access_log en su configuración de NGINX. Modifiqué las directivas access_log en mi configuración de NGINX con los siguientes cambios.

http {
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' ;

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

Y ahora puede configurar el nivel de registro error.log para advertir de la siguiente manera:

error_log /var/log/nginx/error.log warn;

Puede eliminar el proceso Nginx existente usando (kill -HUP `cat / var / run / nginx.pid`) y comenzar de nuevo o volver a cargar su configuración actual de Nginx (servicio de recarga de nginx) para guardar estos cambios. Puede obtener más información sobre la lista de métricas adicionales que se pueden recopilar de los archivos de registro de NGINX aquí.

¡¡Eso es!! Instalamos Amplify Agent con éxito y configuramos nuestro servidor para monitoreo. Puede obtener una descripción general del estado de nuestro servidor supervisado (104.237.159.96) en la interfaz web iniciando sesión en su Ampliar cuenta como en la instantánea:

Amplificar descripción general

Estado de uso del sistema

Puede navegar por cada pestaña para obtener toda la información sobre los servidores agregados.

Desinstalación de Amplify Agent

Podemos eliminar por completo un objeto previamente monitoreado siguiendo estos pasos:

Paso 1. Desinstale el agente usando este comando como se muestra a continuación:

#yum remove nginx-amplify-agent

Paso 2. Eliminar objetos de la interfaz web

Para eliminar un servidor de la interfaz web de Amplify. Puede encontrarlo en el Inventario en la interfaz web y elegir el [i] icono. Puede eliminar los objetos necesarios de la ventana emergente que aparece a continuación de esta manera.

Seleccionar el objeto
Eliminar objeto

Y finalmente, revise la página de Alertas y elimine / silencie las reglas irrelevantes establecidas para los objetos.

 Finalizando

NGINX Amplify Agent es una poderosa herramienta para el monitoreo integral de NGINX. Podemos analizar de forma proactiva y solucionar problemas relacionados con aplicaciones web basadas en NGINX. Nos ayuda a realizar un seguimiento de los sistemas que ejecutan Nginx. También podemos utilizarlo para los siguientes fines:

  • Mejore y optimice el rendimiento de Nginx con consejos y recomendaciones inteligentes
  • Visualice e identifique cuellos de botella en el rendimiento de Nginx, servidores sobrecargados o posibles ataques DDoS
  • Planificar la capacidad y el rendimiento de las aplicaciones web

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar