Riserve di risorse del nodo di lavoro

Comprendere le riserve di risorse dei nodi di lavoro ti aiuta a pianificare la capacità del cluster e a risolvere i problemi relativi alla pianificazione dei pod.

IBM Cloud Kubernetes Service imposta riserve di risorse di calcolo che limitano le risorse di calcolo disponibili su ciascun nodo di lavoro. La memoria riservata, le risorse della CPU e gli ID dei processi (PID) non possono essere utilizzati dai pod sul nodo di lavoro e riducono le risorse allocabili su ciascun nodo di lavoro. Quando distribuisci inizialmente i pod, se il nodo di lavoro non dispone di sufficienti risorse assegnabili, la distribuzione non riesce. Inoltre, se i pod superano il limite di risorse del nodo di lavoro per memoria e CPU, i pod vengono rimossi. In Kubernetes, questo limite è denominato “soglia di espulsione rigida ”. Per i pod che superano il limite PID, i pod ricevono tutti i PID assegnabili ma non vengono rimossi in base ai PID.

Quando verificare le riserve di risorse

Verificare le riserve di risorse dei nodi di lavoro quando:

  • Pianificazione della capacità del cluster e determinazione del numero di nodi di lavoro necessari
  • Risoluzione dei problemi relativi agli errori di pianificazione o alle espulsioni dei pod
  • Calcolo delle risorse disponibili per i tuoi carichi di lavoro
  • Come stabilire se è necessario aggiungere altri nodi di lavoro al proprio cluster

Se i PID, la CPU o la memoria disponibili sono inferiori a quelli riservati dal nodo di lavoro, Kubernetes inizia a rimuovere i pod per ripristinare risorse di calcolo e PID sufficienti. I pod vengono ripianificati su un altro nodo di lavoro, laddove disponibile. Se i tuoi pod vengono espulsi frequentemente, aggiungi altri nodi di lavoro al tuo cluster oppure imposta dei limiti di risorse per i tuoi pod.

Comprendere i livelli delle riserve di risorse

Le risorse riservate sul nodo di lavoro dipendono dal numero di PID, dalla CPU e dalla memoria di cui è dotato il nodo stesso. IBM Cloud Kubernetes Service definisce i livelli di PID, CPU e memoria come illustrato nelle tabelle seguenti. Se il nodo di lavoro dispone di risorse di calcolo su più livelli, una percentuale dei PID, delle risorse CPU e di memoria viene riservata a ciascun livello.

I cluster hanno anche prenotazioni e limiti dell'ID del processo (PID) per evitare che un pod utilizzi troppi PID o garantire che siano presenti abbastanza PID per kubelet e altri componenti di sistema IBM Cloud Kubernetes Service. Se le prenotazioni o i limiti di PID vengono raggiunti, Kubernetes non crea o assegna nuovi PID finché non vengono rimossi abbastanza processi per liberare dei PID esistenti. La quantità totale di PID su un nodo di lavoro corrisponde circa a 8.000 PID per GB di memoria sul nodo di lavoro. Ad esempio, un nodo di lavoro con 16 GB di memoria ha circa 128.000 PID (16 × 8,000 = 128,000).

Per verificare la quantità di risorse di calcolo attualmente utilizzate sul tuo nodo di lavoro, esegui kubectl top node.

Riserve di memoria del nodo di lavoro per livello. La tabella riporta i livelli di memoria nella prima colonna, la percentuale o la quantità riservata nella seconda colonna e alcuni esempi di calcolo per due diverse dimensioni dei nodi di lavoro nelle colonne restanti.
Questa tabella illustra le riserve di memoria per i nodi di lavoro. La prima colonna elenca i livelli di memoria, la seconda colonna indica la percentuale o la quantità riservata a ciascun livello, mentre le colonne restanti forniscono esempi di calcolo per un nodo di lavoro da 16 GB e uno da 256 GB.
Livello di memoria % o quantità riservata Esempio di nodo di lavoro b3c.4x16 (16 GB) Esempio di nodo di lavoro mg1c.28x256 (256 GB)
Primi 4 GB (0 - 4 GB) 25% di memoria 1 GB 1 GB
Prossimi 4 GB (5 - 8 GB) 20% di memoria 0,8 GB 0,8 GB
Prossimi 8 GB (9 - 16 GB) 10% di memoria 0,8 GB 0,8 GB
Prossimi 112 GB (17 - 128 GB) 6% di memoria N/D 6,72 GB
GB rimanenti (129 GB+) 2% di memoria N/D 2,54 GB
Riserva supplementare per kubelet sfratto 100 MB 100 MB (quantità fissa) 100 MB (quantità fissa)
Totale riservato (varia) 2,7 GB di 16 GB totali 11,96 GB di 256 GB totali
Riserve di CPU del nodo di lavoro per livello. La tabella riporta, nella prima colonna, i livelli di CPU, nella seconda colonna la percentuale o la quantità riservata e, nelle colonne restanti, alcuni esempi di calcolo relativi a due diverse dimensioni dei nodi di lavoro.
Questa tabella illustra le riserve di CPU per i nodi di lavoro. La prima colonna elenca i livelli di CPU, la seconda colonna indica la percentuale o la quantità riservata per ciascun livello, mentre le colonne restanti forniscono esempi di calcolo per un nodo di lavoro a 4 core e un nodo di lavoro a 28 core.
Livello di CPU % o quantità riservata b3c.4x16 Esempio di nodo worker (quattro core) Esempio di nodo di lavoro mg1c.28x256 (28 core)
Primo core (Core 1) 6% di core 0,06 core 0,06 core
Prossimi due core (core 2 - 3) 1% di core 0,02 core 0,02 core
Prossimi due core (core 4 - 5) 0.5% di core 0,005 core 0,01 core
Core rimanenti (Core 6+) 0,25% di core N/D 0,0575 core
Totale riservato (varia) 0,085 core di un totale di quattro core 0,1475 core di 28 core totali
Riserva di PID dei nodi di lavoro per livello. La tabella riporta, nella prima colonna, gli intervalli totali di PID, nella seconda colonna la percentuale riservata, nella terza colonna la percentuale disponibile per i pod e, nelle righe restanti, alcuni esempi di calcolo per due diverse dimensioni dei nodi di lavoro.
Questa tabella illustra le riserve PID per i nodi di lavoro. La prima colonna elenca gli intervalli totali di PID, la seconda colonna indica la percentuale riservata, la terza colonna indica la percentuale disponibile per i pod, mentre le righe restanti forniscono esempi di calcoli per un nodo di lavoro con 126.878 PID e per un nodo di lavoro con 2.062.400 PID.
PID totali % riservato % disponibile per il pod
200.000 20% dei PID 35% dei PID
200.000 - 499.999 10% dei PID 40% dei PID
≥ 500.000 5% dei PID 45% dei PID
b3c.4x16 nodo di lavoro: 126.878 PID 25.376 PID (20%) 44.407 PID (35%)
mg1c.28x256 nodo di lavoro: 2.062.400 PID 103.120 PID (5%) 928.085 PID (45%)
Riserve di memoria temporanea su disco del nodo di lavoro. La tabella riporta, nella prima colonna, il fornitore dell'infrastruttura, nella seconda colonna il tipo di disco e nella terza colonna la percentuale di spazio su disco riservata.
Questa tabella descrive le riserve di memoria temporanea su disco per i nodi di lavoro. La prima colonna indica il fornitore dell'infrastruttura (Classic o VPC), la seconda colonna mostra quale disco viene utilizzato e la terza colonna indica che per entrambi i fornitori è riservato il 10% dello spazio su disco.
Provider infrastruttura Disco % di disco riservato
Classic Disco secondario 10%
VPC Disco di avvio 10%

I valori del nodo di lavoro di esempio sono forniti soltanto come un esempio. L'utilizzo reale potrebbe variare leggermente.