Nota:
- Este tutorial está disponible en un entorno de prácticas gratuitas proporcionado por Oracle.
- Utiliza valores de ejemplo para credenciales, arrendamiento y compartimentos de Oracle Cloud Infrastructure. Al finalizar el laboratorio, sustituya estos valores por valores específicos de su entorno en la nube.
Supervise los recursos del sistema en Oracle Linux
Introducción
En este tutorial, trabajará con Oracle Linux vmstat
, mpstat
y top
para supervisar el uso de los recursos del sistema. La supervisión del uso de los recursos del sistema es útil para detectar problemas que pueden afectar negativamente al rendimiento del sistema.
Antecedentes
Oracle Linux proporciona herramientas para supervisar y analizar el uso de los recursos del sistema, así como herramientas de rastreo para diagnosticar problemas de rendimiento en varios procesos y threads relacionados.
Objetivos
- Explore el comando
vmstat
. - Explore el comando
mpstat
. - Explore el comando
top
. - Utilice
vmstat
ympstat
, ytop
- Examine la salida del comando de
vmstat
,mpstat
ytop
¿Qué se necesita?
Un sistema cliente con Oracle Linux 8 o posterior instalado.
Nota: al utilizar el entorno de prácticas gratuitas, consulte Aspectos básicos del laboratorio de Oracle Linux para conocer la conexión y otras instrucciones de uso.
Exploración y uso de las opciones del comando vmstat
vmstat
muestra cuánta memoria virtual hay y cuánto queda libre. El comando también muestra la actividad de paginación. Puede observar las entradas de página y las salidas de página a medida que se producen en el sistema.
Puede considerar la posibilidad de maximizar el área de visualización mediante los controles Ocultar pasos y "Pantalla completa" ubicados en la barra de tareas, como se muestra en las imágenes.
Vea el siguiente vídeo para obtener una visión general de vmstat
.
-
Ejecute el comando
vmstat
sin ninguna opción.vmstat
El comando genera un único informe. La salida se divide en seis secciones:
procs
,memory
,swap
,io
,system
ycpu
.-
Las dos primeras columnas proporcionan información sobre los procesos:
-
r
es el número de procesos que están en estado de espera. Se trata de procesos inactivos y en espera de ejecución. -
b
es el número de procesos que estaban en modo de espera y se interrumpieron desde la última actualización.
-
-
Las cuatro columnas siguientes proporcionan información sobre la memoria:
-
swpd
es la cantidad de memoria virtual utilizada. -
free
es la cantidad de memoria inactiva. -
buff
es la cantidad de memoria utilizada como buffers. -
cache
es la cantidad de memoria utilizada como caché.
-
-
Las dos columnas siguientes proporcionan información sobre el intercambio:
-
si
es la cantidad de memoria intercambiada desde el disco (por segundo). -
so
es la cantidad de memoria intercambiada en el disco (por segundo).Los números
si
yso
distintos de cero indican que no hay suficiente memoria física, lo que hace que el núcleo intercambie memoria en el disco.
-
-
Las dos columnas siguientes informan de entrada/salida:
-
bi
es el número de bloques por segundo recibidos de un dispositivo de bloques. -
bo
es el número de bloques por segundo enviados a un dispositivo de bloques.
-
-
Las dos columnas siguientes proporcionan la siguiente información del sistema:
-
in
es el número de interrupciones por segundo, incluido el reloj. -
cs
es el número de cambios de contexto por segundo.
-
-
Las últimas cinco columnas proporcionan los porcentajes del tiempo total de CPU:
-
us
es el porcentaje de ciclos de CPU utilizados en los procesos de usuario. -
sy
es el porcentaje de ciclos de CPU utilizados en los procesos del sistema (núcleo). -
id
es el porcentaje de ciclos de CPU pasados inactivos. -
wa
es el porcentaje de ciclos de CPU utilizados en espera de E/S. -
st
es el porcentaje de ciclos de CPU robados desde una máquina virtual.
-
-
-
Ejecute el comando
vmstat 1
(numérico y no la letra minúsculal
) para ver un informe continuo por segundo.vmstat 1
- Para terminar, pulse Ctrl+C.
-
Ejecute el comando
vmstat 7 4
para ejecutar cuatro informes separados por siete segundos.vmstat 7 4
La opción de recuento indica a
vmstat
el número de informes que se van a ejecutar (4) y la opción de retraso (7) es el intervalo de tiempo entre cada informe. -
Ejecute el comando
vmstat -s
para mostrar una tabla de varios contadores de eventos y estadísticas de memoria.vmstat -s
-
Ejecute el comando
vmstat -a
para mostrar la memoria activa e inactiva.vmstat -a
La opción
-a
muestra la cantidad de memoriaactive
e inactiva (inact
) en la secciónmemory
de la salida. -
Ejecute el comando
vmstat -f
para mostrar el número de bifurcaciones desde el último inicio.vmstat -f
-
Ejecute el comando
vmstat -t
para agregar un registro de hora a la salida.vmstat -t
-
Ejecute el comando
vmstat -d
para mostrar las estadísticas de uso de disco en el sistema.vmstat -d
-
Ejecute el comando
vmstat -p sda1
para crear un informe en una partición de disco específica.vmstat -p sda1
La salida muestra un resumen de la partición, incluido el número o lecturas y escrituras.
Exploración y uso de las opciones del comando mpstat
El comando mpstat
se utiliza para recopilar y mostrar estadísticas de rendimiento para todas las CPU lógicas del sistema. Cuando una CPU está ocupada por un proceso, no está disponible para procesar otras solicitudes. Estos otros procesos deben esperar hasta que la CPU esté libre.
Vea el siguiente vídeo para obtener una visión general de mpstat
.
-
Ejecute el comando
mpstat
sin ninguna opción.mpstat
La primera línea muestra la versión del núcleo de Linux, el nombre de host, la fecha actual, la arquitectura y el número de CPU del sistema.
La primera columna de la siguiente línea proporciona un registro de hora, con las columnas restantes definidas de la siguiente manera:
-
CPU
es el procesador designado por el número que comienza en0
o la palabra claveall
que indica que las estadísticas se calculan como medias entre todos los procesadores. -
%user
es el porcentaje de CPU utilizado al ejecutar aplicaciones en el nivel de usuario. -
%nice
es el porcentaje de CPU utilizado al ejecutarlo en el nivel de usuario con una buena prioridad. -
%sys
es el porcentaje de CPU utilizado durante la ejecución en el nivel del sistema (núcleo).El comando
mpstat
no incluye el tiempo dedicado al mantenimiento de interrupciones de hardware y software. -
%iowait
es el porcentaje de tiempo que las CPU estaban inactivas mientras el sistema tenía una solicitud de E/S de disco pendiente. -
%irq
es el porcentaje de tiempo que dedican las CPU al servicio de interrupciones de hardware. -
%soft
es el porcentaje de tiempo empleado por las CPU para reparar interrupciones de software. -
%steal
es el porcentaje de tiempo dedicado a la espera involuntaria de la CPU o las CPU virtuales mientras el hipervisor prestaba servicio a otro procesador virtual. -
%guest
es el porcentaje de tiempo empleado por las CPU para ejecutar un procesador virtual. -
%gnice
es el porcentaje de tiempo dedicado por las CPU para ejecutar un invitado con un precio. -
%idle
es el porcentaje de tiempo que la CPU estuvo inactiva (o las CPU estaban) y el sistema no tenía una solicitud de E/S de disco pendiente.
-
-
Ejecute el comando
mpstat 2 5
para ver la actividad de la CPU cada dos segundos para un total de cinco informes en todas las CPU.mpstat 2 5
La salida imprime una línea de información un total de cinco veces, y también imprime un promedio.
-
Ejecute el comando
mpstat -P ALL
para informar el uso de CPU en cada CPU.mpstat -P ALL
Esta salida imprime una única línea de actividad para todas las CPU y para cada CPU. Nota:
mpstat
también imprime el uso medio de CPU para el período especificado. -
Ejecute el comando
mpstat -P ALL 2 5
para ver la actividad de la CPU cada dos segundos en las CPU.mpstat -P ALL 2 5
Esta salida imprime estadísticas de uso de CPU para cada CPU 5 veces a un intervalo de 2 segundos. Nota: que
mpstat
también imprime el uso medio de CPU para el período especificado. -
Ejecute el comando
mpstat -A
para imprimir el uso de la CPU e interrumpir las estadísticas en la misma salida de comando.mpstat -A
Explorar el comando top
El comando top
proporciona una visión continua de la actividad del procesador en tiempo real. top
muestra una lista de los procesos o tareas más intensivos de CPU del sistema y proporciona una interfaz interactiva limitada para manipular procesos.
Vea el siguiente vídeo para obtener una visión general de top
.
-
Ejecute el comando
top
sin ninguna opción para una vista puntual de la actividad de la CPU.top
La salida se refresca cada tres segundos por defecto y se divide en dos secciones principales.
La sección superior muestra información general, como las medias de carga durante los últimos 1, 5 y 15 minutos, el número de tareas en ejecución y en suspensión, y el uso general de CPU y memoria.
-
Utilice lo siguiente para activar o desactivar la salida que se muestra en la sección superior:
-
Introduzca la letra en minúscula
l
(No numérico1
) para alternar entre la media de carga y el tiempo de actividad de desactivación y activación. -
Introduzca
m
para activar y desactivar la memoria y el uso de intercambio. -
Introduzca
t
para activar y desactivar la memoria y el uso de intercambio.
-
La sección inferior muestra una lista ordenada de procesos, normalmente por uso de CPU, junto con sus números de ID de proceso (PID) y el usuario propietario del proceso. Además, las salidas muestran el tiempo de ejecución y la memoria que utilizan los procesos.
A continuación, se describen las columnas de la sección inferior:
-
PID
es el ID de proceso único de la tarea. -
USER
es el nombre de usuario efectivo del propietario de la tarea. -
PR
es la prioridad real de la tarea. -
NI
es el valor agradable de la tarea en el espacio de usuario.Un valor negativo significa una prioridad más alta; y un valor positivo significa una prioridad más baja. El valor cero significa que la prioridad de una tarea no se aplica cuando se ejecuta.
-
VIRT
es la cantidad total de memoria virtual que utiliza la tarea.Este valor incluye todo el código, los datos y las bibliotecas compartidas, además de las páginas que se han intercambiado.
-
RES
es la memoria física no intercambiada o el tamaño residente que está utilizando una tarea. -
SHR
es la cantidad de memoria compartida que está utilizando la tarea.Esta memoria podría compartirse con otros procesos.
-
S
es el estado de la tarea. Hay cinco estados:-
D
Sueño ininterrumpido -
R
en ejecución -
S
Dormir -
T
Rastreo o parado -
Z
Zombie
-
-
%CPU
es el recurso compartido de la tarea del tiempo de CPU transcurrido o el uso de CPU desde la última actualización de pantalla, expresado como porcentaje del tiempo total de CPU. -
%MEM
es el recurso compartido utilizado actualmente de la tarea de memoria física o uso de memoria disponible. -
TIME+
es el tiempo total de CPU que ha utilizado la tarea desde que se inició. -
COMMAND
es la línea de comandos o el nombre de programa utilizado para iniciar una tarea.
-
-
Salga de
top
introduciendo Crtl+C.
Compare la salida del comando de vmstat
, mpstat
y top
Para esta práctica, ejecutará varias pruebas stress
para emular distintas cargas en el sistema de prácticas y, a continuación, utilizará los comandos vmstat
, mpstat
y top
para determinar lo que informan para los diferentes tipos de carga.
Aunque ejecute las pruebas como procesos en segundo plano, considere la posibilidad de abrir ventanas de terminal adicionales para sus comparaciones.
Cada ventana adicional necesita conectarse a la instancia de prácticas mediante ssh
en oracle@<IP_ADDRESS_OF_COMPUTE_INSTANCE>
. Donde <IP_ADDRESS_OF_COMPUTE_INSTANCE>
es la dirección IP copiada de la consola de Oracle Cloud.
- Después de iniciar sesión, utilice el comando
sudo -i
para cambiar al usuario raíz.
-
Instale la herramienta
stress
.-
Utilice el comando
dnf repolist
para verificar el estado del repositoriool8_developer_EPEL
.dnf repolist ol8_developer_EPEL
-
Si el estado es
enabled
, continúe con la instalación de los paquetes de herramientasstress
; de lo contrario, siga "activando" el repositorio. -
Active el repositorio si el estado es
disabled
mediante el comandodnf conifg-manager
.dnf config-manager --enable ol8_developer_EPEL
-
-
-
Ejecute el comando
dnf install
para instalar los paquetes de herramientasstress
.dnf install stress -y
-
Ejecute el comando
stress --dry-run
para ver un ejemplo de la sintaxis del comando. Tómese un momento y revise las opciones del ejemplo, junto con las otras opciones de comandos que se muestran.stress --dry-run
-
Ejecute los comandos
vmstat 4 4
ympstat 4 4
para ver una línea base de la actividad del sistema. Específicamente, observe los porcentajes de CPU asignados a los procesos de usuario y sistema (núcleo). Esta columna debe estar cerca de cero0
. Observe también la cantidad de memoria libre.vmstat 4 4 mpstat 4 4
-
Ejecute el comando
stress --cpu
para emular un programa enlazado a cálculo y ejecute el comando en segundo plano. Este comando genera ocho procesos enlazados a recursos informáticos.stress --cpu 8 &
-
Pulse return (Volver) para volver al indicador.
-
Ejecute el comando
ps -ef
para ver los procesosstress
en ejecución. Pase la salida agrep stress
.ps -ef | grep stress
-
-
Ejecute el comando
vmstat 4 10
y observe los valores informados en las columnas asociadas al uso de CPU.vmstat 4 10
En unos instantes, debería ver que los porcentajes de la columna
us
reflejan la carga generada porstress
. -
Ejecute el comando
mpstat 4 10
para evaluar el uso de todas las CPU.mpstat 4 10
-
Ejecute el comando
mpstat -P ALL 4 10
para evaluar el uso de cada CPU.mpstat -P ALL 4 10
-
Ejecute el comando
top
para examinar el uso de CPU por parte de los procesosstress
.top
Tras unos minutos, observe que los procesos
stress
se están ejecutando con la máxima prioridad. Salga detop
introduciendo Ctrl+C. -
Ejecute el comando
pkill
para terminar los procesosstress
.pkill stress
-
Vuelva a ejecutar los comandos
vmstat 4 4
ympstat 4 4
para ver una línea base de la actividad del sistema. -
Ejecute un nuevo comando
stress
y agregue las opciones--vm
y--vm-bytes
para iniciar la actividad de memoria en el sistema.stress --cpu 8 --vm 8 --vm-bytes 512M &
-
Ejecute
vmstat 4 10
,mpstat -P ALL 4 10
ytop
para evaluar la actividad de CPU y memoria.vmstat 4 10 mpstat -P ALL 4 10 top
- Salga de
top
introduciendo Crtl+C.
- Salga de
-
Utilice el comando
pkill
para terminar los procesosstress
.pkill stress
-
Vuelva a ejecutar los comandos
vmstat 4 4
ympstat 4 4
para ver una línea base de la actividad del sistema. -
Ejecute un nuevo comando
stress
y agregue la opción--io
para iniciar la actividad de entrada/salida en el sistema.stress --cpu 8 --vm 8 --vm-bytes 512M --io 8 &
-
Ejecute
vmstat 4 10
,mpstat -P ALL 4 10
ytop
para evaluar la actividad de CPU, memoria, entrada/salida.vmstat 4 10 mpstat -P ALL 4 10 top
-
Salga de
top
introduciendo Crtl+C. -
Utilice
pkill
para terminarstress
.
-
Más recursos de aprendizaje
Explore otras prácticas en docs.oracle.com/learn o acceda a contenido de aprendizaje más gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de formación de Oracle.
Para obtener documentación sobre los productos, visite Oracle Help Center.
Monitor system resources on Oracle Linux
F49876-04
May 2022
Copyright © 2021, Oracle and/or its affiliates.