高可用性舊版設定

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

在舊版 HA 設定中,MySQL 適用的 Cloud SQL 執行個體會使用容錯移轉備用資源,為執行個體提供高可用性。 Google Cloud 控制台不支援這項功能。建議的設定不會使用備援副本。相反地,目前的高可用性設定會使用 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 執行個體」頁面。

    前往 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

後續步驟