Mengonfigurasi waktu tunggu pelanggaran PDB

Dokumen ini menunjukkan cara mengonfigurasi nilai waktu tunggu jika pengosongan node cluster melanggar anggaran gangguan Pod (PDB).

Saat node dikosongkan, semua Pod di node tersebut harus dihentikan. Secara default, jika penghentian Pod melanggar PDB, pengosongan node akan diblokir.

Dalam beberapa situasi, Anda mungkin ingin mengonfigurasi waktu maksimum saat pengosongan node dapat diblokir oleh pelanggaran PDB. Misalnya, Anda mungkin ingin mengonfigurasi nilai waktu tunggu sebelum memulai update atau upgrade cluster. Atau, Anda mungkin perlu mengonfigurasi nilai waktu tunggu untuk node yang saat ini diblokir agar tidak habis oleh pelanggaran PDB.

Menetapkan nilai waktu tunggu

Setiap node direpresentasikan oleh objek Machine.

Cantumkan objek Machine di cluster:

kubectl --kubeconfig CLUSTER_KUBECONFIG get machines

Ganti CLUSTR_KUBECONIFG dengan jalur file kubeconfig cluster.

Contoh output:

my-node-pool-7f864959cd-cw472
my-node-pool-7f864959cd-kh86m
my-node-pool-7f864959cd-wtpvx

Buka objek Komputer untuk mengedit:

kubectl --kubeconfig CLUSTER_KUBECONFIG edit machine MACHINE_NAME

Ganti MACHINE_NAME dengan nama objek Machine.

Di editor, tambahkan anotasi ini:

onprem.cluster.gke.io/pdb-violation-timeout: TIMEOUT

Ganti TIMEOUT dengan string yang menentukan durasi waktu tunggu. Satuan waktu yang valid adalah "s", "m", "h". Contoh nilai waktu adalah "1h", "1h30m", "10m", dan "100s".

Jika Anda menetapkan nilai waktu tunggu ke "0s", waktu tunggu pelanggaran PDB tidak akan pernah habis. Ini sama dengan perilaku default.

Contoh:

apiVersion: cluster.k8s.io/v1alpha1
kind: Machine
metadata:
  annotations:
    kubelet-version: 1.23.5-gke.1502
    onprem.cluster.gke.io/gke-on-prem-version: 1.12.0-gke.430
    vm-ip-address: 203.0.113.2
    onprem.cluster.gke.io/pdb-violation-timeout: "5m"

Tutup sesi pengeditan.

Update berkelanjutan

Selama update berkelanjutan, mesin lonjakan baru akan dibuat terlebih dahulu. Kemudian, node lama akan dikosongkan, dan setelah semua Pod di dalamnya dihapus, objek Mesin lama dan objek Node akan dihapus. Anotasi waktu tunggu pelanggaran PDB tidak dipertahankan di objek Machine yang baru dibuat.