Mengganti kepadatan Pod untuk node pool

Anda dapat mengonfigurasi kepadatan Pod untuk setiap node pool guna mengganti setelan di seluruh cluster, yang membantu Anda meningkatkan efisiensi resource. Kemampuan ini berguna untuk node pool khusus, seperti node dengan GPU, yang persyaratan workload atau alokasi alamat IP yang efisien memerlukan nilai yang berbeda untuk Pod maksimum per node.

Sebelum memulai

Kemampuan untuk menentukan kepadatan Pod untuk node pool hanya tersedia untuk cluster dengan salah satu konfigurasi jaringan berikut:

Mengonfigurasi kepadatan Pod untuk node pool

Konfigurasikan kepadatan Pod dalam spesifikasi NodePool untuk mengganti setelan tingkat cluster. Konfigurasi ini bersifat opsional. Sistem memperoleh ukuran rentang CIDR yang ditetapkan ke node dari parameter Pod maksimum per node.

Konfigurasi maxPodsPerNode tidak dapat diubah setelah pembuatan node pool. Sistem akan memvalidasi setelan maxPodsPerNode untuk memastikan alamat IP yang memadai untuk node di node pool. Validasi ini menggunakan binding label yang ketat, di mana ClusterCIDRConfig mengikat ke node pool menggunakan pemilih node. Anda dapat melewati validasi ini dengan menetapkan anotasi baremetal.cluster.gke.io/skip-pod-cidr-size-check pada CR Cluster atau di level NodePool.

  1. Buat resource ClusterCIDRConfig

    Resource ini mengikat ke NodePool tertentu menggunakan pemilih node.

    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)
    

    Ganti NODE_POOL_NAME dengan nama NodePool Anda.

  2. Buat node pool dengan kepadatan Pod yang diganti.

    Tentukan kolom nodeConfigOverride dalam definisi NodePool. Kolom ini berisi konfigurasi podDensity.

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

    Ganti kode berikut:

    • NODEPOOL_NAME: nama resource node pool yang nilai Pod maksimum per nodenya Anda ganti.

    • CLUSTER_NAMESPACE: namespace cluster tempat node pool berada.

    • CLUSTER_NAME: nama cluster tempat Anda mengganti setelan node pool.

    • MAX_PODS_PER_NODE: jumlah maksimum Pod yang dapat Anda jalankan di satu node dalam node pool yang ditentukan.

Langkah berikutnya