Tempah Konsultasi Hantar Tiket

Tindak Balas Insiden Kubernetes dan Kebolehpercayaan Kluster: Menangani Tekanan Nod dan Pengusiran Pod

Pelajari cara mendiagnosis dan menyelesaikan insiden tekanan nod yang menyebabkan pengusiran pod dalam kluster Kubernetes, dengan arahan praktikal dan strategi pengembalian.

Tindak Balas Insiden Kubernetes dan Kebolehpercayaan Kluster: Menangani Tekanan Nod dan Pengusiran Pod
Kubernetes 6min 4 paparan 2026-06-15
KubernetesTindak Balas InsidenTekanan NodPengusiran PodSRE

Senario

Sebuah nod dalam kluster Kubernetes mengalami kekurangan ruang cakera atau tekanan memori, mencetuskan mekanisme pengusiran kubelet. Pod yang sedang berjalan ditamatkan secara paksa dan dijadualkan semula.

Gejala

  • Status pod menunjukkan Evicted atau Failed
  • kubectl describe node menunjukkan keadaan DiskPressure atau MemoryPressure sebagai True
  • Pada nod, df -h menunjukkan penggunaan cakera > 85% atau free -m menunjukkan memori sangat rendah
  • Penggera pemantauan kluster (contohnya Prometheus + Alertmanager) mencetuskan NodeDiskPressure atau NodeMemoryPressure

Diagnosis

  1. Kenal pasti nod dan pod yang terjejas: bash kubectl get pods --all-namespaces | grep Evicted kubectl describe node <node-name> | grep -A5 Conditions
  2. Log masuk ke nod dan periksa penggunaan sumber: bash ssh <node-ip> df -h free -m docker system df # jika menggunakan Docker journalctl -u kubelet -n 100 --no-pager | grep -i evict
  3. Lihat log pengusiran kubelet: bash journalctl -u kubelet -n 200 --no-pager | grep -E "(eviction|pressure|threshold)"

Kawalan Risiko

  • Usir pod bukan kritikal atau bersihkan log/imej lama untuk membebaskan ruang: bash # Selamat: buang imej Docker yang tidak digunakan lebih 24 jam docker image prune -a --force --filter "until=24h" # Bersihkan log kontena lapuk (berhati-hati jangan padam log aktif) find /var/log/containers -name "*.log" -mtime +7 -delete
  • Tingkatkan sementara sumber nod (contohnya laraskan ambang --eviction-hard, memerlukan restart kubelet, risiko tinggi)
  • Jika nod kritikal, gunakan kubectl cordon dan kubectl drain dengan berhati-hati

Pengembalian

Tindakan pembersihan biasanya tidak boleh diterbalikkan; pengembalian fokus pada pod yang diusir: - Pod yang diusir yang diurus oleh Deployment akan dijadualkan semula secara automatik. Sahkan: bash kubectl rollout status deployment/<name> -n <namespace> - Jika pod tidak dicipta semula, skala atau mulakan semula Deployment secara manual: bash kubectl scale deployment <name> --replicas=3 -n <namespace> kubectl rollout restart deployment <name> -n <namespace> - Untuk mengembalikan perubahan peringkat nod (contohnya konfigurasi kubelet), pulihkan nilai asal dan mulakan semula kubelet.

Pengesahan

  • Keadaan nod kembali kepada False: bash kubectl describe node <node-name> | grep -A5 Conditions | grep -E "(DiskPressure|MemoryPressure)"
  • Semua pod yang dijangka berada dalam status Running: bash kubectl get pods --all-namespaces | grep -v Running | grep -v Completed
  • Penggera pemantauan dilaporkan selesai.

Bila Hantar Tiket OpsGlobal

  • Tekanan nod berulang walaupun pembersihan sementara
  • Berbilang nod mengalami tekanan, menjejaskan ketersediaan kluster
  • Pengoptimuman jangka panjang diperlukan: saiz kluster, dasar pengusiran, atau autoskala
  • Pasukan kekurangan pengalaman operasi Kubernetes yang mendalam; bantuan pakar diperlukan untuk konfigurasi dan postmortem

Semasa menghantar ke OpsGlobal, sertakan output arahan diagnostik, graf trend sumber nod, dan nama pod yang terjejas untuk respons yang lebih pantas.

Senario Penggunaan

Sesuai untuk pasukan yang menyelesaikan isu Kubernetes dan memerlukan aliran kerja yang jelas.

Latar Belakang Masalah

Pelajari cara mendiagnosis dan menyelesaikan insiden tekanan nod yang menyebabkan pengusiran pod dalam kluster Kubernetes, dengan arahan praktikal dan strategi pengembalian.

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.

Tiket Hubungi WhatsApp Konsultasi