Pod-Dichte für einen Knotenpool überschreiben

Sie können die Pod-Dichte für einzelne Knotenpools konfigurieren, um die clusterweite Einstellung zu überschreiben. So können Sie die Ressourceneffizienz verbessern. Diese Funktion ist nützlich für spezialisierte Knotenpools, z. B. Knoten mit GPUs, bei denen Arbeitslastanforderungen oder eine effiziente IP-Adresszuweisung einen anderen Wert für die maximale Anzahl von Pods pro Knoten erfordern.

Hinweis

Die Möglichkeit, die Pod-Dichte für Knotenpools anzugeben, ist nur für Cluster mit einer der folgenden Netzwerkkonfigurationen verfügbar:

Pod-Dichte für einen Knotenpool konfigurieren

Konfigurieren Sie die Pod-Dichte in der NodePool-Spezifikation, um Einstellungen auf Clusterebene zu überschreiben. Diese Konfiguration ist optional. Das System leitet die Größe des dem Knoten zugewiesenen CIDR-Bereichs vom Parameter „Maximale Anzahl von Pods pro Knoten“ ab.

Die maxPodsPerNode-Konfiguration kann nach dem Erstellen des Knotenpools nicht mehr geändert werden. Das System validiert die Einstellung maxPodsPerNode, um sicherzustellen, dass genügend IP-Adressen für Knoten im Knotenpool vorhanden sind. Bei dieser Validierung wird eine strikte Labelbindung verwendet, bei der ein ClusterCIDRConfig mithilfe einer Knotenauswahl an einen Knotenpool gebunden wird. Sie können diese Validierung überspringen, indem Sie die Annotation baremetal.cluster.gke.io/skip-pod-cidr-size-check für die Cluster-CR oder auf NodePool-Ebene festlegen.

  1. ClusterCIDRConfig-Ressource erstellen

    Diese Ressource wird mithilfe einer Knotenauswahl an einen bestimmten NodePool gebunden.

    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)
    

    Ersetzen Sie NODE_POOL_NAME durch den Namen Ihres Knotenpools.

  2. Erstellen Sie den Knotenpool mit überschriebener Pod-Dichte.

    Geben Sie das Feld nodeConfigOverride in der NodePool-Definition an. Dieses Feld enthält die podDensity-Konfiguration.

    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. ...
    

    Ersetzen Sie Folgendes:

    • NODEPOOL_NAME: der Name der Knotenpoolressource, deren Wert für die maximale Anzahl von Pods pro Knoten Sie überschreiben.

    • CLUSTER_NAMESPACE: der Namespace des Clusters, in dem sich der Knotenpool befindet.

    • CLUSTER_NAME: Der Name des Clusters, in dem Sie die Knotenpool-Einstellungen überschreiben.

    • MAX_PODS_PER_NODE: die maximale Anzahl von Pods, die Sie auf einem einzelnen Knoten im angegebenen Knotenpool ausführen können.

Nächste Schritte