Verifique el estado y la disponibilidad de sus servidores Linux para obtener un rendimiento óptimo con la herramienta de monitoreo de Linux de Site24x7.
El tiempo de robo de CPU, también conocido como CPU robada, es el porcentaje de tiempo que una CPU virtual dentro de un servidor en la nube espera involuntariamente su tiempo de procesamiento en una CPU física.
En un entorno de nube, un hipervisor actúa como una interfaz entre el servidor físico y su entorno virtualizado. Esta capa de software se instala en el hardware físico y gestiona todas las tareas asignando tiempo de CPU a procesos como equipos virtuales (VM), operaciones de red, solicitudes de E/S de almacenamiento y más.
El tiempo de robo de CPU se produce cuando los procesos están listos para ser ejecutados por la CPU virtual, pero está esperando que el hipervisor le asigne una CPU física. Esto sucede porque el hipervisor está dando servicio a otro VM.
Los equipos virtuales comparten sus recursos —tales como RAM, disco duro, ciclos de CPU, etc.— con otros equipos virtuales del mismo host en un entorno virtual. Si hay cuatro VM idénticos con la misma carga y tamaño en un servidor físico, las matemáticas simples sugieren que cada equipo virtual debe obtener el 25% de los ciclos de CPU.
Sin embargo, el VM terminará consumiendo más de los ciclos asignados en la mayoría de los casos. En algunos casos raros, en los que no está recibiendo los ciclos de CPU asignados, el tiempo de robo aumentará.
Es casi imposible evitar cierta cantidad de tiempo de robo mientras se ejecuta un sistema como un VM en un entorno de nube. Esto se debe a que el equipo virtual comparte el servidor físico con otros.
El tiempo de robo del VM se puede ver ejecutando el comando top en el terminal Linux:
Fig. 1: salida del comando topEl comando top presenta el resumen del sistema junto con la lista de los procesos o hilos gestionados actualmente por el núcleo de Linux.
Como se resalta en la captura de pantalla anterior, el tiempo robado se etiqueta como st
o %st
. Si el valor del tiempo de robo es 20st
, significa que el 20% del tiempo total del proceso se emplea esperando que se asigne una CPU física.
El valor máximo que st puede tener es 100,0. Este es el peor escenario, ya que la CPU virtual no hace más que esperar a que el hipervisor asigne una CPU física. Afortunadamente, esta situación es muy rara.
Hay dos causas principales de alto tiempo de robo de CPU:
Cuando se ejecutan procesos pesados en un VM, los ciclos de CPU asignados a éste pueden no ser suficientes para manejar la carga de trabajo.
En este caso, los proveedores de servidores en la nube sobresuscriben el servidor físico con equipos virtuales. Esto hace imposible que la CPU física gestione los procesos.
Por desgracia, es difícil saber en cuál de los dos casos se encuentra una situación con sólo mirar el tiempo de robo. Además, hay otros factores a considerar. Si hay equipos virtuales idénticos con cargas de trabajo similares que se ejecutan en diferentes hosts, podría ser posible averiguar en qué caso se encuentra la situación.
Los VM que se ejecutan en un hipervisor con un tiempo de robo alto pueden causar problemas significativos. Entre estos se incluyen:
Se recomienda tener tolerancia cero hacia el tiempo de robo alto en un servidor. La CPU robada ralentiza los equipos. Incluso hace que se detengan por completo en circunstancias extremas.
Si el tiempo de robo de CPU es inferior al 10%, entonces no hay de qué preocuparse. La aplicación debería funcionar sin problemas. Sin embargo, es probable que el VM se esté ejecutando más lento de lo esperado si el valor del tiempo de robo es superior al 10%. Es decir, si está por encima del valor normal durante unos 20-30 minutos. Si el tiempo de robo sigue siendo alto, indica una contención de CPU. Esto puede reducir el rendimiento de la aplicación.
Como se mencionó, en la mayoría de los casos el robo de CPU es causado por una mala asignación y recursos insuficientes que conducen a una CPU sobrecargada. Ahora veamos algunas posibles correcciones:
Write for Site24x7 is a special writing program that supports writers who create content for Site24x7 “Learn” portal. Get paid for your writing.
Apply Now