本頁面說明 MySQL 執行個體的高可用性 (HA) 舊版設定。
在舊版高可用性設定中,MySQL 適用的 Cloud SQL 執行個體會使用容錯移轉副本,為執行個體新增高可用性。 Cloud de Confiance 控制台不提供這項功能。建議設定不使用容錯移轉副本。相反地,目前的高可用性設定使用 Google 區域性永久磁碟,在區域中的兩個可用區之間同步複製區塊層級的資料。
如要進一步瞭解目前的高可用性設定,請參閱「高可用性設定總覽」。
將執行個體從舊版高可用性架構更新為現行架構
如要將執行個體從舊版高可用性設定更新為目前版本,請按照下列步驟操作:
將執行個體更新為目前的高可用性設定。
- 刪除要更新的 MySQL 執行個體容錯移轉副本。詳情請參閱「停用執行個體的高可用性」。
- 設定主要執行個體,使用目前的高可用性版本。詳情請參閱「設定現有執行個體的高可用性」。
另一個做法是使用資料庫遷移服務,遷移至採用目前高可用性設定的執行個體。
建立唯讀副本執行個體,卸載不想在主要執行個體執行的讀取工作負載。
開始容錯移轉
測試容錯移轉是選用功能,但我們建議您執行這項功能,這樣才能瞭解應用程式在發生容錯移轉時的回應方式。
如要進一步瞭解容錯移轉,請參閱「容錯移轉總覽」。
gcloud
啟動容錯移轉:
gcloud sql instances failover PRIMARY_INSTANCE_NAME
curl
- 說明主要執行個體,以取得
settingsVersion欄位的值。gcloud auth login ACCESS_TOKEN="$(gcloud auth print-access-token)" curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ -X GET \ https://www.googleapis.com/sql/v1beta4/projects/PROJECT-ID/instances/PRIMARY_INSTANCE_NAME
- 啟動容錯移轉:
gcloud auth login ACCESS_TOKEN="$(gcloud auth print-access-token)" curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ --header 'Content-Type: application/json' \ --data '{"failoverContext":{"settingsVersion":"SETTINGS_VERSION"}}' \ -X POST \ https://www.googleapis.com/sql/v1beta4/projects/PROJECT-ID/instances/PRIMARY_INSTANCE_NAME/failover
執行個體會進行容錯移轉,並在幾分鐘內無法提供資料。
舊版設定:建立複製延遲快訊
容錯移轉作業所需的時間,取決於容錯移轉啟動時的複製延遲時間。您可以在Cloud de Confiance 控制台中使用 Cloud Monitoring,在複製延遲時間超過門檻時發出快訊。
如要進一步瞭解複製延遲,請在 MySQL 說明文件的「SHOW SLAVE STATUS Syntax」頁面中搜尋「seconds_behind_master」。
如要進一步瞭解 Cloud Monitoring,請參閱 Cloud Monitoring 說明文件。
舊版設定:為特定容錯移轉副本設定警告
- 在 Cloud de Confiance 控制台的導覽面板中,依序選取「Monitoring」(監控) 和「Alerting」(警告)。
- 按一下「Create Alerting Policy」(建立警告政策)。
- 輸入快訊的描述性名稱。
- 選取 [Metric Threshold] (指標門檻),接著點選 [Next] (下一步) 以開啟「Target」(目標) 分頁。
- 在「Resource Type」(資源類型) 中,選取 [Cloud SQL]。
- 在「套用至」部分選取「單一」,然後選取容錯移轉副本。
- 點選 [Next] (下一步) 以開啟「Configuration」(設定) 分頁。
輸入下列值:
欄位 值 If Metric 落後主要執行個體的秒數 Condition 超過 Thresholds 120 (或任何適用於您環境的值) For 3 分鐘 選取「通知」方法,然後按一下「儲存條件」。
舊版設定:為一組容錯移轉副本設定警告
如果您打算在同一專案中建立多個容錯移轉副本,為整個群組設定警告,可能會比為每個容錯移轉副本分別設定警告更為容易。如要建立監控群組,請在容錯移轉副本名稱後方加上字尾,例如「-failover」。請勿將這個後置字串用於任何其他類型的 Cloud SQL 執行個體。
建立容錯移轉副本群組:
-
前往 Cloud de Confiance 控制台的「Monitoring」頁面。
- 在上方選單列中,依序選取「群組」>「建立...」。
- 輸入群組的描述性名稱。
- 讓「Name」(名稱) 和「Contains」(包含) 維持在已選取狀態,然後輸入名稱子字串。
- 按一下「儲存群組」。畫面上會開啟新群組的摘要頁面。
- 確認想要的執行個體在該群組中。
為容錯移轉副本群組建立警告:
- 在 Cloud de Confiance 控制台的導覽面板中,依序選取「Monitoring」(監控) 和「Alerting」(警告)。
- 按一下「Create Alerting Policy」(建立警告政策)。
- 輸入群組快訊的描述性名稱。
- 選取 [Metric Threshold] (指標門檻),接著點選 [Next] (下一步) 以開啟「Target」(目標) 分頁。
- 在「Resource Type」(資源類型) 中,選取 [Cloud SQL]。
- 在「Applies To」(套用目標) 中,選取 [Group] (群組),然後選取您的容錯移轉群組。
- 讓 [Any Member Violates] (任何成員違反) 維持在已選取狀態,並按一下 [Next] (下一步) 以開啟「Configuration」(設定) 分頁。
輸入下列值:
欄位 值 If Metric 落後主要執行個體的秒數 Condition 超過 Thresholds 120 (或任何適用於您環境的值) For 3 分鐘 選取您想要的「Notification」(通知) 方法,然後按一下 [Save Condition] (儲存條件)。
舊版設定:停用執行個體的高可用性
您必須刪除容錯移轉副本執行個體,才能從主要執行個體中移除高可用性。
執行這項程序前,請確認主要執行個體目前沒有任何執行中的作業。
停用高可用性的方式如下:
控制台
-
前往 Cloud de Confiance 控制台的「Cloud SQL Instances」(Cloud SQL 執行個體) 頁面。
- 選取與您要停用高可用性之執行個體相關聯的容錯移轉執行個體。
- 在「執行個體詳細資料」頁面,點選「刪除」。
- 在「Delete Replica」(刪除備用資源) 視窗中,重新輸入容錯移轉執行個體的名稱。
- 按一下「Delete」(刪除)。原始執行個體的設定會變更為可用區。
gcloud
如需參考資訊,請參閱gcloud sql instances delete。
gcloud sql instances delete FAILOVER_REPLICA_NAME
curl
下列要求使用instances:delete 方法刪除執行個體。
gcloud auth login ACCESS_TOKEN="$(gcloud auth print-access-token)" curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ --header 'Content-Type: application/json'\ -X DELETE\ https://www.googleapis.com/sql/v1beta4/projects/PROJECT-ID/instances/INSTANCE_NAME
後續步驟
- 進一步瞭解高可用性設定的運作方式。
- 重新啟動執行個體,測試應用程式如何回應連線中斷。
- 進一步瞭解如何管理資料庫連線。
- 進一步瞭解 Cloud Monitoring
- 為您的執行個體建立唯讀備用資源。