Senario
Sebuah nod pekerja gagal akibat kegagalan perkakasan, menyebabkan Pod diusir dan perkhidmatan terjejas.
Gejala
- Kadar ralat meningkat dan kependaman bertambah
- Sesetengah Pod dalam status Pending (tiada nod tersedia)
- Amaran pemantauan (cth., Node Down, Pod CrashLoopBackOff)
Diagnosis
- Periksa status nod:
kubectl get nodes -o wideuntuk mencari nod NotReady. - Hurai nod:
kubectl describe node <node>untuk lihat keadaan (Ready=False) dan peristiwa. - Kenal pasti Pod terjejas:
kubectl get pods --all-namespaces --field-selector spec.nodeName=<node>. - Periksa peristiwa kluster:
kubectl get events --all-namespaces --sort-by='.lastTimestamp'untuk rekod pengusiran. - Gunakan metrics-server atau Prometheus untuk sahkan tekanan sumber.
Arahan
# Kordon nod untuk menghalang penjadualan baru
kubectl cordon <node>
# Toskan nod (pindahkan Pod dengan selamat)
kubectl drain <node> --ignore-daemonsets --delete-emptydir-data
# Jika nod mati sepenuhnya, paksa padam Pod
kubectl delete pod <pod> --grace-period=0 --force
# Tambah nod baru atau bawa nod lama kembali
kubectl uncordon <node>
Kawalan Risiko
- Sahkan PodDisruptionBudget (PDB) dikonfigurasi sebelum toskan untuk elak gangguan perkhidmatan total.
- Gunakan
--ignore-daemonsetsuntuk langkau Pod DaemonSet. - Berhati-hati dengan
--delete-emptydir-datajika Pod guna volume emptyDir. - Elak toskan berbilang nod serentak.
Balik Semula
- Jika toskan gagal (cth., PDB menghalang), batalkan dengan
kubectl uncordon <node>dan nilai semula. - Untuk kegagalan akibat kemas kini, guna
kubectl rollout undo deployment/<name>. - Pulihkan data dari sandaran PersistentVolume atau snapshot jika perlu.
Pengesahan
- Selepas pemulihan,
kubectl get nodesmengesahkan Ready. kubectl get pods --all-namespaces -o widemenunjukkan Pod berjalan pada nod yang betul.- Uji titik akhir perkhidmatan untuk fungsi normal.
- Pantau metrik (kadar ralat, kependaman) kembali ke garis dasar.
Bila Hantar Tiket OpsGlobal
- Insiden melibatkan storan, rangkaian atau data kekal.
- Perlu penyahpepijatan lanjutan (cth., isu kernel, pemalam CSI).
- Pasukan anda tiada liputan 24x7 atau SLA mencukupi.
- Punca tidak jelas dan memerlukan analisis pakar.
Senario Penggunaan
Sesuai untuk pasukan yang menyelesaikan isu Kubernetes dan memerlukan aliran kerja yang jelas.
Latar Belakang Masalah
Pelajari cara bertindak balas secara sistematik terhadap insiden kluster Kubernetes—daripada mengesan kegagalan nod hingga memulihkan perkhidmatan dan bila perlu menghantar tiket kepada OpsGlobal.
Langkah Penyelesaian
Sahkan impak dan perubahan terkini, kumpul log, konfigurasi dan metrik, kemudian baiki mengikut risiko.
Contoh Arahan
Gantikan contoh dengan nama sumber sebenar dan simpan kata laluan, token atau kunci dalam pembolehubah persekitaran.
Risiko
Sebelum operasi produksi, semak sandaran, akses, tetingkap perubahan dan pelan rollback.
Pelan Rollback
Simpan konfigurasi dan versi asal; rollback konfigurasi, imej atau perubahan pangkalan data jika metrik tidak normal.
Senarai Serahan
Rekod punca isu, arahan penting, langkah pembaikan, hasil pengesahan dan cadangan susulan.
Perlu bantuan isu teknikal serupa?
Jika pelayan, Kubernetes, Docker, CI/CD, pangkalan data atau pemantauan anda bermasalah, hantar log dan konfigurasi untuk diagnosis jauh.