Reservas de recursos del nodo trabajador

Conocer las reservas de recursos de los nodos de trabajo te ayuda a planificar la capacidad del clúster y a resolver problemas de programación de pods.

IBM Cloud Kubernetes Service establece reservas de recursos de cálculo que limitan los recursos de cálculo disponibles en cada nodo trabajador. Los pods del nodo de trabajador no pueden utilizar la memoria reservada, los recursos de CPU ni los ID de proceso (PID), y se reducen los recursos asignables en cada nodo de trabajador. Al desplegar inicialmente los pods, si el nodo trabajador no tiene suficientes recursos asignables, el despliegue falla. Además, si los pods superan el límite de recursos de memoria y de CPU del nodo trabajador, los pods se desalojan. En Kubernetes, este límite se denomina « umbral de expulsión estricto ». Para los pods que superan el límite de PID, los pods reciben tantos PID como sean asignables, pero no se desalojan en función de los PID.

Cuándo comprobar las reservas de recursos

Comprueba las reservas de recursos de los nodos de trabajo cuando:

  • Planificación de la capacidad del clúster y determinación del número de nodos de trabajo necesarios
  • Solución de problemas relacionados con fallos en la programación de pods o con su expulsión
  • Cálculo de los recursos disponibles para tus cargas de trabajo
  • Cómo determinar si necesitas añadir más nodos de trabajo a tu clúster

Si hay menos PID, CPU o memoria disponibles de los que reserva el nodo de trabajo, « Kubernetes » comienza a expulsar pods para restablecer los recursos de computación y los PID suficientes. Los pods se vuelven a planificar en otro nodo trabajador si hay uno disponible. Si tus pods se expulsan con frecuencia, añade más nodos de trabajo a tu clúster o establece límites de recursos para tus pods.

Comprender los niveles de reserva de recursos

Los recursos que se reservan en tu nodo de trabajo dependen del número de PID, de la CPU y de la memoria con los que cuente dicho nodo. IBM Cloud Kubernetes Service define los niveles de PID, CPU y memoria tal y como se muestra en las siguientes tablas. Si tu nodo de trabajo cuenta con recursos de cálculo en varios niveles, se reserva un porcentaje de tus PID, CPU y recursos de memoria para cada nivel.

Los clústeres también tienen reservas y límites de ID de proceso (PID) para evitar que un pod utilice demasiados PID o garantizar que existan suficientes PID para kubelet y otros componentes del sistema de IBM Cloud Kubernetes Service. Si se alcanzan las reservas o los límites de PID, Kubernetes no crea ni asigna nuevos PID hasta que se eliminan procesos suficientes para liberar los PID existentes. La cantidad total de PID en un nodo trabajador aproximadamente corresponde a 8000 PID por GB de memoria en el nodo trabajador. Por ejemplo, un nodo trabajador con 16 GB de memoria tiene aproximadamente 128.000 PID (16 × 8,000 = 128,000).

Para comprobar cuántos recursos de computación se están utilizando actualmente en tu nodo de trabajo, ejecuta kubectl top node.

Reservas de memoria de nodo trabajador por nivel. La tabla muestra los niveles de memoria en la primera columna, el porcentaje o la cantidad reservada en la segunda columna y ejemplos de cálculos para dos tamaños diferentes de nodos de trabajo en las columnas restantes.
En esta tabla se describen las reservas de memoria para los nodos de trabajo. La primera columna enumera los niveles de memoria; la segunda columna muestra el porcentaje o la cantidad reservada para cada nivel; y las columnas restantes ofrecen ejemplos de cálculos para un nodo de trabajo de 16 GB y otro de 256 GB.
Nivel de memoria % o cantidad reservada Ejemplo de nodo de trabajador b3c.4x16 (16 GB) Ejemplo de nodo trabajador mg1c.28x256 (256 GB)
Primero 4 GB (0 - 4 GB) 25 % de memoria 1 GB 1 GB
Siguiente 4 GB (5 - 8 GB) 20 % de memoria 0,8 GB 0,8 GB
Siguiente 8 GB (9 - 16 GB) 10 % de memoria 0,8 GB 0,8 GB
Siguiente 112 GB (17 - 128 GB) 6 % de memoria N/D 6,72 GB
GB restantes (129 GB+) 2 % de memoria N/D 2,54 GB
Reserva adicional por kubelet desahucio 100 MB 100 MB (cantidad fija) 100 MB (cantidad fija)
Total reservado (varía) 2,7 GB de 16 GB total 11,96 GB de 256 GB totales
Reservas de CPU de nodo trabajador por nivel. La tabla muestra los niveles de CPU en la primera columna, el porcentaje o la cantidad reservada en la segunda columna y ejemplos de cálculos para dos tamaños diferentes de nodos de trabajo en las columnas restantes.
Esta tabla describe las reservas de CPU para los nodos de trabajo. La primera columna enumera los niveles de CPU; la segunda columna muestra el porcentaje o la cantidad reservada para cada nivel; y las columnas restantes ofrecen ejemplos de cálculos para un nodo de trabajo de 4 núcleos y otro de 28 núcleos.
Nivel de CPU % o cantidad reservada Ejemplo de nodo de trabajador b3c.4x16 (cuatro núcleos) Ejemplo de nodo trabajador mg1c.28x256 (28 núcleos)
Primer núcleo (núcleo 1) 6 % de núcleos 0,06 núcleos 0,06 núcleos
Siguientes dos núcleos (núcleos 2 - 3) 1 % de núcleos 0,02 núcleos 0,02 núcleos
Siguientes dos núcleos (núcleos 4 - 5) 0,5 % de núcleos 0,005 núcleos 0,01 núcleos
Núcleos restantes (+6 núcleos) 0,25 % de núcleos N/D 0,0575 núcleos
Total reservado (varía) 0,085 núcleos de cuatro en total 0,1475 núcleos de 28 núcleos totales
Reservas de PID de los nodos de trabajo por nivel. La tabla muestra los rangos totales de PID en la primera columna, el porcentaje reservado en la segunda columna, el porcentaje disponible para los pods en la tercera columna y ejemplos de cálculos para dos tamaños diferentes de nodos de trabajo en las filas restantes.
Esta tabla describe las reservas de PID para los nodos de trabajo. La primera columna recoge los rangos totales de PID; la segunda, el porcentaje reservado; la tercera, el porcentaje disponible para los pods; y las filas restantes ofrecen ejemplos de cálculos para un nodo de trabajo con 126 878 PID y otro con 2 062 400 PID.
PID totales % reservado % disponible para el pod
< 200.000 20 % de PID 35 % de PID
200.000 - 499.999 10 % de PID 40 % de PID
≥ 500.000 5 % de PID 45 % de PID
Nodo de trabajador b3c.4x16: 126.878 PID 25.376 PID (20 %) 44.407 PID (35%)
Nodo de trabajador mg1c.28x256: 2.062.400 PID 103.120 PID (5 %) 928.085 PID (45 %)
Reservas de almacenamiento efímero en disco de los nodos de trabajo. La tabla muestra el proveedor de infraestructura en la primera columna, el tipo de disco en la segunda columna y el porcentaje de disco reservado en la tercera columna.
Esta tabla describe las reservas de almacenamiento efímero en disco para los nodos de trabajo. La primera columna indica el proveedor de infraestructura (Classic o VPC), la segunda columna muestra qué disco se utiliza y la tercera columna indica que se reserva un 10 % del espacio en disco para ambos proveedores.
Proveedor de infraestructura Disco % de disco reservado
Clásico Disco secundario 10 %
VPC Disco de arranque 10 %

Los valores de nodo trabajador de ejemplo solo se muestran como ejemplo. El uso real puede variar ligeramente.