高可用性舊版設定

本頁說明 MySQL 執行個體的高可用性 (HA) 舊版設定。

在舊版高可用性設定中,MySQL 適用的 Cloud SQL 執行個體會使用容錯移轉備用資源,為執行個體新增高可用性。這項功能不適用於 Google Cloud 控制台。建議設定不會使用容錯移轉副本。目前的 HA 設定採用 Google 區域永久磁碟,可在區域內的兩個可用區之間,以區塊層級同步複製資料。

如要進一步瞭解目前的高可用性設定,請參閱高可用性設定總覽

將執行個體從舊版高可用性更新為目前版本

如要將執行個體從舊版更新為目前的高可用性設定,請按照下列步驟操作:

  1. 將執行個體更新為目前的高可用性設定。

    1. 刪除要更新的 MySQL 執行個體的容錯移轉備用資源。 詳情請參閱「在執行個體上停用高可用性」。
    2. 將主要執行個體設為使用目前版本的高可用性。 詳情請參閱「設定現有執行個體的高可用性」。

    您也可以使用資料庫移轉服務遷移至使用目前高可用性設定的執行個體

  2. 建立唯讀備用資源執行個體,卸載不想在主要執行個體上執行的任何讀取工作負載。

開始容錯移轉

測試容錯移轉是選用功能,但我們建議您執行這項功能,這樣才能瞭解應用程式在發生容錯移轉時的回應方式。

如要進一步瞭解容錯移轉,請參閱容錯移轉總覽

gcloud

啟動容錯移轉:

gcloud sql instances failover PRIMARY_INSTANCE_NAME

curl

  1. 描述主要執行個體,以取得 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
  2. 啟動容錯移轉:
    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

執行個體開始容錯移轉,會有幾分鐘的時間無法提供資料。

舊版設定:建立複製延遲的快訊

容錯移轉作業所需的時間,取決於啟動容錯移轉時的複寫延遲量。您可以在Google Cloud 控制台使用 Cloud Monitoring,在複寫延遲時間超過門檻時收到快訊。

如要進一步瞭解複製延遲,請在 MySQL 說明文件的「SHOW SLAVE STATUS 語法」頁面中搜尋「seconds_behind_master」。

如要進一步瞭解 Cloud Monitoring,請參閱 Cloud Monitoring 說明文件

舊版設定:設定特定容錯移轉備用資源的快訊

  1. 在 Google Cloud 控制台的導覽面板中,依序選取「Monitoring」和「Alerting」
  2. 按一下 [Create Alerting Policy] (建立快訊政策)
  3. 輸入快訊的描述性名稱。
  4. 選取 [Metric Threshold] (指標門檻),接著點選 [Next] (下一步) 以開啟「Target」(目標) 分頁。
  5. 在「Resource Type」(資源類型) 中,選取 [Cloud SQL]
  6. 在「Applies To」(套用目標) 中,選取 [Single] (單一),接著選取容錯移轉備用資源。
  7. 點選 [Next] (下一步) 以開啟「Configuration」(設定) 分頁。
  8. 輸入下列值:

    欄位
    If Metric 落後主要執行個體的秒數
    Condition 超過
    Thresholds 120 (或任何適用於您環境的值)
    For 3 分鐘

  9. 選取「Notification」(通知) 方法,然後按一下「Save Condition」(儲存條件)

舊版設定:為一組容錯移轉備用資源設定快訊

如果您打算在同一個專案中建立多個容錯移轉副本,建議為整個群組設定快訊,而不是個別為每個容錯移轉副本設定。如要建立監控群組,請為容錯移轉副本的名稱加上後置字元,例如「-failover」。請勿將這個後置字串用於任何其他類型的 Cloud SQL 執行個體。

建立容錯移轉備用資源群組:

  1. 前往 Google Cloud 控制台的「Monitoring」頁面。

    前往「Monioring」

  2. 在上方選單列中,依序選取「Groups」(群組) >「Create...」(建立...)
  3. 輸入群組的描述性名稱。
  4. 讓「Name」(名稱) 和「Contains」(包含) 維持在已選取狀態,然後輸入名稱子字串。
  5. 按一下「儲存群組」。畫面上會開啟新群組的摘要頁面。
  6. 確認想要的執行個體在該群組中。

建立容錯移轉備用資源群組的快訊:

  1. 在 Google Cloud 控制台的導覽面板中,依序選取「Monitoring」和「Alerting」
  2. 按一下 [Create Alerting Policy] (建立快訊政策)
  3. 輸入群組快訊的描述性名稱。
  4. 選取 [Metric Threshold] (指標門檻),接著點選 [Next] (下一步) 以開啟「Target」(目標) 分頁。
  5. 在「Resource Type」(資源類型) 中,選取 [Cloud SQL]
  6. 在「Applies To」(套用目標) 中,選取 [Group] (群組),然後選取您的容錯移轉群組。
  7. 讓 [Any Member Violates] (任何成員違反) 維持在已選取狀態,並按一下 [Next] (下一步) 以開啟「Configuration」(設定) 分頁。
  8. 輸入下列值:

    欄位
    If Metric 落後主要執行個體的秒數
    Condition 超過
    Thresholds 120 (或任何適用於您環境的值)
    For 3 分鐘

  9. 選取您想要的「Notification」(通知) 方法,然後按一下 [Save Condition] (儲存條件)

舊版設定:停用執行個體的高可用性

您必須刪除容錯移轉備用資源執行個體,才能移除主要執行個體的高可用性。

執行這項程序之前,請先確定主要執行個體上沒有任何執行中的作業。

停用高可用性的方式如下:

控制台

  1. 前往 Google Cloud 控制台的「Cloud SQL Instances」頁面。

    前往 Cloud SQL 執行個體

  2. 選取與您要停用高可用性之執行個體相關聯的容錯移轉執行個體。
  3. 在「Instance details」(執行個體詳細資料) 頁面中,按一下「Delete」(刪除)
  4. 在「Delete Replica」(刪除備用資源) 視窗中,重新輸入容錯移轉執行個體的名稱。
  5. 按一下「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

後續步驟