Tempah Konsultasi Hantar Tiket

Melaksanakan Pengawal CI/CD untuk Kejuruteraan Pelepasan Selamat

Ketahui cara menguatkuasakan pintu kualiti, ujian automatik, dan prosedur gulung balik untuk mengelakkan penggunaan yang rosak dari sampai ke pengeluaran.

Melaksanakan Pengawal CI/CD untuk Kejuruteraan Pelepasan Selamat
CI/CD 6min 54 paparan 2026-07-01
KubernetesSRE

Senario Pasukan anda menggunakan GitLab CI/CD untuk digunakan ke Kubernetes. Suatu hari, seorang pembangun menggabungkan tampung yang memperkenalkan pepijat kritikal. Saluran paip lulus semua ujian (kerana ia sudah lapuk), mencetuskan penggunaan ke pengeluaran, pepijat menyebabkan kegagalan berselang, dan pasukan SRE anda dikejutkan pada jam 3 pagi.

Gejala Aplikasi sedang berjalan tetapi mengembalikan ralat 500 untuk titik akhir tertentu. Log penggunaan menunjukkan kejayaan, tetapi pemantauan menunjukkan peningkatan kadar ralat. Penggunaan selesai tanpa campur tangan manual—tiada pemeriksaan keselamatan antara pentas dan pengeluaran.

Diagnosis Saluran paip CI/CD kekurangan pengawal: tiada ujian integrasi automatik yang meniru kebergantungan pengeluaran, tiada pengimbasan keselamatan, tiada langkah kelulusan sebelum pengeluaran. Promosi artifak adalah automatik dari mana-mana cawangan. Tiada analisis canary atau gulung balik automatik.

Arahan Untuk membetulkannya, laksanakan saluran paip dengan pintu kualiti: 1. Tambah peringkat .gitlab-ci.yml untuk linting, ujian unit, ujian integrasi (npm run test, jest --coverage). 2. Tambah peringkat pengimbasan keselamatan (contohnya trivy image analyze myimage:tag). 3. Perkenalkan kelulusan manual untuk penggunaan pengeluaran: gunakan when: manual dalam pekerjaan pengeluaran dan memerlukan kelulusan daripada jurutera utama. 4. Dayakan penggunaan canary: gunakan kepada 10% pod dahulu, jalankan ujian asap, kemudian naik taraf. 5. Gunakan promosi artifak: bina sekali, naik taraf merentas persekitaran dengan akuan ditandatangani.

Contoh arahan:

# Bina dan tag
docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA

# Gunakan canary
kubectl set image deployment/app app=$CI_REGISTRY_IMAGE:$CI_COMMIT_SHA --record
kubectl rollout pause deployment/app

# Jalankan ujian asap
# Selepas ujian lulus, sambung semula penggunaan
kubectl rollout resume deployment/app

Kawalan Risiko - Gunakan bendera ciri dimatikan secara lalai. - Laksanakan tetingkap beku penggunaan pada waktu kritikal. - Gunakan kelulusan permintaan penggabungan GitLab dan kejayaan saluran paip sebagai prasyarat. - Simpan rahsia dalam peti besi dan suntik pada masa jalan, bukan dalam pembolehubah CI.

Gulung Balik - Gulung balik automatik jika kadar ralat melebihi ambang: kubectl rollout undo deployment/app. - Gunakan gulung balik automatik GitLab dengan memeriksa kesihatan penggunaan melalui pekerjaan selepas penggunaan.

Pengesahan - Sahkan bahawa gulung balik kembali ke versi stabil sebelumnya. - Periksa log aplikasi dan metrik. - Jalankan ujian sintetik terhadap aplikasi.

Bila untuk Hantar Tiket OpsGlobal - Jika pasukan anda memerlukan bantuan untuk mereka bentuk saluran paip CI/CD yang berdaya tahan dengan pengawal yang sesuai. - Jika insiden berlaku walaupun terdapat pengawal sedia ada dan anda memerlukan analisis punca akar. - Jika anda memerlukan bantuan dengan strategi gulung balik Kubernetes atau penggunaan canary.

Senario Penggunaan

Sesuai untuk pasukan yang menyelesaikan isu CI/CD dan memerlukan aliran kerja yang jelas.

Latar Belakang Masalah

Ketahui cara menguatkuasakan pintu kualiti, ujian automatik, dan prosedur gulung balik untuk mengelakkan penggunaan yang rosak dari sampai ke pengeluaran.

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