Puoi configurare la densità dei pod per i singoli node pool in modo da eseguire l'override dell'impostazione a livello di cluster, il che ti aiuta a migliorare l'efficienza delle risorse. Questa funzionalità è utile per i node pool specializzati, come i nodi con GPU, in cui i requisiti del workload o l'allocazione efficiente degli indirizzi IP richiedono un valore diverso per il numero massimo di pod per nodo.
Prima di iniziare
La possibilità di specificare la densità dei pod per i node pool è disponibile solo per i cluster con una delle seguenti configurazioni di rete:
Configura la densità dei pod per un pool di nodi
Configura la densità dei pod all'interno della specifica NodePool per eseguire l'override delle impostazioni a livello di cluster. Questa configurazione è facoltativa. Il sistema ricava le dimensioni dell'intervallo CIDR assegnato al nodo dal parametro del numero massimo di pod per nodo.
La configurazione maxPodsPerNode è immutabile dopo la creazione pool di nodi. Il sistema convalida l'impostazione maxPodsPerNode per garantire un numero sufficiente di indirizzi IP per i nodi nel pool di nodi. Questa convalida utilizza l'associazione di etichette rigida, in cui un ClusterCIDRConfig si associa a un pool di nodi utilizzando un selettore di nodi. Puoi saltare questa convalida impostando l'annotazione baremetal.cluster.gke.io/skip-pod-cidr-size-check sulla CR del cluster o a livello di NodePool.
Crea una risorsa
ClusterCIDRConfig.Questa risorsa si associa a un NodePool specifico utilizzando un selettore di nodi.
apiVersion: networking.gke.io/v1alpha1 kind: ClusterCIDRConfig metadata: name: my-nodepool-cidr-config spec: nodeSelector: matchLabels: baremetal.cluster.gke.io/node-pool: NODE_POOL_NAME # ... other CIDR config fields (e.g., podCIDR, perNodeMaskSize)Sostituisci
NODE_POOL_NAMEcon il nome del tuo NodePool.Crea il pool di nodi con densità dei pod sottoposta a override.
Specifica il campo
nodeConfigOverridenella definizione di NodePool. Questo campo contiene la configurazionepodDensity.apiVersion: baremetal.cluster.gke.io/v1 kind: NodePool metadata: name: NODEPOOL_NAME namespace: CLUSTER_NAMESPACE spec: cluster: CLUSTER_NAME nodeConfigOverride: podDensity: maxPodsPerNode: MAX_PODS_PER_NODE # ... other NodePoolSpec fields like nodeCount, taints, labels etc. ...Sostituisci quanto segue:
NODEPOOL_NAME: il nome della risorsa del pool di nodi di cui stai eseguendo l'override del valore del numero massimo di pod per nodo.CLUSTER_NAMESPACE: lo spazio dei nomi del cluster in cui si trova il pool di nodi.CLUSTER_NAME: il nome del cluster in cui esegui l'override delle impostazioni pool di nodi.MAX_PODS_PER_NODE: il numero massimo di pod che puoi eseguire su un singolo nodo nel pool di nodi specificato.
Passaggi successivi
- Scopri le differenze tra i modelli di rete in modalità flat e in modalità isola.
- Scopri come implementare il modello di rete in modalità IPv4 flat.
- Scopri come creare un cluster con networking a doppio stack IPv4/IPv6.
- Scopri di più sull'operatore GPU NVIDIA in bundle.
- Scopri come correlano i blocchi CIDR dei pod, il numero di nodi e la densità dei pod.