Coinbase 於 7 月 21 日發布了一份事故後續檢討報告,指出在 7 月 14 日發生的一次持續 50 分鐘的中斷背後,是一個軟體錯誤。該錯誤使客戶無法完成轉帳、使用 Coinbase Card 進行消費,以及存取鏈上服務。此次中斷是由於在例行的基礎設施更新期間,未被偵測到的 Kubernetes 資源名稱碰撞,導致更新修改了錯誤的網路元件。事故影響了零售、機構與開發者平台,時間約為美東時間 12:37 p.m. 至 1:25 p.m.,不過客戶資金並未受到風險威脅。此次停機發生之際,Coinbase 正在擴展其業務,從現貨加密貨幣交易延伸到代幣化股票、永續合約以及更廣泛的金融服務;當共用基礎設施失效時,風險也會隨之提高。
Kubernetes 資源名稱碰撞引發閘道失靈
根據 7 月 21 日發布的事故後續檢討報告,工程師當時正在部署一項看起來是例行、風險較低的更新;但未被偵測到的 Kubernetes 資源名稱碰撞導致該更新修改了錯誤的網路元件。Kubernetes 是 Coinbase 用來在其雲端基礎設施上組織並運行應用程式的軟體。資源名稱碰撞使更新改動了公司 Istio 入口閘道(ingress gateway)的一部分,而非僅修改原本預期的元件。閘道的角色類似交通控制器,負責在 Coinbase 的內部服務之間導引請求。當閘道離線後,負責處理交易、轉帳、結算與付款授權的系統便無法再彼此通訊。Coinbase 表示,該事件「是因為在例行的設定更新之後,對一個重要網路元件發生了非預期的錯誤設定」,並且「在任何時間點,客戶資金都未處於風險之中」。
中斷影響轉帳、Card 消費與機構結算
此次中斷影響了 Coinbase 的零售、機構與開發者平台,時間約為美東時間 12:37 p.m. 至 1:25 p.m.。部分零售客戶無法完成入金、出金或非平台上的交易。已在進行中的轉帳看似卡住,但在服務恢復後仍被處理。Coinbase Card 的 debit 購買被拒絕,而信用卡消費仍可繼續進行。此次中斷也干擾了透過 Base 與 Solana 上的 Coinbase DEX 進行的鏈上交換(swaps)。Coinbase Exchange 與 Prime 客戶遇到轉帳與結算延遲或失敗,而開發者平台客戶則無法新增用戶、移動資金。這一影響凸顯出,隨著 Coinbase 的業務從現貨加密貨幣交易擴展到更廣的範圍,可靠性的重要性也日益提高。其原先規劃的「一站式交易所(everything exchange)」產品(包含代幣化股票與永續合約)正在擴大對公司基礎設施依賴的金融活動範圍。Coinbase 亦曾另行描述,計畫將平台打造為更廣泛的金融樞紐,提供涵蓋股票、衍生品、穩定幣付款與開發者工具在內的新交易、支付與資金管理服務。
Coinbase 在手動復原後實施新防護措施
閘道在美東時間 1:20 p.m. 被恢復,而 Coinbase 於三分鐘後宣布該事件已獲得緩解。剩餘的交易延遲佇列在接下來數小時內逐步清空。復原花費較久的原因是,Coinbase 的部署工具依賴於失效的閘道。工程師無法使用標準的回滾流程,而是透過公司的雲端提供商,使用臨時的高權限存取權,手動啟動緊急部署。Coinbase 現在正在增加檢查以阻止命名衝突,並將復原工具與其管理的基礎設施隔離,且會更定期地測試緊急存取程序。Coinbase 強調「我們的目標永遠是零停機時間」,並表示:「我們正在積極重新設計基礎設施,以確保在極不可能再次發生類似這次的故障時,我們能迅速回滾並復原。」
常見問題
7 月 14 日 Coinbase 中斷的原因是什麼?
此次中斷是由於在例行的基礎設施更新過程中,未被偵測到的 Kubernetes 資源名稱碰撞導致修改了錯誤的網路元件;具體而言,是更改了 Coinbase 的 Istio 入口閘道的一部分,而非原本預期要更動的元件。
Coinbase 的中斷持續多久、哪些服務受到影響?
此次中斷持續約 50 分鐘,發生於 7 月 14 日美東時間 12:37 p.m. 至 1:25 p.m.。影響了零售客戶的轉帳以及 Coinbase Card 的 debit 購買、Coinbase Exchange 與 Prime 的機構結算、透過 Base 與 Solana 上的 Coinbase DEX 進行的鏈上交換,以及開發者平台服務(包含用戶入駐與資金移動)。
Coinbase 在中斷後正在實施哪些防護措施?
Coinbase 現在正在增加檢查以阻止命名衝突,並將復原工具與其管理的基礎設施隔離,同時更定期地測試緊急存取程序,以確保在未來發生類似事件時能迅速回滾並復原。