Las distribuciones de Linux nos ofrecen una serie de comandos y herramientas ideales para mantener el mejor control sobre cada aspecto del servidor o del sistema y esto es útil si dentro de nuestros roles debemos acceder a información detallada de procesos, actividad de la CPU, memoria, disco duro y más, ya que de esta forma sabremos en que puntos del sistema se pueden presentar anomalías y de esta forma tomar acciones ya sea administrativas o de soporte sobre ellas.
Una de las mejores opciones para acceder a este tipo de información es usar vmstat y Solvetic explicará qué es y como usar esta herramienta en Linux.
Vmstat genera un primer informe donde se acceden a detalles desde el último arranque, luego, se añaden valores adicionales que dan en un período de muestreo de longitud especifica. Gracias a vmstat será posible saber en detalle cada aspecto que juega un papel dentro del sistema.
1. Cómo usar vmstat en Linux
La sintaxis básica de uso de vmstat es la siguiente:
vmstat [opciones] [delay [conteo]]La primera opción básica de uso consiste en ejecutar lo siguiente:
VmstatEl resultado será el siguiente:
Allí encontramos una serie de campos que son los siguientes:
- r: Indican el número de procesos del núcleo en la cola de distribución
- b: Son el número de procesos del núcleo bloqueados a la espera de recursos
- w: Hace referencia al número de procesos en espacio de ser asignados
- swpd: Es la cantidad de memoria virtual empleada (kB)
- free: Es la cantidad de memoria inactiva (kB)
- buff: Es la cantidad de memoria empleada como búferes (kB)
- si: Indica la cantidad de memoria traída del espacio de intercambio desde el disco (kB/s)
- so: Es la cantidad de memoria de intercambio al disco (kB/s).
- bi: Son los bloques enviados a un dispositivo de bloques
- bo: Son bloques recibidos desde un dispositivo de bloques
- in: Indica el número de interrupciones por segundo, incluyendo al reloj
- cs: Son el número de cambios de contexto por segundo
- us: tiempo de usuario
- sy: tiempo de sistema
- id: tiempo de inactividad
En algunos casos veremos argumentos adicionales como:
- re: Son las páginas reclamadas
- mf: Indican errores secundarios y errores importantes
- pi: Son los Kilobytes de páginas cargadas en la memoria
- Po: Son los Kilobytes de páginas extraídas de la memoria
- fr: Indica los Kilobytes liberados
- De: Es la memoria prevista necesaria para los datos de procesos que han sido cargados en la memoria swap
- Sr: Son las páginas escaneadas por el daemon page que no está actualmente en uso
- In: Son las interrupciones por segundo
- Sy: Son las llamadas del sistema por segundo
- Cs: Es la frecuencia de cambio de contexto de CPU
Por defecto, vmstat genera la salida una sola vez, es posible que vmstat actualice automáticamente esta salida, para ello será necesario especificar un valor numérico como entrada para el comando así:
vmstat 4
Así, cada línea de vmstat será actualizada cada 4 segundos.
2. Cómo combinar vmstat con slabinfo en Linux
Slabinfo es un archivo ubicado en el directorio /proc/slabinfo cuya misión es brindar estadísticas sobre las cachés de los objetos usados con frecuencia en el kernel de Linux como cabezales de búfer, inodos, dentries y más.
Para obtener esta información debemos usar el parámetro -m y es vital que el kernel de la distribución de Linux sea compatible con slabinfo, para acceder a esta información ejecutamos lo siguiente con permisos sudo:
sudo vmstat -m
3. Cómo generar un reporte de la actividad del disco con vmstat Linux
El comando vmstat nos da la opción de creara un reporte detallado de la actividad del disco duro, para ello debemos ejecutar lo siguiente:
vmstat -D
- Cantidad de discos
- Número de particiones
- Lecturas que han sido fusionadas
- Cantidad de lectura y escritura
- Sectores leidos y mas
4. Cómo configurar vmstat para que agregue la marca de tiempo a cada línea de salida Linux
Esta opción es útil si deseamos ver en detalle los datos en el cual son generados los reportes por parte de vmstat, para ello vamos a ejecutar lo siguiente:
vmstat -t
5. Cómo visualizar información de eventos del sistema
Esta alternativa es práctica para obtener información completa sobre los eventos que ocurren en el servidor para acceder a detallar cada punto que pueda estar afectando el comportamiento general de este.
Si deseamos ver los eventos del sistema vamos a ejecutar lo siguiente:
vmstat -s
- Memoria total, usada, activa y libre
- Caché de intercambio
- Tics del CPU
- Páginas de entrada y salida
- Número de interrupciones
- Tiempo de arranque y más
6. Cómo visualizar estadísticas de intercambio
Si solo deseamos acceder a la información de la memoria de intercambio (swap), debemos ejecutar lo siguiente:
vmstat -SSi deseamos acceder a la ayuda de vmstat debemos ejecutar lo siguiente:
vmstat -h
De esta forma el comando vmstat es de gran ayuda para acceder a información esencial del sistema usado y llevar un control especifico sobre cada aspecto tanto de CPU, discos o memoria en tiempo real y con los resultados más óptimos disponibles.