本文為您介紹如何進行PolarDB MySQL版叢集的容災演練。
概述
您可以使用容災演練功能對PolarDB MySQL版叢集進行故障演練。容災演練支援節點維度演練與可用性區域維度演練,節點維度演練僅支援選擇一個節點進行演練。在演練過程中,一旦故障注入,指定節點將變為不可用,PolarDB MySQL版叢集將按照固定策略進行恢複。恢複策略請參見演練恢複階段。
該功能目前處於灰階階段,如需使用,您可以聯絡我們加入白名單,啟用該功能。
前提條件
PolarDB MySQL版叢集需滿足如下條件:
產品版本:企業版。
資料庫引擎:
MySQL 5.6,且核心小版本需為5.6.1.0.42及以上。
MySQL 5.7,且核心小版本需為5.7.1.0.26及以上。
MySQL 8.0.1,且核心小版本需為8.0.1.1.30.2及以上。
MySQL 8.0.2,且核心小版本需為8.0.2.2.19及以上。
注意事項
容災演練過程中存在串連閃斷以及資料丟失等風險。為了不影響您業務的正常運行,建議複製一個新叢集進行演練。同時,可結合智能壓測功能,類比生產負載以配合故障演練。
資料丟棄風險說明:
在進行可用性區域維度容災演練時,RPO<60,存在資料丟失風險。
在進行節點維度容災演練時,若存在唯讀節點(熱備)或唯讀節點,RPO=0,無資料丟失風險。
演練步驟
登入PolarDB控制台。
在左側導覽列單擊叢集列表。
在左上方,選擇叢集所在地區。
找到目的地組群,單擊叢集ID。
在左側功能表列,單擊服務可用性,單擊容災演練頁簽。
在容災演練頁面,您可選擇需要進行演練的可用性區域或節點。選擇後,單擊開始演練。

在故障注入方式彈窗中,選擇節點級故障注入方式。單擊確定。

您可在容災演練頁面下方的演練列表中查看當前演練任務的狀態和各個階段的展示。
節點維度示意圖

可用性區域維度示意圖

演練階段
故障注入
恢複階段
故障恢複階段,詳細恢複過程如下。
節點維度
選擇主節點進行演練,若存在唯讀節點(熱備),則將主節點切換至唯讀節點(熱備)。
選擇主節點進行演練,若不存在唯讀節點(熱備),但存在唯讀節點,則將主節點切換至唯讀節點。
選擇主節點進行演練,若不存在唯讀節點(熱備)和唯讀節點,則為可用性區域維度演練。
選擇唯讀節點進行演練,則啟動一個新的唯讀節點進行切換。
可用性區域維度
選擇可用性區域進行演練,即對該可用性區域下的所有節點進行演練,將主節點及各節點切換至備可用性區域。
演練前的示意圖如下所示。
可用性區域下所有節點進行故障演練,示意圖如下所示。
主節點恢複可用,示意圖如下所示。
根據新主可用性區域(樣本可用性區域2)的資源情況來決定是否進行資源補齊。若允許進行資源補齊,示意圖如下所示。
後處理階段
僅當可用性區域維度演練時才會觸發,此操作的消耗時間長度與資料量和網路時延有關。不影響業務使用。
補齊資源
備庫重建
主節點回切
未補齊資源
備庫重建
主節點回切