Perubahan ukuran node otomatis

Di Google Distributed Cloud, Anda dapat mengaktifkan pengubahan ukuran node otomatis untuk cluster. Mengubah ukuran berarti resource CPU dan memori yang ditetapkan ke node disesuaikan.

Jika pengubahan ukuran node otomatis diaktifkan untuk cluster admin, node add-on di cluster admin akan diubah ukurannya sesuai dengan jumlah total node di cluster admin. Untuk setiap cluster pengguna, ada satu atau beberapa node control plane di cluster admin. Jadi, saat Anda membuat lebih banyak cluster pengguna, jumlah total node di cluster admin akan meningkat, dan ukuran node add-on di cluster admin akan otomatis ditingkatkan.

Jika pengubahan ukuran node otomatis diaktifkan untuk cluster pengguna, node control plane untuk cluster pengguna akan diubah ukurannya sesuai dengan jumlah node dalam cluster pengguna. Jadi, saat Anda menambahkan lebih banyak node pekerja ke cluster pengguna, ukuran node bidang kontrol akan bertambah. Ingatlah bahwa node control plane untuk cluster pengguna berada di cluster admin.

Cluster pengguna dengan ketersediaan tinggi (HA), cluster pengguna memiliki tiga node bidang kontrol di cluster admin, dan cluster pengguna non-HA memiliki satu node bidang kontrol di cluster admin. Mengubah ukuran node memerlukan pembuatan ulang node. Jadi, saat node control plane untuk cluster pengguna non-HA diubah ukurannya, mungkin akan ada sedikit waktu nonaktif.

Pengubahan ukuran node otomatis tidak didukung di cluster lanjutan.

Mengaktifkan pengubahan ukuran node untuk node add-on cluster admin

Lakukan langkah-langkah di bagian ini hanya jika cluster admin Anda memiliki node add-on. Apakah cluster admin memiliki node add-on bergantung pada konfigurasi dan versi tertentu sebagai berikut:

  • Cluster admin non-HA: Cluster admin non-HA memiliki satu node bidang kontrol dan dua node add-on.
  • Cluster admin HA:
    • Versi 1.16 dan yang lebih lama: Cluster admin HA memiliki tiga node bidang kontrol dan dua node add-on.
    • Versi 1.28 dan yang lebih tinggi: Cluster admin HA tidak memiliki node add-on. Ketiga node tersebut adalah node bidang kontrol.

Untuk menentukan apakah cluster Anda memiliki node add-on, jalankan perintah berikut:

kubectl get nodes --kubeconfig ADMIN_CLUSTER_KUBECONFIG'

Ganti ADMIN_CLUSTER_KUBECONFIG dengan jalur file kubeconfig cluster admin Anda.

Jika cluster Anda memiliki node add-on, aktifkan pengubahan ukuran node untuk node add-on, seperti berikut:

Di file konfigurasi cluster admin, tetapkan addonNode.autoResize.enabled ke true:

addonNode:
  autoResize:
    enabled: true

Untuk cluster admin baru, selesaikan petunjuk di Membuat cluster admin.

Untuk cluster admin yang ada:

gkectl update admin --config ADMIN_CLUSTER_CONFIG --kubeconfig ADMIN_CLUSTER_KUBECONFIG

Ganti kode berikut:

  • ADMIN_CLUSTER_CONFIG: jalur file konfigurasi cluster admin Anda

  • ADMIN_CLUSTER_KUBECONFIG: jalur file kubeconfig cluster admin Anda

Mengaktifkan pengubahan ukuran node untuk node bidang kontrol cluster pengguna

Di file konfigurasi cluster pengguna, tetapkan masterNode.autoResize.enabled ke true:

masterNode:
  autoResize:
    enabled: true

Untuk cluster pengguna baru, selesaikan petunjuk di Membuat cluster pengguna.

Untuk cluster yang ada:

gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG

Ganti kode berikut:

  • ADMIN_CLUSTER_KUBECONFIG: jalur file kubeconfig cluster admin Anda

  • USER_CLUSTER_CONFIG: jalur file konfigurasi cluster pengguna Anda

Setelah pengubahan ukuran node otomatis diaktifkan untuk cluster pengguna, setiap upaya untuk mengubah CPU atau memori node bidang kontrol dengan menjalankan gkectl update akan ditolak. Jika Anda ingin menggunakan gkectl update untuk mengubah CPU atau memori node bidang kontrol cluster pengguna, Anda harus menonaktifkan pengubahan ukuran node otomatis.

Menonaktifkan pengubahan ukuran node untuk node add-on cluster admin

Di file konfigurasi cluster admin, tetapkan addonNode.autoResize.enabled ke false:

addonNode:
  autoResize:
    enabled: false

Update cluster:

gkectl update admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG

Menonaktifkan pengubahan ukuran node untuk node bidang kontrol cluster pengguna

Di file konfigurasi cluster pengguna, tetapkan masterNode.autoResize.enabled ke false:

masterNode:
  autoResize:
    enabled: false

Update cluster:

gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG

Saat Anda menonaktifkan pengubahan ukuran node otomatis untuk cluster pengguna, CPU dan memori untuk node bidang kontrol disesuaikan agar cocok dengan nilai CPU dan memori yang ditentukan dalam file konfigurasi cluster pengguna.

Log dan peristiwa

Untuk menemukan nama Pod yang mengubah ukurannya secara otomatis:

kubectl --kubeconfig ADMIN_KUBECONFIG describe deployment auto-resize-controller

Nama Pod memiliki format auto-resize-controller-xxxxx.

Untuk melihat log dari Pod yang diubah ukurannya secara otomatis:

kubectl --kubeconfig ADMIN_KUBECONFIG logs AUTO_RESIZE_POD_NAME

Pengontrol pengubahan ukuran otomatis menghasilkan peristiwa pada objek MachineDeployment untuk memberikan visibilitas ke dalam keputusan dan tindakan yang relevan dengan pengubahan ukuran.

Untuk menemukan nama MachineDeployment:

kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get machinedeployments --all-namespaces

Untuk melihat peristiwa:

kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG describe machinedeployment USER_CONTROL_PLANE_NODE_MACHINE_DEPLOYMENT
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG describe machinedeployment ADMIN_ADDON_NODE_MACHINE_DEPLOYMENT