CPUTool: limitar y controlar la utilización de la CPU de cualquier proceso en Linux

CPUTool: limitar y controlar la utilización de la CPU de cualquier proceso en Linux

Una de las áreas críticas bajo la supervisión del rendimiento de Linux tiene que ser el uso de la CPU y la carga del sistema. Hay varias herramientas de monitoreo del rendimiento de Linux para vigilar cómo se desarrollan las cosas en un sistema.

Algunas de estas herramientas simplemente generan el estado/estadísticas del sistema, mientras que algunas otras le brindan medios para administrar el rendimiento del sistema. . Una de estas herramientas llamada CPUTool.

CPUTool. es una herramienta de línea de comandos simple pero poderosa para limitar y controlar la utilización de la CPU de cualquier proceso a un límite dado y permite la interrupción de la ejecución del proceso si la carga del sistema sobrepasa un umbral definido.

¿Cómo funciona CPUTool?

Para limitar el uso de la CPU, cputool envía las señales SIGSTOP. y SIGCONT. a los procesos y esto está determinado por la carga del sistema. Se basa en el pseudo-sistema de archivos/proc para leer PIDs. y sus medidas de uso de CPU.

Puede usarse para limitar el uso de CPU o la carga del sistema influenciada por un solo proceso o un grupo de procesos hasta un límite determinado y/o suspender procesos si la carga del sistema supera un umbral.

Lectura sugerida: Comprenda los promedios de carga de Linux y monitoree el rendimiento de Linux

Instale CPUTool para limitar el uso de la CPU y Load Average

freestar.config.enabled_slots.push

Un CPUTool. solo está disponible para instalar en Debian/Ubuntu y sus derivados de los repositorios del sistema predeterminados usando la herramienta de administración de paquetes.

$ sudo apt install cputool Limitando el uso de CPU del proceso con CUPTool

Ahora veamos cómo funciona realmente cputool. Para demostrarlo todo, ejecutaremos un comando dd. que debería resultar en un alto porcentaje de CPU, en segundo plano y mostrar su PID.

# dd if =/dev/zero of =/dev/null &

Para monitorear el uso de la CPU, podemos usar las herramientas top o glances que nos permiten ver un estado actualizado regularmente en tiempo real de los procesos de un sistema Linux en ejecución:

# top  Monitor dd Command CPU Usage  Monitor dd Command CPU Usage Supervisar el uso de CPU del comando dd

De la salida anterior, podemos ver que el comando dd. tiene el porcentaje más alto de Tiempo de CPU 99.7%) Ahora podemos limitar esto usando cputool como se muestra a continuación.

El indicador–cpu-limit o-c se usa para establecer un porcentaje de uso para un proceso o grupo de procesos y-p para especificar un PID. El siguiente comando limitará el comando dd (PID 8275) al 50%. del uso de un núcleo de CPU:

# cputool–cpu-limit 50-p 8275

Después de ejecutar cputool, podemos comprobar el nuevo uso de CPU para el proceso (PID 8275) una vez más. Ahora, el uso de CPU para el proceso dd. debería oscilar entre ( 49,0%-52,0%. .

# top  Limite la CPU del proceso al 50% de uso  Limite Process CPU al 50% Usage Limite Process CPU to 50% Usage

Para limitar aún más el uso de CPU de dd a 20%. podemos ejecutar cputool por segunda vez:

# cputool–cpu-limit 20-p 8275

Luego, verifique inmediatamente usando herramientas como top o miradas como esta (el uso de CPU para dd. ahora debería oscilar entre 19.0%-22.0%. o un poco más allá de esto):

# top  Limitar el uso de CPU del proceso al 20%  Limita el uso de CPU del proceso al 20% Limitar el uso de CPU de proceso al 20%

Tenga en cuenta que el shell no espera ninguna entrada del usuario mientras se ejecuta cputool; por lo tanto, deja de responder. Para eliminarlo (esto terminará la operación de limitación de uso de la CPU), presione Ctrl + C.

Es importante destacar que, para especificar un grupo de procesos (un programa con varias instancias en ejecución, cada una con un PID distinto), por ejemplo, HTTP web servidor:

# pidof apache2 9592 3643 3642 3641 3640 3638 3637 1780

Utilice el indicador-P así:

# cputool–cpu-limit 20-P 1780 Limitación de la carga del sistema con CUPTool

La opción-l se usa para especificar la carga máxima que puede soportar el sistema para que el proceso o grupo de procesos continúe ejecutándose. Podemos usar un valor fraccionario (por ejemplo, 2.5. .

El siguiente ejemplo significa ejecutar rsync para una copia de seguridad local solo cuando la carga del sistema no exceda 3.5.

# cputool–load-limit 3.5–rsync-av/home/tecmint/backup/`date +% Y-% m-% d`/

Para obtener más información y uso, consulte el Página de manual de CPUTool:

# man cputool

Consulte las siguientes guías útiles para encontrar información de CPU y monitoreo del rendimiento de la CPU:

  1. 9 comandos útiles para obtener información de CPU en Linux
  2. Cpustat: supervisa la utilización de la CPU mediante la ejecución de procesos en Linux
  3. CoreFreq: una potente herramienta de supervisión de la CPU para sistemas Linux
  4. Encuentra los principales procesos en ejecución por mayor uso de memoria y CPU en Linux

En conclusión, CPUTool. realmente resulta útil para la gestión del rendimiento de Linux. Comparta sus pensamientos sobre este artículo a través del formulario de comentarios a continuación.

Leave a comment

Your email address will not be published. Required fields are marked *