Supervisión del servidor: ¿gratis o por dinero? Utilidades y servicios especializados de Linux





Existen muchas herramientas útiles para ayudarlo a monitorear la carga del servidor, desde utilidades de Linux hasta servicios especializados.



Las utilidades simples de Linux muestran el consumo de memoria actual para cada proceso, carga de CPU, espacio libre en disco y estadísticas de tráfico.



Además, existen servicios de pago y gratuitos que monitorean el estado de su servidor las 24 horas, registran fallas en su funcionamiento o disponibilidad de la red, y también verifican el desempeño de las aplicaciones.



Contenido





Utilidades de Linux



El uso de recursos



parte superior



Una de las herramientas más utilizadas para verificar el uso de recursos por procesos. La utilidad topproduce una tabla simple con el consumo actual de recursos, donde los procesos de mayor carga se indican en la parte superior.



top - 14:45:52 up 29 min, 1 user, load average: 0.10, 0.09, 0.06
Tasks: 56 total, 1 running, 55 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1019600k total, 393756k used, 625844k free, 11136k buffers
Swap: 0k total, 0k used, 0k free, 316748k cached

PID %MEM VIRT SWAP RES CODE DATA SHR nFLT nDRT S PR NI %CPU COMMAND
832 1.3 32364 18m 12m 896 11m 1688 1 0 S 20 0 0.0 bash
820 0.4 89456 83m 4008 488 948 3040 12 0 S 20 0 0.0 sshd
812 0.3 49948 46m 2828 488 616 2216 0 0 S 20 0 0.0 sshd
1 0.2 24192 21m 2108 152 868 1300 23 0 S 20 0 0.0 init
400 0.1 243m 242m 1420 344 216m 1084 0 0 S 20 0 0.0 rsyslogd


Algunas estadísticas generales se proporcionan inmediatamente antes de la tabla, incluida la carga promedio de CPU durante el último minuto, 5 minutos y 15 minutos. También muestra el consumo de memoria, el consumo de archivos de paginación y el estado del proceso.



La lista se actualiza en tiempo real: puede mostrarla en un segundo monitor y verla constantemente.



htop



Aunque la utilidad topviene con casi todas las distribuciones, también está disponible una versión mejorada para descargar en la mayoría de los repositorios htop.



Instalación htopen Ubuntu:



apt-get install htop


Aquí vemos casi la misma salida, pero con diferentes colores y una salida más interactiva:



CPU[| 0.7%] Tasks: 21, 3 thr; 1 running
Mem[||||||||||||| 64/995MB] Load average: 0.00 0.02 0.05
Swp[ 0/0MB] Uptime: 00:37:37

PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command
2752 root 20 0 25660 1876 1364 R 0.0 0.2 0:00.06 htop
1 root 20 0 24192 2108 1300 S 0.0 0.2 0:00.55 /sbin/init
312 root 20 0 17224 640 444 S 0.0 0.1 0:00.04 upstart-udev-brid
314 root 20 0 21592 1360 760 S 0.0 0.1 0:00.04 /sbin/udevd --dae
394 messagebu 20 0 23808 688 436 S 0.0 0.1 0:00.01 dbus-daemon --sys
401 syslog 20 0 243M 1420 1084 S 0.0 0.1 0:00.07 rsyslogd -c5
402 syslog 20 0 243M 1420 1084 S 0.0 0.1 0:00.00 rsyslogd -c5


La parte superior está más clara y mejor organizada aquí.



Aquí hay algunas claves para un mejor uso htop:



  • M : ordenar procesos por uso de memoria

  • P : ordenar procesos por uso de CPU

  • ? : referencia

  • k : matar procesos actuales / marcados

  • F2 : configuración (aquí puede seleccionar las opciones para mostrar)

  • / : buscar procesos


En la ayuda y la configuración se enumeran otras opciones. Vale la pena comenzar el estudio del programa desde estos dos apartados.



Tráfico de red



nethogs



nethogsEs la utilidad más simple para ver cuánto tráfico hay en cada servicio. En Ubuntu, la utilidad se instala con el siguiente comando:



apt-get install nethogs


Entonces se puede iniciar sin llaves. El problema es simple:



 PID USER PROGRAM DEV SENT RECEIVED
3379 root /usr/sbin/sshd eth0 0.485 0.182 KB/sec
820 root sshd: root@pts/0 eth0 0.427 0.052 KB/sec
? root unknown TCP 0.000 0.000 KB/sec

TOTAL 0.912 0.233 KB/sec


Solo hay algunas opciones para cambiar la salida:



  • m : cambiar entre kb / s, kb, b, mb

  • r : ordenar por tráfico recibido.

  • s : ordenar por tráfico enviado

  • q : salir


Si bien esta es una utilidad simple, es excelente para ver rápidamente qué aplicaciones están generando tráfico.



IPTraf



IPTraf- otra forma de monitorear el tráfico de la red, con muchas opciones. Instalación en Ubuntu:



apt-get install iptraf


Esta utilidad ofrece elegir una de las interfaces interactivas:



 ???????????????????????????????????
? IP traffic monitor ?
? General interface statistics ?
? Detailed interface statistics ?
? Statistical breakdowns... ?
? LAN station monitor ?
???????????????????????????????????
? Filters... ?
???????????????????????????????????
? Configure... ?
???????????????????????????????????
? Exit ?
???????????????????????????????????


Por ejemplo, para ver todo el tráfico de la red, seleccione el primer elemento del menú:



? TCP Connections (Source Host:Port) ?????????? Packets ??? Bytes Flags Iface ?
??192.241.xxx.xxx:22 > 369 82420 -PA- eth0 ?
??72.43.xxx.xxx:49488 > 381 19860 --A- eth0 ?
? ?
? ?


Para que las direcciones IP se resuelvan en dominios, debe seleccionar el elemento 'Búsquedas DNS inversas' en la configuración.



Además de ver el tráfico por puertos, existe una opción para ver el tráfico por servicio (opción 'Nombres de servicio TCP / UDP'). Con ambas opciones habilitadas, la salida se verá así:



 TCP Connections (Source Host:Port) ?????????? Packets ??? Bytes Flags Iface ?
??192.241.xxx.xxx:ssh > 151 34924 -PA- eth0 ?
??rrcs-72-43-xxx-xxx.nyc.biz.rr.co:49488 > 155 8108 --A- eth0 ?
? ?
? ?
? ?
? ?
? ?
? ?
? ?
? ?
? ?
? ?
? TCP: 1 entries ???????????????????????????????????????????????? Active ??
????????????????????????????????????????????????????????????????????????????????
? UDP (72 bytes) from 192.241.xxx.xxx:43463 to 8.8.8.8:domain on eth0 ?
? UDP (66 bytes) from 192.241.xxx.xxx:53140 to 8.8.8.8:domain on eth0 ?
? UDP (135 bytes) from 8.8.8.8:domain to 192.241.xxx.xxx:41429 on eth0 ?
? UDP (119 bytes) from 8.8.8.8:domain to 192.241.xxx.xxx:43463 on eth0 ?
? UDP (110 bytes) from google-public-dns-a.googl:domain to 192.241.xxx.xxx:531 ?


Hay algunas otras interfaces que puede aprender por su cuenta.



netstat



La utilidad netstates una herramienta muy flexible y poderosa para recopilar información de la red.



Por defecto, netstatda una lista de sockets abiertos:



Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.241.187.204:ssh ip223.hichina.com:50324 ESTABLISHED
tcp 0 0 192.241.187.204:ssh rrcs-72-43-115-18:50615 ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 5 [ ] DGRAM 6559 /dev/log
unix 3 [ ] STREAM CONNECTED 9386
unix 3 [ ] STREAM CONNECTED 9385
. . .


Si agrega la opción -a, mostrará una lista de todos los puertos:



Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 192.241.187.204:ssh rrcs-72-43-115-18:50615 ESTABLISHED
tcp6 0 0 [::]:ssh [::]:* LISTEN
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 6195 @/com/ubuntu/upstart
unix 2 [ ACC ] STREAM LISTENING 7762 /var/run/acpid.socket
unix 2 [ ACC ] STREAM LISTENING 6503 /var/run/dbus/system_bus_socket
. . .


Marca -to -ufiltra las conexiones TCP o UDP, respectivamente. La bandera -smuestra estadísticas. Para actualizar constantemente la salida, debe ejecutar el comando con la clave -c.



Espacio del disco



df



La utilidad estándar para ver información sobre particiones montadas es df. Muestra una lista de dispositivos conectados e información sobre el espacio ocupado.



Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda 31383196 1228936 28581396 5% /
udev 505152 4 505148 1% /dev
tmpfs 203920 204 203716 1% /run
none 5120 0 5120 0% /run/lock
none 509800 0 509800 0% /run/shm


De forma predeterminada, la salida está en bytes, lo que no es muy conveniente. El parámetro -hactiva la salida en megabytes y gigabytes:



Filesystem Size Used Avail Use% Mounted on
/dev/vda 30G 1.2G 28G 5% /
udev 494M 4.0K 494M 1% /dev
tmpfs 200M 204K 199M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 498M 0 498M 0% /run/shm


Para ver todo el espacio en todos los discos, agregue la opción --total.



du



La utilidad le dfpermite obtener rápidamente una descripción general. Para obtener información más detallada, un programa duque analiza el directorio actual y cualquier subdirectorio es más adecuado . La salida predeterminada se ve así:



4    ./.cache
8    ./.ssh
28    .


Nuevamente, se habilita una salida más legible con una tecla -h.



La visualización de los tamaños de archivos y directorios está habilitada por una bandera -a, el total general - por las banderas -c(detalles y cantidad) y -s(solo cantidad).



Versiones mejoradas



Las versiones mejoradas de df y du se denominan pydf y ncdu y se instalan en Ubuntu con los comandos apt-get install pydfy apt-get install ncdu. Organizan hermosos resultados en pseudográficos con colores:



pydf -a
dev/vda 30G 1200M 27G 3.9 [........] /
udev 493M 4096B 493M 0.0 [........] /dev
devpts 0 0 0 - [........] /dev/pts
proc 0 0 0 - [........] /proc
tmpfs 199M 204k 199M 0.1 [........] /run
none 5120k 0 5120k 0.0 [........] /run/lock
none 498M 0 498M 0.0 [........] /run/shm
. . .


ncdu
--- /root ----------------------------------------------------------------------
8.0KiB [##########] /.ssh
4.0KiB [##### ] /.cache
4.0KiB [##### ] .bashrc
4.0KiB [##### ] .profile
4.0KiB [##### ] .bash_history


Aquí puede navegar por el sistema de archivos usando las teclas de flecha.



Uso de memoria



gratis



La forma más sencilla de ver el uso actual de RAM es con el comando free. La salida sin opciones se ve así:



 total used free shared buffers cached
Mem: 12286456 11715372 571084 0 81912 6545228
-/+ buffers/cache: 5088232 7198224
Swap: 24571408 54528 24516880


El lanzamiento con una clave -mgenera una salida en megabytes.



La fila del medio -/+ buffers/cachemuestra la cantidad de memoria utilizada menos la suma de búferes / caché y la cantidad de memoria libre más la suma de búferes / caché.



El hecho es que Linux, como la mayoría de los sistemas operativos modernos, intenta utilizar la máxima cantidad de RAM disponible para búferes y caché. Por lo tanto, la segunda línea es importante, que muestra la cantidad real de RAM potencialmente disponible para las aplicaciones, si ignora los búferes y el caché. Este espacio se liberará automáticamente si es necesario para las aplicaciones.



vmstat



El comando vmstatmuestra información diversa sobre el sistema, incluida la memoria, el archivo de paginación, las operaciones de E / S y la carga de la CPU.



procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 2828 407616 335348 5511476 0 0 26 268 41 27 28 30 42 0 0


La primera columna rmuestra la cantidad de procesos activos, la segunda, la cantidad de procesos en estado de espera ininterrumpida.



Columnas siy somuestran la cantidad de memoria que se lee y se escribe en el archivo de paginación, respectivamente.



A continuación se muestra la cantidad de bloques recibidos o enviados al dispositivo de E / S de bloque (bi, bo), la cantidad de interrupciones por segundo, incluido el temporizador (in), la cantidad de cambios de contexto por segundo (cs) y las estadísticas de la CPU: porcentaje de tiempo dedicado al procesamiento código en el espacio de usuario (us), para procesar el código del kernel (sy), en estado de suspensión (id) y en espera de E / S (wa), así como el tiempo "robado" de la máquina virtual (st), es decir, cuando la CPU virtual espera que la CPU real actúe cuando el hipervisor está dando servicio a otro procesador virtual.



La bandera -S Mactiva la entrega en megabytes. Ejecutar con la opción -smuestra estadísticas generales.



Servicios de seguimiento



Si necesita monitorear el estado del servidor durante todo el día (memoria, CPU, espacio libre, rendimiento, tiempo de respuesta, etc.), puede usar un servicio de monitoreo gratuito o de pago. Hay muchos servicios de este tipo, aquí hay una pequeña lista en orden alfabético:



  • Anturis

  • AppDynamics

  • AppNeta

  • Atera

  • BigPanda

  • CollectD

  • Datadog

  • Innovaciones eG

  • Ganglios

  • Icinga (adaptación gratuita de Nagios Core)

  • Instrumental

  • LogicMonitor

  • ManageEngine OpManager

  • Monitis

  • Motadata

  • Nagios XI (la versión gratuita se llama Nagios Core)

  • Monitor Navicat

  • NinjaRMM

  • Monitor Op5

  • OpenNMS

  • Pandora FMS

  • Panopta

  • Monitor de red de PRTG

  • León marino

  • Densidad del servidor

  • Sitio 24x7

  • Monitor de aplicaciones y servidor SolarWinds

  • Spiceworks Network Monitor (gratis)

  • Apilar

  • WhatsUpGold

  • Zabbix (monitor de sistema gratuito)


Algunos monitores son más adecuados para pequeñas empresas, mientras que otros son más adecuados para grandes empresas. Algunos se especializan en monitorear sistemas en la nube. Hay servicios que solo se ejecutan en servidores Linux. Los sistemas difieren en escalabilidad, conjunto de funciones y nivel de automatización. Varios monitores se distribuyen de código abierto.



Por ejemplo, considere tres servicios de monitoreo relativamente populares.



Monitor de aplicaciones y servidor SolarWinds



Uno de los monitores de servidor más avanzados del mercado es SolarWinds Server and Application Monitor (SAM). Aunque la herramienta solo se instala en Windows Server 2016+, puede rastrear cualquier hardware, incluidos los servidores Linux.







El monitor monitorea el desempeño del servidor, reporta problemas y también brinda algunas capacidades de administración: le permite reiniciar el servidor, disparar procesos y reiniciar servicios, es decir, es una herramienta no solo para monitoreo, sino también para administración.







El programa es más adecuado para grandes corporaciones. Compatibilidad declarada con Dell PowerEdge, HP ProLiant, IBM eServer xSeries, Dell PowerEdge Blade, HP BladeSystem, Microsoft Windows Server y VMware vSphere. SAM también supervisa las instancias en la nube de AWS y Azure.







Muestra estadísticas sobre el tiempo de respuesta, la carga de la CPU, la memoria, etc. Se supervisa el rendimiento de las aplicaciones individuales: el soporte para más de 1200 aplicaciones diferentes está integrado. También verifica el estado del hardware: utilización de la CPU, carga del disco, fuente de alimentación, estado del ventilador, etc. Los estados están codificados por colores de verde a rojo para facilitar la evaluación del estado del sistema de un vistazo.







El monitor detecta automáticamente nuevo hardware y software en su clúster y lo agrega inmediatamente al tablero. Esta es una de las características clave de SAM, así como la máxima automatización: plantillas preparadas para automatizar las tareas regulares de monitoreo y mantenimiento, plantillas para informes y notificaciones.







Por lo general, estos servicios tienen un período de prueba gratuito y el costo puede depender del conjunto de funciones utilizadas. También hay un período de prueba aquí, y el costo de SolarWinds Server y Application Monitor comienza en 1275 euros en funcionalidad mínima.



Monitor Navicat



Otro ejemplo es Navicat Monitor , que se especializa en el monitoreo de bases de datos. Es compatible con MySQL, MariaDB, SQL Server, así como con DBMS en la nube como Amazon RDS, Amazon Aurora, Oracle Cloud, Google Cloud y Microsoft Azure.





Vista estándar Vista





compacta El



monitor rastrea el tiempo de ejecución de consultas específicas ejecutándolas en un intervalo específico.











Además de las consultas a la base de datos, periódicamente se envían otras consultas a los servidores para monitorear los indicadores de desempeño del sistema de E / S, red, etc. Las estadísticas se recopilan sobre la utilización de la CPU, la utilización de la memoria y otras métricas estándar.





La arquitectura de Navicat Monitor no proporciona instalación de software en objetos de supervisión



El precio mínimo de Navicat Monitor es de $ 32,99 por token por mes (un token corresponde a monitorear un servidor o cuatro bases de Azure). Hay una prueba de 14 días completamente funcional.



Zabbix



Zabbix es una herramienta gratuita de código abierto que monitorea el estado de la red, las aplicaciones y el propio servidor. Viene con plantillas listas para usar para monitorear servidores y sistemas operativos populares, incluidos HP, IBM, Lenovo, Dell, servidores Linux, Ubuntu y Solaris. A lo largo de los años, la comunidad de Zabbix ha preparado plantillas para varios escenarios.







Los módulos clave de Zabbix monitorean la carga de la CPU, el uso de la memoria, la tasa de errores de E / S, el espacio libre en el disco, el estado del ventilador, la temperatura y las características del sistema de energía. El módulo de red verifica el tráfico, la disponibilidad de la red, la tasa de pérdida de paquetes, la calidad de las conexiones TCP y el rendimiento de los enrutadores.



Zabbix mantiene una lista de software instalado y versiones de firmware para señalar instalaciones de software no autorizadas.







El administrador del sistema puede programar notificaciones en Zabbix para condiciones arbitrarias, así como cambiar la importancia de las notificaciones activas. En el panel de control, puede agregar usuarios y enviar a cada uno de ellos ciertos tipos de notificaciones, y los scripts de automatización le permiten iniciar tareas automáticamente y asignarlas a los empleados.



Gracias a la función de administración y acceso remoto, Zabbix puede considerarse una buena herramienta de administración de servidores.



El único inconveniente de este sistema es que si ha agregado alrededor de 1000 servidores o más para monitorear, debido a la gran cantidad de mensajes y procedimientos de encriptación, Zabbix comienza a responder lentamente a los comandos, por lo que esta herramienta no es muy adecuada para empresas muy grandes.



Los sistemas de monitoreo de servidores difieren en funcionalidad. ... No todo el mundo puede supervisar el estado de las aplicaciones individuales, el rendimiento del servidor y los tiempos de respuesta. Pero estas deficiencias se pueden corregir con herramientas adicionales: por ejemplo, análisis y sistemas de monitoreo de registros.



Un servidor confiable en alquiler y la elección correcta de un plan de tarifas le permitirán distraerse menos con notificaciones de monitoreo desagradables: ¡todo funcionará sin problemas y con un tiempo de actividad muy alto!









All Articles