Instalar Nginx Amplify en CentOS 8/RHEL 8 para monitorizar el rendimiento de la pila LEMP

Instalar Nginx Amplify en CentOS 8/RHEL 8 para monitorizar el rendimiento de la pila LEMP

13.12.2023
Autor: HostZealot Team
2 min.
116

Nginx Amplify es una herramienta perfecta para la monitorización de servidores web Nginx. Las peculiaridades de esta opción específica están en su capacidad para supervisar completamente la aplicación de pila LEMP. LEMP es una versión abreviada para PHP, Nginx, Linux y MySQL/MariaDB.

Este producto fue diseñado por Nginx. Inc. Amplify funciona recopilando y enviando los datos recibidos al servicio SaaS. La herramienta se considera realmente ligera y de código abierto. Si hablamos de la información específica que recoge, son tales como:

  • Datos de MariaDB/MySQL (actualización/inserción/selección de consultas, conexiones, etc.)
  • Datos de PHP-FPM (peticiones lentas, cola de conexiones, etc.)
  • Datos de Nginx (tráfico, peticiones, tiempo de respuesta, conexiones, etc.)
  • Métricas del sistema (tráfico de red, latencia de disco, uso de RAM, CPU, etc.)

La herramienta también puede ser útil para alertar sobre el comportamiento inusual y la mejora de la configuración de Nginx.

Configuración de Nginx Amplify en CentOS 8/RHEL 8

En primer lugar, los usuarios deben registrar sus cuentas en el sitio web oficial de esta herramienta y verificar con la ayuda de una dirección de correo electrónico. Lo siguiente es la instalación del agente en el servidor. Los recursos oficiales proporcionan un montón de recomendaciones útiles y comandos específicos que ayudarán con el proceso de instalación, por lo que todo lo que necesita hacer es copiarlos.

Hay 2 cosas que son importantes - ejecutar estos comandos a través de acceso root y Python2 es necesario. Una vez que tenga Python2, instale el script - ejecútelo - y compruebe el estado después de la instalación.

Configuración del módulo Stub_status de Nginx

El agente Nginx Amplify está recopilando datos del sistema inmediatamente después de la instalación. Para recibir otras métricas como Nginx, es necesario configurar stub_status. En primer lugar, crear un archivo de configuración. A continuación, agregue las siguientes líneas al contexto http{...}:

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;
        }


Eso es todo, ahora cierre este archivo con los cambios añadidos y vuelva a cargar.

Personalización de los formatos de registro de Nginx

El agente también puede funcionar recopilando datos de los archivos de registro. Con el formato por defecto, los datos son limitados. En caso de que necesite obtener información actualizada sobre el rendimiento, se recomienda crear un formato de registro personalizado.

En primer lugar, es necesario abrir el archivo de configuración. Encima de las directivas include, añada las líneas necesarias. Luego crea un formato de registro personalizado, nómbralo - APM, y rellena la información sobre upstream_header_time, request_time, upstream_connect_time, y otros. Luego cierre este archivo con los cambios realizados.

Para habilitar el registro de errores y accesos, agregue las siguientes 2 líneas al archivo de configuración del host virtual en el contexto del servidor {...}:

access_log /var/log/nginx/linuxbabe.com.access.log apm;
error_log /var/log/nginx/linuxbabe.com.error.log warn;

cierre el archivo con los cambios realizados. Ahora, todo debería funcionar como se requiere y Nginx Amplify tiene toda la información necesaria en los gráficos.

Cómo excluir su IP de los registros de acceso de Nginx

En algunos casos, es posible arruinar la credibilidad de los datos de Nginx por su actividad personal. Para excluir tales riesgos, se recomienda eliminar su IP personal en el registro de acceso.

Se necesita añadir las siguientes líneas al contexto http del archivo de configuración. Este número 23.56.32.23 debe ser cambiado en su IP real.

map $remote_addr $log_ip {
    "23.56.32.23 " 0;
     default 1;
}

El último paso será cambiar access_log como se menciona a continuación:

access_log /var/log/nginx/linuxbabe.com.access.log apm if=$log_ip;

Monitorización de su base de datos MariaDB/MySQL

Para empezar, cree un usuario en MySQL o MariaDB e inicie sesión en él. A continuación, es necesario crear un nuevo usuario para Nginx Amplify y cambiar la contraseña.

El siguiente paso es salir del servidor y habilitar el plugin de MySQL en el archivo de configuración de Amplify. Elija True y eso habilitará el plugin.

Después de que en [mysql] encontrar la línea que muestra el valor de unix_socket y contraseña y cambiar estos valores. El pass debe ser cambiado en el mismo que en el agente de Amplify y unix_socket debe ser el siguiente:

/var/lib/mysql/mysql.sock

Cierre el archivo y en un par de minutos el agente empezará a recoger datos.

Monitorización del rendimiento de PHP-FPM

Por defecto, el plugin PHP-FPM está habilitado. Sin embargo, para la recopilación de datos el estado de este plugin debe estar habilitado también. Comience abriendo el archivo de configuración del pool. A continuación, busque la línea mencionada a continuación y elimine el punto y coma:

 ;pm.status_path = /status

Exploración de la visión general de Amplify

La vista general incluye las características clave como el total de peticiones, el uso de CPU, los errores 5xx, el tráfico, el tiempo de petición y la puntuación de salud de la aplicación. Además, puede elegir un intervalo de tiempo, hay las siguientes opciones - 1h, 4h, 1d, 2d, y 1w. La tasa de puntuación de salud está totalmente correlacionada con el número de errores. En caso de que no haya ninguno, lo más probable es que obtengas el 100%. 

Visualización de datos con gráficos

En la sección Gráficos los datos están categorizados por Sistema, Nginx, MariaDB/MySQL, y PHP-FPM. Al hacer clic en cada categoría, obtendrá un par de gráficos en cada sección. Por ejemplo, Nginx proporcionará información sobre peticiones, conexiones, peticiones actuales y conexiones actuales. Además, la información se puede ordenar por horas, días y semanas. 

Navegación por los paneles de Nginx Amplify

Los cuadros de mando permiten crear cuadros y gráficos personalizables y mostrarlos según se necesite en una página. Los gráficos que se mostrarán se eligen individualmente, por lo que los usuarios pueden añadir absolutamente todo lo que quieran. Por ejemplo, es posible mostrar todos los datos sobre una determinada URL o se pueden mostrar todas las características de rendimiento para una mejor visualización.

Es algo realmente conveniente cuando se desea obtener una visualización específica en una sola página sin necesidad de buscar constantemente cierta información.

Análisis en profundidad con el analizador Amplify

En la categoría Analizador, hay secciones como servidores virtuales, construcción y análisis estadístico. La última sección mencionada es realmente útil. Nginx Amplify puede hacer recomendaciones basadas en el archivo de configuración. Estos consejos pueden estar relacionados con la fiabilidad, el rendimiento y la seguridad. Al hacer clic en la sección de análisis estático, puede ver los errores y mejorar en gran medida config.

Cuando hayas hecho un par de ajustes, necesitará esperar antes de que se implementen y la notificación desaparecerá.

Configuración de alertas en Amplify

En caso de que el agente deje de funcionar, los usuarios recibirán automáticamente esta notificación por correo. Esta es una característica por defecto. Para otras alertas adicionales, deben ir a una página específica y configurar todo lo que necesite. Por ejemplo, los usuarios pueden elegir recibir notificaciones cuando el tiempo de resp ascendente sea superior a 1 segundo y dure 3 minutos. Además, los usuarios pueden optar por recibir correos electrónicos cuando el tiempo de actividad sea inferior a 120 segundos durante los últimos 3 minutos.

Como puede ver, es una herramienta muy importante y puede hacerle saber inmediatamente si algo no está funcionando como se requiere.

<H2> Solución de problemas del agente Amplify

Puede haber algunas situaciones en las que, sin ninguna razón obvia, el agente deje de enviar información sobre el rendimiento. Por lo tanto, sería bueno hacer una tarea Cron para reiniciar el agente y resolver este problema.

La siguiente línea debe añadirse al fichero crontab:

@daily systemctl restart amplify-agent

Esto significa que el agente se reiniciará una vez al día y después de añadir esta línea cerrar el archivo.

Conclusión

Ahora tiene las instrucciones completas sobre cómo instalar Nginx Amplify y empezar a monitorizar el rendimiento de la aplicación LEMP. Hay un par de recomendaciones adicionales sobre la creación de un formato de registro personalizado de Nginx, la monitorización de las bases de datos del servidor, la habilitación de PHP-FPM, y mucho más. Además de la monitorización de datos, toda la información recopilada se puede estructurar fácilmente en formato de gráficos y cuadros de mando generalizados. Para que todos los usuarios puedan obtener la información necesaria de la manera más fácil y conveniente para ellos. Nginx Amplify es una gran herramienta para el análisis y la recopilación de información y lo que es más - es realmente fácil y flexible.

Artículos Relacionados