Detectar problemas de rendimiento es un trabajo complicado y tedioso para cualquier SysAdm o DevOps, principalmente, en aquellos sistemas que están corriendo en producción.
Por este motivo, hemos compilado un listado de los 15 comandos de monitoreo más utilizados en Linux. Todos estos comandos están disponibles en la mayoría de las distribuciones y sirven para encontrar las posibles causas a problemas de rendimiento.
Comando #1: Top
Muestra en tiempo real los procesos que están en ejecución. Algunas de las estadísticas que muestra son: CPU, RAM, SWAP, ,CACHE, BUFFER , Usuarios, PID.
$ top

Comando #2: Uptime
Muestra un dato muy importante: load avarage.
$ uptime

Comando #3: Htop
El comando htop es muy útil, ya que muestra en tiempo real información relevante como la utilización de CPU, la cantidad de Core, uptime, procesos en ejecución, consumo de memoria RAM y SWAP.
$ htop

Comando #4: Vmstat
El comando vmstat muestra en tiempo la utilización IO de los siguientes subsistemas: RAM, SWAP, System y CPU.
$ vmstat 1 50

Comando #5: Mpstat
Muestra datos y estadísticas sobre el performance del CPU.
$ mpstat

Comando #6: Free
Muestra datos y estadísticas de la utilización de memoria RAM y SWAP.
$ free -h

Comando #7: Sar
Utilizando el comando podemos monitorear el rendimiento de algunos subsistemas.
Muestra la utilización de todos los CPUs.
$ sar – u 1 3
Muestra la utilización individual de cada CPU o core.
$ sar -P ALL 1 1
Muestra memoria libre y en uso.
$ sar -r 1 3
Muestra la memoria swap en uso.
$ sar -S 1 3
Muestra el rendimiento IO en general.
$ sar -b 1 3
Muestra la utilización individual de I/O.
$ sar -d 1 1
Muestra el cambio de contexto por segundo
$ sar -w 1 3
Muestra el reporte de queue y load average.
$ sar -q 1 3
Muestra estadística sobre la utilización de los recursos de red.
$ sar -n ALL
Comando #8: PS
Muestra todos los procesos que están en ejecución.
$ ps -aux
Muestra el comando completo que está en ejecución.
$ ps -efww
Comando #9: pidstat
Muestra datos y estadísticas de los procesos que están en ejecución en RAM.
$ pidstat -p ALL -l -r|sort -k8nr
Comando #10: lsof
Muestra los archivos que están siendo utilizados por los procesos en ejecución.
$lsof
Comando #11: iostat
Muestra datos y estadísticas de IO de los dispositivos de almacenamiento
$ iostat -xd
Comando #12: Netstat
Muestra información y estadísticas sobre las conexiones de red.
$netstat -tulpn
Comando #13: ss
Muestra información y estadísticas sobre las conexiones de red.
$ ss -l -a
Comando #14: ip
Muestra las interfaces de red activas.
$ ip -s link
Comando #15: tcpdump
Permite visualizar y capturar los paquetes TCP/IP que entran y salen desde una interfase de red en tiempo real
$tcpdump -i eth0
Imprime la captura en formato ACSII
$tcpdump -A -i eth0
Captura y graba la salida en un archivo
$tcpdump -w 0001.pcap -i eth0
Lee la captura desde un archivo
$tcpdump -r 0001.pcap
Captura los paquetes hacia un puerto específico
$ tcpdump -i eth0 port 22
Captura los paquetes de un origen específico
$ tcpdump -i eth0 src 192.168.0.2
Captura los paquetes hacia un destino específico
$ tcpdump -i eth0 dst 50.116.66.139