Menyesuaikan komponen sistem pada cluster AKS

Halaman ini menjelaskan cara menyesuaikan komponen sistem milik Google di cluster terlampir GKE dengan menerapkan toleransi dan label kustom. Saat menyesuaikan komponen ini, Anda dapat mengelola secara lebih tepat di mana dan bagaimana komponen ini beroperasi dalam lingkungan Anda.

Ringkasan

Saat Anda melampirkan cluster ke Google Cloud, secara default, komponen sistem milik Google tidak menyertakan kolom yang dapat disesuaikan seperti toleransi. Akibatnya, Anda mungkin mengalami masalah seperti Pod yang gagal dijadwalkan di node yang tersedia, yang memengaruhi keseluruhan lampiran dan fungsi cluster. Selain itu, Anda mungkin memerlukan kontrol atas penempatan dan pengelolaan komponen pada node tertentu yang mencakup kemampuan untuk menerapkan label kustom untuk tujuan organisasi dan operasional.

Menyesuaikan komponen sistem akan menyelesaikan masalah ini dan memungkinkan Anda memiliki kontrol dan fleksibilitas yang lebih besar atas cara pengoperasian komponen ini di cluster Anda. Anda dapat menerapkan toleransi dan label kustom ke komponen sistem milik Google:

  • Toleransi memberikan kemampuan bagi komponen Google untuk menjadwalkan ke node yang memiliki taint Kubernetes tertentu, yang memungkinkan Anda menerapkan pemisahan workload atau menggunakan node pool khusus. Toleransi kustom secara langsung menyelesaikan masalah saat taint yang tidak dapat diubah mencegah penempatan komponen yang tepat.

  • Label menawarkan cara yang fleksibel bagi Anda untuk mengategorikan dan mengidentifikasi komponen sistem Google sesuai dengan standar operasional Anda sendiri. Label kustom memungkinkan integrasi yang lebih baik dengan alat pemantauan, logging, dan penerapan kebijakan yang ada.

Batas dan pembatasan

Batasan dan batasan berikut berlaku:

  • Anda hanya dapat menambahkan toleransi dan label kustom saat mendaftarkan cluster.
  • Anda dapat menambahkan hingga 10 toleransi kustom dan 10 label kustom ke cluster Anda.
  • Anda tidak dapat menggunakan label berikut:

    • name
    • component
    • app
    • Label apa pun yang menyertakan k8s.io atau kubernetes.io karena termasuk dalam label yang dicadangkan di Kubernetes
    • Label apa pun yang menyertakan google
    • Label apa pun yang menyertakan gke.io

Menambahkan toleransi kustom

Pod komponen sistem milik Google selalu menyertakan toleransi berikut:

  - key: components.gke.io/gke-managed-components
    operator: Exists

Untuk menentukan toleransi kustom, tambahkan flag --system-component-tolerations ke perintah gcloud container attached clusters register:

gcloud container attached clusters register CLUSTER_NAME \
  --location=GOOGLE_CLOUD_REGION \
  ...
  --system-component-tolerations=COMPONENT_TOLERATION \

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda.
  • GOOGLE_CLOUD_REGION: Google Cloud region untuk mengelola cluster Anda.
  • COMPONENT_TOLERATION: daftar toleransi yang dipisahkan koma yang ingin Anda tambahkan. Anda dapat memberikan kunci, nilai, operator, dan efek dalam format berikut:

    • Untuk operator Equal: gunakan format key=value:operator:effect, misalnya, workload=hpc:Equal:NoSchedule. Setelan ini berarti Pod mentoleransi taint hanya jika taint memiliki kunci dan nilai yang sama persis dengan workload=hpc.
    • Untuk operator Exists: gunakan format key:operator:effect, misalnya, workload:Exists:NoSchedule. Setelan ini berarti Pod mentoleransi taint apa pun dengan kunci workload pada node, terlepas dari nilainya.
    • Untuk penjadwalan di node mana pun: gunakan format :operator:effect, misalnya, :Exists:NoSchedule. Setelan ini berarti Pod mentoleransi taint apa pun pada node yang memiliki efek NoSchedule, dan mengabaikan kunci atau nilai taint.

    Untuk mengetahui daftar operator dan efek yang dapat Anda gunakan, lihat Taint dan Toleransi dalam dokumentasi Kubernetes.

Menambahkan label khusus

Untuk menentukan label kustom, tambahkan tanda --system-component-labels ke perintah gcloud container attached clusters register:

gcloud container attached clusters register CLUSTER_NAME \
  --location=GOOGLE_CLOUD_REGION \
  ...
  --system-component-labels=COMPONENT_LABEL \

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda.
  • GOOGLE_CLOUD_REGION: Google Cloud region untuk mengelola cluster Anda.
  • COMPONENT_LABEL: daftar yang dipisahkan koma dari satu atau beberapa label yang ingin Anda tambahkan. Anda memberikan label dan nilai dalam format key=value. Misalnya, env=production,region=us-east-1. Meskipun setiap label harus memiliki kunci, nilai yang terkait dengan kunci tersebut dapat kosong. Contoh, backend="".

Langkah berikutnya