Mengonfigurasi waktu tunggu pelanggaran PDB

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

Jika node dikosongkan, semua Pod pada node tersebut harus dihentikan. Secara default, jika penghentian Pod melanggar PDB, penghentian node akan diblokir.

Dalam beberapa situasi, Anda mungkin ingin mengonfigurasi jangka waktu maksimum agar 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 dikosongkan oleh pelanggaran PDB.

Menyetel nilai waktu tunggu

Setiap node direpresentasikan oleh objek Mesin.

Cantumkan objek Mesin 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 Machine untuk mengedit:

kubectl --kubeconfig CLUSTER_KUBECONFIG edit machine MACHINE_NAME

Ganti MACHINE_NAME dengan nama objek Mesin.

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 "1j", "1j30m", "10m", dan "100dtk".

Jika Anda menetapkan nilai waktu tunggu ke "0s", 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 surge baru akan dibuat terlebih dahulu. Kemudian node lama dikuras, dan setelah semua Pod di dalamnya dikeluarkan, objek Mesin dan objek Node lama akan dihapus. Anotasi waktu tunggu pelanggaran PDB tidak akan dipertahankan di objek Mesin yang baru dibuat.