Monitorizar el rendimiento del servidor (Linux)

Para Servidor Cloud, Servidor Virtual y Servidor Dedicado

En este artículo encontrará un resumen de los problemas de rendimiento que pueden producirse. Además, le explicaremos qué programas puede utilizar en Linux para monitorizar su servidor con el fin de detectar y solucionar problemas de rendimiento.

Nota

Por lo general, se recomienda una supervisión periódica del servidor para detectar a tiempo problemas generales o de rendimiento, así como fallos del servidor, de componentes o de las aplicaciones. Además, de esta manera también podrá prevenir y detectar ciertos tipos de ciberataques. Si su servidor es objeto de un ataque, es esencial que pueda reaccionar de manera rápida para detener el ataque y minimizar los daños causados.

Tipos de problemas de rendimiento

Los problemas de rendimiento pueden tener causas muy diversas. Por ello, es muy importante que se determinen con precisión. Los siguientes problemas de rendimiento pueden ocurrir bajo ciertas circunstancias:

Acceso al SSD/disco duro muy demorado:

  • Puede ocurrir con servidores dedicados.

  • El servidor tarda mucho al iniciar el sistema operativo y los programas, o bien, al iniciar la sesión.

  • Puede ocurrir cuando el sistema operativo o los programas hacen uso del archivo de intercambio, o bien, al cargar o guardar datos.

Uso elevado del sistema o de la CPU:

  • Cuando la tasa de uso de la CPU es constantemente alta, es posible que el procesador del servidor esté sobrecargado.

  • Cuando la carga del sistema o de la CPU es demasiado elevada, a menudo se producen retrasos en la ejecución de las aplicaciones y en las actividades de los usuarios.

  • Cuando el servidor tiene muy poca memoria RAM, es posible que el procesador esté sobrecargado de manera permanente.

  • Un aumento permanente en la carga del procesador también puede ser un signo de malware.

Bajo rendimiento en las interfaces de red:

  • Provoca un retraso general en la visualización y en los tiempos de respuesta.

  • Cuando las interfaces de red están demasiado ocupadas se pueden producir varios problemas como una latencia elevada o mensajes de error al consultar las páginas web.

 

Consejos de análisis

  • Para determinar la causa de los problemas de rendimiento, es importante distinguir si son temporales o permanentes.

  • Si los problemas de rendimiento son temporales, compruebe si existe un patrón reconocible. Para ello, analice los procesos ejecutados y las tareas realizadas regularmente por su servidor.

  • Si es necesario, reprograme las tareas regulares y revise si los problemas de rendimiento siguen produciéndose tras este cambio.

  • Si es necesario, revise si los problemas de rendimiento se producen al ejecutar una determinada acción. Por ejemplo, al cargar una página o subir y descargar documentos.

  • Investigue qué actualizaciones se han instalado en el servidor y averigüe si es necesario instalar una nueva actualización que afecte al rendimiento de su servidor.

  • Si un proceso es desconocido para usted o no está seguro de que sea un programa malicioso o malware, le recomendamos que investigue el nombre del proceso en Internet. Preste especial atención a los procesos que requieren un número inusualmente elevado de recursos.

Atención

Le recomendamos que instale parches de seguridad y actualizaciones del sistema operativo y de los programas periódicamente. Además, se recomienda que los pruebe previamente para comprobar los posibles efectos en su entorno. Asegúrese también de que los parches de seguridad y las actualizaciones de los plug-ins que utilice también se  instalen tan pronto como se pueda.

Análisis inicial de los recursos del sistema en uso con "top"

Con el programa top podrá realizar un primer análisis de la carga actual del sistema. Este programa viene incluido en la mayoría de distribuciones Linux.

Con top puede acceder tanto a la información del sistema como a los procesos en ejecución. En la vista general, puede ordenar las tareas por CPU, uso de memoria y tiempo de ejecución.

Además, este programa ofrece una interfaz interactiva de gestión de procesos y de configuración individual. La mayoría de funciones pueden utilizarse mediante comandos interactivos o con entradas en los archivos de configuración personales o de todo el sistema.

Para iniciar top, introduzca el comando top en la línea de comandos. Puede combinar este comando con una variedad de opciones.

Aquí encontrará un resumen de las opciones:

top - Linux man page

Puede encontrar más información sobre el análisis de la carga del sistema con top aquí:

Analizar la carga actual del sistema con top (Linux)

Análisis detallado de los recursos del sistema en uso con "atop"

Atop es un programa de monitorización ASCII con el que se puede visualizar la carga del sistema en Linux. Al iniciar atop, se muestra el uso de la CPU y la memoria, así como información sobre los archivos de intercambio, discos duros/SSD y conexión de red en intervalos de 10 segundos. Además, se puede mostrar, entre otros, el uso de la CPU, el consumo de memoria y la E/S del disco duro por cada proceso e hilo. Con atop también puede guardar estadísticas a nivel de sistema y de proceso en un formato binario comprimido para su análisis a largo plazo. Por defecto, estos archivos de registro se conservan durante 28 días.

En el siguiente artículo le explicamos cómo instalar atop y crear archivos de registro para analizar la carga del sistema:

Analizar la carga del sistema con atop (Linux)

Comprobar la conexión de red del servidor

A continuación se presentan varios comandos que puede utilizar para comprobar la conexión de red de su servidor.

Para obtener información concluyente sobre el rendimiento de la conexión de red del servidor, ejecute las pruebas de rendimiento varias veces y en diferentes momentos del día.

Para mostrar las conexiones de red activas, use el siguiente comando:

[root@localhost ~]# sudo ss -tpn


Para revisar qué procesos están actualmente a espera de conexiones desde el exterior, introduzca el siguiente comando:

[root@localhost ~]# sudo ss -tulpn
Para verificar si se han perdido paquetes, introduzca el comando ping como lo muestra el siguiente ejemplo. Limite el número de pings con -c :
[root@localhost ~]# ping -c CANTIDAD DIRECCIÓN_IP
o bien,

[root@localhost ~]# ping -c CANTIDAD DOMINIO_DEL_SERVIDOR
Si tiene problemas de conexión use el programa Traceroute. Con Traceroute puede definir qué paquete se enruta por cuál router. Para utilizar Traceroute, introduzca el siguiente comando:

[root@localhost ~]# traceroute DIRECCIÓN_IP

Compruebe los archivos de registro del servidor

Consulte el siguiente artículo para obtener más información sobre cómo comprobar los archivos de registro de su servidor:

Verificar los archivos de registro