Menyiapkan periode pengecualian

Halaman ini menjelaskan periode pengecualian dalam Pengujian Injeksi Kesalahan dan cara menggunakannya untuk melindungi aplikasi dan layanan Anda selama operasi bisnis penting.

Periode pengecualian meningkatkan kontrol Anda atas jadwal pengujian ketahanan. Periode pengecualian adalah jangka waktu yang Anda tentukan, selama eksperimen injeksi kesalahan baru dicegah untuk dimulai. Fitur ini membantu Anda melindungi aplikasi dan layanan selama peristiwa penting, seperti:

  • Jam traffic puncak atau peristiwa penjualan volume tinggi
  • Migrasi atau upgrade sistem utama
  • Periode pemeliharaan penting

Saat periode pengecualian aktif, Pengujian Injeksi Kesalahan akan memblokir upaya untuk memulai eksperimen baru dalam cakupan yang ditentukan. Eksperimen yang sudah berjalan sebelum periode pengecualian menjadi aktif diizinkan untuk dilanjutkan hingga selesai.

Cara kerja periode pengecualian

Cakupan dan penargetan

Saat mengonfigurasi periode pengecualian, Anda memilih Region Cloud tertentu. Setelah diaktifkan, periode pengecualian mencegah eksperimen baru dimulai hanya dalam region yang ditentukan, terlepas dari template eksperimen yang digunakan.

Aktivasi dan durasi

Membuat periode pengecualian akan menentukan parameternya, tetapi tidak langsung mengaktifkannya. Anda harus memulai periode secara eksplisit agar aktif.

Periode pengecualian aktif berhenti memblokir eksperimen dengan salah satu dari dua cara berikut:

  • Masa berlaku otomatis: Setiap periode pengecualian dikonfigurasi dengan durasi. Setelah diaktifkan, periode akan otomatis dinonaktifkan setelah durasi ini berlalu. Sistem menghitung waktu berakhir (waktu mulai + durasi) dan berhenti memblokir eksperimen baru setelah waktu saat ini melewati waktu berakhir ini.
  • Penghentian manual: Anda dapat menghentikan periode pengecualian aktif secara manual sebelum durasi yang dijadwalkan berakhir. Hal ini berguna jika periode penting berakhir lebih awal dari yang diharapkan dan Anda ingin segera melanjutkan pengujian.

Mengelola periode pengecualian di Google Cloud konsol

Sebelum melanjutkan, Anda harus memiliki peran roles/faulttesting.operator.

Membuat dan mengonfigurasi periode pengecualian

  1. Di Google Cloud konsol, buka halaman Periode pengecualian Pengujian Injeksi Kesalahan.
  2. Klik Buat periode pengecualian.
  3. Tentukan Region Cloud, Durasi, dan Deskripsi opsional.
  4. Klik Buat.

Mengontrol periode pengecualian secara manual

Anda dapat memicu tindakan Mulai dan Berhenti secara manual untuk periode pengecualian yang dikonfigurasi langsung dari Google Cloud konsol.

Mengaktifkan periode pengecualian secara otomatis

Misalnya, Anda mungkin ingin menyelaraskan dengan periode pemeliharaan terjadwal atau peristiwa berulang. Untuk mengotomatiskan aktivasi periode pengecualian:

  1. Setelah membuat periode pengecualian, salin URL HTTPS untuk RPC StartExclusionWindow yang ditampilkan di UI.
  2. Gunakan layanan penjadwalan seperti Cloud Scheduler untuk menyiapkan tugas yang mengirimkan permintaan ke URL ini pada waktu yang Anda pilih.

Mengelola periode pengecualian menggunakan Google Cloud CLI

Anda dapat mengelola resource periode pengecualian menggunakan perintah gcloud alpha fault-testing exclusion-windows.

Membuat periode pengecualian

Untuk membuat periode pengecualian, gunakan perintah create. Tentukan ID periode, region target, dan durasi:

gcloud alpha fault-testing exclusion-windows create EXCLUSION_WINDOW_ID \
    --location=REGION \
    --duration=DURATION \
    [--description="DESCRIPTION"]

Ganti kode berikut:

  • EXCLUSION_WINDOW_ID: ID unik untuk periode (misalnya, black-friday-freeze).
  • REGION: Wilayah tempat periode ini berlaku (misalnya, us-central1). Google Cloud
  • DURATION: Durasi aktif, yang ditentukan dalam detik (misalnya, 86400s untuk 24 jam).
  • DESCRIPTION: (Opsional) Deskripsi tujuan periode.

Contoh:

gcloud alpha fault-testing exclusion-windows create black-friday-freeze \
    --location=us-east1 \
    --duration=259200s \
    --description="Exclusion window for Black Friday to Cyber Monday sales period"

Menghapus periode pengecualian

Untuk menghapus definisi periode pengecualian, gunakan perintah delete:

gcloud alpha fault-testing exclusion-windows delete EXCLUSION_WINDOW_ID \
    --location=REGION

Memulai periode pengecualian

Untuk mengaktifkan periode pengecualian yang dikonfigurasi, gunakan perintah start:

gcloud alpha fault-testing exclusion-windows start EXCLUSION_WINDOW_ID \
    --location=REGION

Menghentikan periode pengecualian

Untuk menonaktifkan periode pengecualian aktif secara manual lebih awal, gunakan perintah stop:

gcloud alpha fault-testing exclusion-windows stop EXCLUSION_WINDOW_ID \
    --location=REGION

Praktik terbaik

Saat membuat periode pengecualian, pertimbangkan hal berikut:

  • Rencanakan tumpang-tindih eksperimen. Mulai periode pengecualian Anda sedikit sebelum periode bisnis penting Anda dimulai. Karena eksperimen yang sedang berjalan diizinkan untuk diselesaikan, memulai periode lebih awal akan memastikan semua kesalahan dihapus sebelum periode penting Anda dimulai.
  • Gunakan ID deskriptif. Gunakan ID yang jelas dan bermakna (misalnya, black-friday-freeze atau system-migration-us-east1) untuk mengidentifikasi tujuan dan cakupan periode.
  • Sesuaikan durasi dengan jenis peristiwa. Cocokkan durasi periode dengan perkiraan durasi peristiwa penting. Untuk penjualan liburan besar, sebaiknya gunakan durasi beberapa hari (misalnya, 259200s untuk 3 hari).
  • Manfaatkan otomatisasi. Gunakan Cloud Scheduler untuk mengotomatiskan aktivasi periode pengecualian untuk peristiwa berulang atau pemeliharaan terencana guna mengurangi upaya manual dan risiko kelalaian.
  • Pertahankan fleksibilitas. Ingatlah bahwa Anda dapat menggunakan perintah stop untuk mengakhiri periode lebih awal jika periode penting selesai lebih cepat dari yang diharapkan, sehingga Anda dapat segera melanjutkan pengujian ketahanan.