Google Cloud 在空白欄位當機。三小時。
一個帶有幾個空白欄位的策略行觸發了空指標,Google Cloud 立即在所有區域當機 — 然後 Cloudflare 也隨之故障。
一個帶有幾個空白欄位的策略行觸發了空指標,Google Cloud 立即在所有區域當機 — 然後 Cloudflare 也隨之故障。2025 年 6 月 12 日,世界標準時間 17:49:Service Control,一個批准所有 Google Cloud API 請求的二進位檔案,讀取了一個帶有「非預期空白欄位」的配額策略變更,觸發了兩週前發布但沒有空值檢查和功能旗標的程式碼路徑,並在所有區域進入崩潰循環 — 該行已在幾秒鐘內全球複製。外部 API 在三個小時內返回 503;us-central1 花費 2 小時 40 分鐘,因為重新啟動的任務以沒有隨機退避的方式衝擊相同的 Spanner 表格。在 Google 停機三分鐘後,Cloudflare 的 Workers KV — 其真相來源位於「第三方雲端供應商」 — 丟失了 90% 的請求,Access、WARP、Workers AI、Pages、Stream 和 Turnstile 也隨之故障 2 小時 28 分鐘。Google 的狀態頁面延遲一小時發布其首次更新,因為它運行在 Google Cloud 上。
本影片涵蓋的內容
- 空白欄位,空指標,所有區域
- 時間軸:5 月 29 日 → 17:45 → 崩潰循環 → 紅色按鈕 → 17:52 Cloudflare
- us-central1:羊群效應
- 機制:請求路徑中的檢查,全球複製,單一供應商
- git blame — 分裂
翻譯的文字記錄
從英文原文旁白翻譯。可用的音頻和字幕由 YouTube 控制。
空白欄位,空指標,所有區域
0:00 一個帶有空白欄位的策略行觸發了空指標,Google Cloud 在 所有區域立即當機 — Cloudflare 也隨之故障, 然後稱 Google 為「第三方供應商」。 2025 年 6 月 12 日,世界標準時間 17:49。 Google 的報告:Service Control,批准每個 API 請求的二進位檔案, 進入了三個小時的崩潰循環。 Cloudflare 的,在同一個晚上:Workers KV,百分之九十失敗, 兩小時二十八分鐘。
0:23 它是如何發生的,為什麼一個空白欄位在幾秒鐘內全球傳播, 以及誰該受責備。 這是 The Daily Diff,事後分析。 5 月 29 日。Service Control 獲得了一個新的配額檢查,帶有
時間軸:5 月 29 日 → 17:45 → 崩潰循環 → 紅色按鈕 → 17:52 Cloudflare
0:35 紅色按鈕的區域發布 — 但新的程式碼路徑在發布期間從未運行;沒有任何東西觸發 它。沒有空值檢查。 沒有功能旗標。 17:45。一個帶有空白欄位的策略變更落入 Spanner 表格。 配額是全球性的,所以該行在幾秒鐘內複製到所有地方。 每個 Service Control 二進位檔案讀取它,觸發空指標, 崩潰,重新啟動,再次讀取它。 每個 API 呼叫:503。
0:55 Google 很快:兩分鐘內分類,十分鐘內找出根本原因。 紅色按鈕在四十分鐘內啟動,小型區域首先恢復。 狀態頁面在一小時後發布其首次更新, 因為它運行在 Google Cloud 上。 17:52。Cloudflare 的 WARP 團隊發現新設備無法註冊。 Workers KV,Cloudflare 用於配置和身份驗證的儲存庫的一半, 位於第三方雲端上。 Access 每次登錄都失敗 — 根據設計,它以關閉狀態失敗。
1:20 Workers AI 每次推斷都失敗。 19:11,Gergely Orosz:兩個獨立的雲端同時故障, 前所未見。 19:32,Google 支援告知用戶沒有已知的服務中斷 — 嘗試清除 你的 Cookie。其他地方在 19:48 前恢復。
us-central1:羊群效應
1:34 us-central1 沒有恢復:重新啟動的任務衝擊相同的 Spanner 表格, 沒有隨機退避,所以 Google 手動節流它們。 兩小時四十分鐘。 一:策略檢查位於請求路徑內;當檢查失效時,
機制:請求路徑中的檢查,全球複製,單一供應商
1:46 API 也失效。 二:配額數據在沒有分段的情況下全球傳播;一個壞行就是一個全球行。 三:Cloudflare 知道。 Workers KV 正在遷移到自己的 R2,縮減到一個供應商 — 事後分析 稱其為覆蓋範圍的空白。
git blame — 分裂
2:00 git blame。Google,百分之五十五:沒有空值檢查,沒有功能旗標, 沒有退避 — 他們的報告說旗標會在分段中捕捉到它。 全球複製,百分之二十:一行,所有區域, 幾秒鐘。Cloudflare,百分之二十:一半產品線依賴一個供應商的儲存庫, 以及一個從未提及 Google 的事後分析。 狀態頁面,百分之五,因為它運行在它所報告的服務上。 影響範圍:七十個 Google Cloud 產品,十個 Workspace 應用程式,
影響範圍
2:23 所有區域。三個小時。 在 Cloudflare:Access、WARP、Workers AI、Pages、Stream — 兩個半小時。 Hacker News,一千四百點;熱門評論:狀態頁面是綠色的。
裁決 + 星期一線
2:33 裁決,事後分析:SHIP IT。 兩份事後分析在三十小時內發布,都歸咎於自己, Google 的修復措施具體:開路失敗,旗標預設關閉, 指數退避。星期一線:新程式碼放在預設關閉的旗標後面, 以及數據輸入時的空值檢查。 將你仍然不被允許談論的事件寄給我, 在評論中,或發送到 the daily diff dot dev。 這就是今天的 The Daily Diff。
2:53 我是來自 Axrisi 的 Niko。 負責任地合併。
來源
- Google Cloud Service Health, Incident Report (Jun 13, 2025) + Mini Incident Report (Jun 12)status.cloud.google.com
- Cloudflare, "Cloudflare service outage June 12, 2025" (Jun 12, 2025, 22:00 UTC)blog.cloudflare.com
- Cloudflare Status, "Broad Cloudflare service outages" (18:19–21:31 UTC)www.cloudflarestatus.com
- Gergely Orosz, 19:11 UTC, "Their infra is fully independent AFAIK"x.com
- @Google support, 19:32 UTC, "there aren't any known service disruptions"x.com
- Thomas Kurian (Google Cloud CEO), Jun 13 01:35 UTCx.com
- Hacker News, "GCP Outage" (1,468 points)news.ycombinator.com
- Hacker News, "Cloudflare was down" (341 points)news.ycombinator.com
- Hacker News, "Google Cloud Incident Report – 2025-06-13" (209 points)news.ycombinator.com



