Laporan Insiden Google Cloud – 2025-06-13
(status.cloud.google.com)- Pada 12 Juni 2025, peningkatan error 503 pada permintaan API eksternal di Google Cloud, Google Workspace, dan Google Security Operations berdampak pada pelanggan di seluruh dunia
- Pemeriksaan kebijakan kuota baru di Service Control bertemu dengan data kebijakan yang berisi field kosong dan memicu crash loop null pointer, dan jalur ini tidak dieksekusi selama rollout
- Saat perubahan kebijakan direplikasi dari tabel Spanner regional ke seluruh dunia dalam hitungan detik, deployment Service Control di tiap region mengikuti jalur kegagalan yang sama dan meluas menjadi insiden global
- Tim SRE merespons dalam 2 menit, mengidentifikasi penyebab dalam 10 menit, dan menyelesaikan rollout red-button dalam sekitar 40 menit, tetapi pemulihan di us-central1 memerlukan waktu hingga sekitar 2 jam 40 menit
- Langkah pencegahan berulang difokuskan pada pembekuan perubahan Service Control, penonaktifan default feature flag, propagasi bertahap untuk data replikasi global, serta perbaikan penanganan error dan randomized exponential backoff
Cakupan insiden dan linimasa
- Peningkatan error 503 pada permintaan API eksternal di produk Google Cloud, Google Workspace, dan Google Security Operations berdampak pada pelanggan
- Semua waktu utama menggunakan zona US/Pacific
- Insiden dimulai: 12 Juni 2025 10:49
- Mitigasi di semua region kecuali us-central1: 12:48
- Insiden berakhir: 13:49
- Total durasi: 3 jam
- Cakupan dampak: Global
- Pelanggan mengalami masalah akses API dan antarmuka pengguna yang bersifat intermiten pada layanan yang terdampak
- Resource streaming yang sudah ada dan resource IaaS tidak terdampak
Jalur pemeriksaan yang ditangani Service Control
- API Google dan Google Cloud disediakan melalui control plane manajemen dan kontrol API Google
- Control plane manajemen dan kontrol ini memeriksa hal berikut untuk setiap permintaan API
- apakah permintaan telah diotorisasi
- apakah permintaan lolos pemeriksaan seperti kebijakan dan kuota sehingga dapat diteruskan ke endpoint
- Biner inti dari sistem pemeriksaan kebijakan adalah Service Control
- Service Control adalah layanan per region dan menggunakan datastore regional yang membaca informasi kuota dan kebijakan
- Metadata datastore tersebut direplikasi hampir seketika ke seluruh dunia untuk pengelolaan kebijakan kuota Google Cloud dan pelanggan
Penyebab langsung: field kebijakan kosong dan null pointer
- Pada 29 Mei 2025, fitur baru untuk pemeriksaan kebijakan kuota tambahan ditambahkan ke Service Control
- Perubahan kode dan rilis biner melewati rollout per region, tetapi jalur kode yang gagal memerlukan perubahan kebijakan tertentu agar dieksekusi sehingga tidak tervalidasi selama rollout
- Kode bermasalah memiliki red-button untuk mematikan jalur penyediaan kebijakan tersebut, tetapi tidak memiliki penanganan error yang memadai dan perlindungan feature flag
- Null pointer tidak ditangani dengan benar sehingga menyebabkan biner Service Control crash
- Google menyatakan bahwa jika dilindungi oleh feature flag, masalah ini kemungkinan akan tertangkap di staging saat diaktifkan secara bertahap per region mulai dari project internal
Proses penyebaran global
- Sekitar 10:45 PDT pada 12 Juni 2025, perubahan kebijakan dimasukkan ke tabel Spanner regional yang digunakan Service Control untuk kebijakan
- Data kebijakan ini berisi field kosong yang tidak dimaksudkan
- Karena pengelolaan kuota bekerja secara global, metadata tersebut direplikasi ke seluruh dunia dalam hitungan detik
- Saat Service Control di tiap region melakukan pemeriksaan kuota terhadap kebijakan di datastore regional, sistem membaca field kosong itu dan mengeksekusi jalur kode yang menemui null pointer
- Akibatnya, biner di deployment tiap region masuk ke crash loop
Respons dan keterlambatan pemulihan
- Tim SRE memulai triase dan respons dalam 2 menit sejak insiden dimulai
- Dalam 10 menit, penyebab utama teridentifikasi dan penerapan red-button dimulai
- Persiapan rollout red-button selesai sekitar 25 menit setelah insiden dimulai
- Rollout red-button selesai dalam 40 menit sejak awal insiden, dan sinyal pemulihan mulai terlihat dari region kecil
- Di region besar seperti us-central1, saat job Service Control dimulai ulang, hal ini menciptakan herd effect pada infrastruktur dependensi, khususnya tabel Spanner, dan menyebabkan overload
- Service Control belum mengimplementasikan randomized exponential backoff yang memadai untuk menghindari hal ini
- us-central1 mengurangi beban dengan melakukan throttling pembuatan job dan mengarahkan traffic ke multi-regional database, lalu membutuhkan waktu hingga sekitar 2 jam 40 menit untuk pulih sepenuhnya
- Setelah itu, Service Control dan API serving pulih sepenuhnya di semua region
- Produk Google dan Google Cloud terkait pulih secara bertahap dan pada beberapa kasus memerlukan waktu lebih lama tergantung arsitekturnya
Halaman status dan komunikasi kepada pelanggan
- Laporan insiden pertama di Cloud Service Health dipublikasikan sekitar 1 jam setelah crash dimulai
- Penyebab keterlambatan adalah karena infrastruktur Cloud Service Health sendiri juga turun akibat insiden ini
- Sebagian pelanggan juga gagal memantau karena infrastruktur monitoring yang mereka jalankan di Google Cloud ikut terdampak, sehingga mereka tidak dapat memahami sinyal insiden atau cakupan dampaknya terhadap bisnis dan infrastruktur
- Google menyatakan akan memperbaiki komunikasi eksternal otomatis dan manual agar pelanggan dapat lebih cepat menerima informasi yang diperlukan untuk merespons masalah, mengelola sistem, dan mendukung pelanggan mereka sendiri
- Google juga menyatakan akan memastikan infrastruktur monitoring dan komunikasi tetap melayani pelanggan bahkan saat Google Cloud dan produk monitoring bawaannya mengalami gangguan
Tindakan segera dan rencana pencegahan berulang
- Segera setelah pemulihan, semua perubahan pada stack Service Control dan push kebijakan manual dibekukan
- Google menyatakan akan memprioritaskan dan menyelesaikan langkah-langkah berikut dengan aman
- Memodularisasi arsitektur Service Control untuk mengisolasi fungsi, serta mengubahnya ke struktur fail open agar permintaan API tetap dapat diproses meski pemeriksaan terkait gagal
- Mengaudit semua sistem yang mengonsumsi data hasil replikasi global
- Meskipun ada kebutuhan bisnis yang memerlukan konsistensi hampir seketika secara global, replikasi data akan dipropagasikan secara bertahap agar tersedia cukup waktu untuk validasi dan deteksi masalah
- Semua perubahan biner penting akan dilindungi dengan feature flag dan dinonaktifkan secara default
- Meningkatkan praktik analisis statis dan pengujian agar error ditangani dengan benar dan dapat fail open bila perlu
- Mengaudit dan memastikan bahwa sistem menggunakan randomized exponential backoff
- Meningkatkan komunikasi kepada pelanggan
- Menjaga infrastruktur monitoring dan komunikasi tetap beroperasi bahkan saat Google Cloud dan produk monitoring bawaannya mengalami gangguan
Layanan yang terdampak dan dampak sisa
- Banyak produk Google Cloud terdampak, termasuk Identity and Access Management, Cloud Build, Google Cloud Storage, Cloud Monitoring, Cloud Run, Google BigQuery, Vertex Gemini API, Apigee, Google Cloud Bigtable, Cloud Functions, Cloud Load Balancing, Cloud Firestore, Cloud Logging, Cloud Spanner, Google App Engine, Google Cloud Console, Google Compute Engine, Cloud SQL, Cloud Pub/Sub, Persistent Disk, Google Security Operations, dan lainnya
- Produk Google Workspace yang terdampak meliputi AppSheet, Gmail, Google Calendar, Google Drive, Google Chat, Google Voice, Google Docs, Google Meet, Google Cloud Search, dan Google Tasks
- Pada sebagian produk, dampak sisa masih tersisa setelah mitigasi utama
- Google Cloud Dataflow mengalami backlog yang berangsur terurai, dan keterlambatan tetap ada di us-central1
- Vertex AI Online Prediction terus mengalami error 5xx tinggi pada sebagian model di Model Garden, lalu pulih sepenuhnya pada 18:18 PDT
- Personalized Service Health mengalami keterlambatan pembaruan, dan pelanggan disarankan menggunakan dashboard Cloud Service Health
1 komentar
Ini tautan ke versi artikel yang bukan GN+.