關於同步磁碟複製

區域永久磁碟和 Hyperdisk Balanced High Availability 是儲存空間選項,可讓您在 Compute Engine 中實作高可用性 (HA) 服務。 區域性永久磁碟和 Hyperdisk Balanced High Availability 會在同一區域的兩個可用區之間同步複製資料,確保磁碟資料在最多一個可用區故障時仍能維持高可用性。

區域性 Persistent Disk 和 Hyperdisk Balanced High Availability 磁碟區,適用於需要較低復原點目標 (RPO) 和復原時間目標 (RTO) 的工作負載。如要進一步瞭解 RPO 和 RTO,請參閱「災難復原計畫基本概念」。

區域性永久磁碟和 Hyperdisk Balanced High Availability 磁碟區,可與區域性代管執行個體群組搭配使用。

本文概述如何使用區域性永久磁碟和 Hyperdisk Balanced High Availability 磁碟區,建構高可用性服務。

決定使用 區域性永久磁碟或 Hyperdisk Balanced High Availability 時,請務必比較提高服務可用性的不同選項,以及不同服務架構的成本、效能和韌性。

關於磁碟同步複製

區域性永久磁碟或 Hyperdisk Balanced High Availability 磁碟區 (也稱為區域性磁碟或同步複製磁碟) 在其區域內有主要和次要可用區,用於儲存磁碟資料:

  • 主要可用區與您要將磁碟連結至的運算執行個體位於同一可用區。
  • 次要可用區是您在同一區域內選擇的替代可用區。

Compute Engine 會在這兩個可用區中維護磁碟副本。當您將資料寫入磁碟時,Compute Engine 會同步將資料複製到兩個可用區的磁碟副本,確保高可用性。每個可用區副本的資料會分散在可用區內的多部實體機器,確保耐用性。可用區副本可確保磁碟資料持續可用,並在其中一個磁碟可用區暫時中斷服務時提供保護。

可用區副本的副本狀態

區域永久磁碟或 Hyperdisk Balanced High Availability 的磁碟副本狀態,會顯示可用區副本與磁碟內容的比較狀態。磁碟的可用區副本一律處於下列其中一種磁碟副本狀態:

  • 已同步:副本可用,會同步接收對磁碟執行的所有寫入作業,且磁碟上的所有資料都處於最新狀態。
  • Catching up:副本可用,但仍在追趕其他副本磁碟上的資料。
  • 不同步:副本暫時無法使用,且與磁碟上的資料不同步。

如要瞭解如何檢查及追蹤區域副本的副本狀態,請參閱「監控磁碟副本狀態」。

區域性磁碟的複製狀態

視個別可用區副本的狀態而定,區域性 Persistent Disk 或 Hyperdisk Balanced High Availability 磁碟區可能處於下列其中一種複製狀態:

  • 完全複製:兩個可用區中的副本都可用,且已與最新的磁碟資料同步。
  • Catching up:可用區副本可供使用,但其中一個可用區副本正在趕上最新的磁碟資料。
  • 降級:其中一個可用區副本因故障或中斷而處於 out of sync 狀態。

如果磁碟複製狀態為「catching up」或「degraded」,表示其中一個可用區備用資源未更新所有資料。如果健康副本所在的可用區在這段時間內發生服務中斷,磁碟將無法使用,直到健康副本所在的可用區恢復運作為止。

當 區域永久磁碟或 Hyperdisk Balanced High Availability 磁碟區正在追趕進度時,Google Cloud 會開始修復正在追趕進度的可用區副本。Google 建議您等待受影響的可用區副本趕上磁碟上的資料,此時其狀態會變更為 Synced。可用區副本進入同步狀態後,區域磁碟狀態會變回 Fully replicated 狀態。

如果區域磁碟長時間處於 catching up 或 degraded 狀態,且不符合貴組織的 RPO 規定,建議您透過下列任一方式建立主要副本的快照:

  • 啟用排定的快照。
  • 手動建立區域性永久磁碟或 Hyperdisk Balanced High Availability 磁碟的快照。

建立快照後,您可以使用該快照做為來源,建立新的區域永久磁碟或 Hyperdisk Balanced High Availability 磁碟。這項操作會將快照還原至新磁碟。新磁碟也會以完全複製的狀態啟動,並順利複製資料。

如要瞭解如何檢查 區域性永久磁碟或 Hyperdisk Balanced High Availability 磁碟的複寫狀態,請參閱「 判斷磁碟的複寫狀態」。

副本復原檢查點

「副本復原檢查點」是磁碟屬性,代表完整複製磁碟的最新當機一致時間點。Compute Engine 會自動為每個區域磁碟建立及維護單一副本復原檢查點。磁碟完全複製後,Compute Engine 會大約每 15 分鐘重新整理檢查點,確保檢查點保持最新狀態。當磁碟複製狀態為 degraded 時,Compute Engine 可讓您從該磁碟的副本復原檢查點建立標準快照。產生的標準快照會擷取完全複製磁碟中,最新當機一致版本的資料。

在極少數情況下,如果磁碟效能降低,與最新磁碟資料同步的區域副本也可能在不同步的副本趕上進度前發生故障。您無法強制將磁碟附加至任一區域的運算執行個體。複製的磁碟會無法使用,您必須將資料遷移至新磁碟。在這種情況下,如果磁碟沒有可用的標準快照,您或許仍可使用從副本復原檢查點建立的標準快照,從不完整的副本復原磁碟資料。

Compute Engine 會自動為每個掛接的 區域永久磁碟或 Hyperdisk Balanced High Availability 磁碟建立副本復原檢查點。建立這些檢查點不會產生任何額外費用。不過,當您使用這些檢查點將區域磁碟遷移至正常運作的可用區時,仍須支付建立快照和運算執行個體的所有適用儲存空間費用。

進一步瞭解如何使用副本復原檢查點復原區域磁碟資料。

區域磁碟容錯移轉

如果可用區發生服務中斷情形,您將無法存取該可用區,且該可用區中的運算執行個體無法對磁碟執行讀取或寫入作業。為允許執行個體繼續對區域磁碟執行讀取和寫入作業,Compute Engine 允許將磁碟資料遷移至磁碟具有副本的其他可用區。這項程序稱為容錯移轉。

容錯移轉程序包括從受影響可用區中的執行個體卸載可用區副本,然後將可用區副本附加至次要可用區中的新執行個體。Compute Engine 會將磁碟上的資料同步複製到次要可用區,確保在單一副本失敗時能快速容錯移轉。

透過應用程式專屬的區域控制層進行容錯移轉

應用程式專屬的區域控制層並非 Google Cloud 服務。設計高可用性服務架構時,您必須自行建構應用程式專屬的區域控制層。這個應用程式控制層會決定哪些執行個體必須附加區域磁碟,以及哪個執行個體是目前的主要執行個體。

如果偵測到區域磁碟的主要執行個體或資料庫發生故障,高可用性服務架構中應用程式專屬的區域控制層,會自動啟動容錯移轉,切換至次要可用區中的待命執行個體。容錯移轉期間,應用程式專屬的區域控制層會將區域磁碟重新附加至次要可用區的待命執行個體。接著,Compute Engine 會根據健康狀態檢查信號,將所有流量導向該執行個體。

整體容錯移轉延遲時間 (不含故障偵測時間) 是下列延遲時間的總和:

  • 不到 1 分鐘即可將區域性磁碟連接至待命執行個體
  • 應用程式初始化和當機救援所需的時間

詳情請參閱「瞭解應用程式專屬的區域控制層」。

「災難復原構成元素」頁面涵蓋 Compute Engine 提供的構成元素。

透過強制連接進行容錯移轉

區域永久磁碟和 Hyperdisk Balanced High Availability 的優點之一,就是萬一發生可用區服務中斷情形,您可以手動將工作負載容錯移轉至其他可用區。 如果原始可用區發生中斷,您必須等到該可用區副本還原後,才能完成磁碟卸離作業。在這種情況下,您可能需要將次要可用區副本附加至新的運算執行個體,而不必從主要執行個體卸載主要可用區副本。這項程序稱為「強制附加」。

如果主要可用區中的運算執行個體無法使用,您可以強制將磁碟附加至次要可用區中的執行個體。如要執行這項工作,請採取下列任一做法:

  • 在與要強制附加的區域磁碟副本相同的可用區中,啟動另一個運算執行個體。
  • 在該可用區中維護熱備援運算執行個體。熱待命是與主要區域中執行個體相同的執行個體,這兩個執行個體具有相同的資料。

Compute Engine 會在不到一分鐘內執行強制附加作業。 總復原時間目標 (RTO) 不僅取決於儲存空間容錯移轉 (強制附加區域磁碟),也取決於其他因素,包括:

  • 是否必須先建立次要執行個體
  • 基礎檔案系統偵測熱插拔磁碟所需的時間長度
  • 對應應用程式的復原時間

如要進一步瞭解如何使用強制連接功能容錯移轉運算執行個體,請參閱「使用 force-attach 容錯移轉區域磁碟」。

區域性永久磁碟和 Hyperdisk Balanced High Availability 偏好工作負載可用性,這表示在不太可能發生的情況下,如果兩個磁碟副本同時無法使用,資料保護功能就會受到影響。 詳情請參閱「管理區域磁碟故障」。

限制

以下各節列出區域性 Persistent Disk 和 Hyperdisk Balanced High Availability 的限制。

區域性磁碟的一般限制

  • 區域性永久磁碟只能連接至採用 E2、N1、N2 和 N2D 機型的 VM。
  • Hyperdisk Balanced High Availability 只能連接至支援的機型。
  • 您無法透過複製 Hyperdisk ML 或 Hyperdisk Throughput 磁碟,建立區域磁碟。您必須建立來源磁碟的快照,然後透過快照建立 Hyperdisk Balanced High Availability 磁碟。詳情請參閱「將區域磁碟變更為 Hyperdisk Balanced High Availability 磁碟」。
  • 使用唯讀模式時,最多可將區域平衡型永久磁碟連接至 10 個 VM 執行個體。
  • 區域性標準永久磁碟的大小下限為 200 GiB。
  • 您只能增加 區域性永久磁碟或Hyperdisk Balanced High Availability 磁碟區的大小,無法縮減。
  • 區域性 Persistent Disk 和 Hyperdisk Balanced High Availability 磁碟區的效能特性,與對應的可用區磁碟不同。詳情請參閱 關於 Persistent Disk 效能和 Hyperdisk Balanced High Availability 效能限制。
  • 如果 Hyperdisk Balanced High Availability 磁碟區處於多重寫入器模式,且連接的執行個體位於發生服務中斷的可用區,則無法變更磁碟區大小。
  • 您無法將多重寫入模式的 Hyperdisk Balanced High Availability 磁碟區做為開機磁碟。
  • 如果您複製可用區磁碟來建立複製磁碟,則建立時兩個可用區備用資源不會完全同步。建立完成後,您平均可在 3 分鐘內使用區域磁碟複製作業。不過,您可能需要等待幾十分鐘,磁碟才會達到完全複製狀態,且 復原點目標 (RPO) 接近零。瞭解如何 檢查複製的磁碟是否已完全複製。
  • 您無法在 AI 可用區建立區域磁碟。
  • 依據映像檔建立區域磁碟時,有下列限制:
    • 依據映像檔建立區域磁碟時,每 5 分鐘可在專案中建立一個磁碟。您一次最多可發出 5 個要求,但 25 分鐘內建立的磁碟不得超過 5 個。
    • 依據映像檔建立區域性磁碟的功能目前為預先發布版,建立速度比依據映像檔建立可用區磁碟慢。

副本復原檢查點的限制

  • 副本復原檢查點是裝置中繼資料的一部分,本身不會顯示任何磁碟資料。您只能使用檢查點做為機制,建立降級磁碟的快照。使用檢查點建立快照後,即可使用快照還原資料。
  • 只有在磁碟效能降低時,才能從副本復原檢查點建立快照。
  • 只有在磁碟完全複製後,Compute Engine 才會重新整理磁碟的副本復原檢查點。
  • Compute Engine 只會為磁碟維護一個副本復原檢查點,且只會維護該檢查點的最新版本。
  • 您無法查看副本復原檢查點的確切建立和重新整理時間戳記。
  • 您只能使用 Compute Engine API,從副本復原檢查點建立快照。

後續步驟