Senario
Pasukan anda mengautomasikan penggunaan perkhidmatan mikro kritikal ke kluster Kubernetes. Saluran paip CI/CD lulus semua ujian, tetapi selepas penggunaan, perkhidmatan tidak responsif. Anda mengesyaki had sumber atau konfigurasi probe bermasalah.
Gejala
- Pod menunjukkan CrashLoopBackOff atau Running tetapi gagal probe kesediaan.
- Log menunjukkan OOMKilled atau sumber tidak mencukupi.
- Versi baru tidak menerima trafik; versi lama masih berkhidmat.
Diagnosis
Periksa dengan arahan ini:
# Periksa status pod dan peristiwa
kubectl describe pod <nama-pod> -n <ruang-nama>
# Lihat log kontena
kubectl logs <nama-pod> -n <ruang-nama> --previous
# Semak penggunaan sumber
kubectl top pod <nama-pod> -n <ruang-nama>
# Sahkan konfigurasi probe kesediaan
kubectl get pod <nama-pod> -n <ruang-nama> -o yaml | grep -A10 readinessProbe
Contoh Arahan
# Andaikan pod dimulakan semula akibat OOMKilled
kubectl get events --field-selector involvedObject.name=<nama-pod> -n <ruang-nama>
# Output menunjukkan: OOMKilled
# Laraskan had sumber Deployment
kubectl set resources deployment/<nama-deployment> -n <ruang-nama> --limits=cpu=500m,memory=512Mi --requests=cpu=250m,memory=256Mi
Kawalan Risiko
- Tambah pemeriksaan had sumber dalam saluran paip CI: gunakan
kubectl dry-rundan pengesahan tersuai. - Wajibkan probe kesediaan dan liveness.
- Laksanakan penghantaran progresif (contohnya, kemas kini bergulir, canary).
- Gunakan Polisi Keselamatan Pod atau OPA Gatekeeper.
Gulung Balik
Jika penggunaan gagal, gulung balik segera:
kubectl rollout undo deployment/<nama-deployment> -n <ruang-nama>
# Atau ke versi tertentu
kubectl rollout undo deployment/<nama-deployment> -n <ruang-nama> --to-revision=2
Pengesahan
Selepas gulung balik, sahkan:
kubectl rollout status deployment/<nama-deployment> -n <ruang-nama>
kubectl get pods -n <ruang-nama> | grep <nama-deployment>
# Pastikan semua pod sihat
Bila Hantar Tiket OpsGlobal
- Apabila anda memerlukan reka bentuk pakar untuk strategi pengawal CI/CD yang lengkap.
- Apabila kegagalan melibatkan isu peringkat platform (Ingress, sijil, kehabisan kluster).
- Apabila anda memerlukan sokongan pemantauan dan penggera 24/7.
Senario Penggunaan
Sesuai untuk pasukan yang menyelesaikan isu CI/CD dan memerlukan aliran kerja yang jelas.
Latar Belakang Masalah
Pelajari cara melaksanakan pengawal CI/CD untuk mengelakkan kegagalan penggunaan Kubernetes biasa, termasuk had sumber, probe kesediaan, dan strategi gulung balik.
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.