變更記憶體帳戶的備援組態

Azure 儲存體 一律會儲存數據的多個複本,以面對計劃性和非計劃性事件來保護數據。 這些事件包括暫時性硬體故障、網路或電源中斷,以及大規模自然災害。 數據備援可確保您的記憶體帳戶符合 Azure 儲存體 的服務等級協定(SLA),即使遇到失敗也是如此。

本文說明變更現有記憶體帳戶之復寫設定的程式。

變更復寫類型的選項

決定哪一個備援組態最適合您的案例時,請考慮降低成本與更高可用性之間的取捨。 有助於判斷您應該選擇哪些備援設定的因素包括:

  • 數據在主要區域內的復寫方式。 主要區域中的數據可以使用本地備援記憶體 (LRS) 在本機複寫,或使用區域備援記憶體 (ZRS) 跨 Azure 可用性區域複寫。
  • 您的數據是否進行異地複寫。 異地復寫可藉由將數據復寫到與主要區域相距的第二個區域,來防範區域災害。 異地復寫組態包括異地備援記憶體(GRS)異地區域備援記憶體(GZRS)。
  • 您的應用程式是否需要次要區域中複寫數據的讀取許可權。 如果主要區域因任何原因而無法使用,您可以將記憶體帳戶設定為允許複寫至次要區域數據的讀取許可權。 提供 次要區域中 數據的讀取許可權設定包括讀取許可權異地備援記憶體 (RA-GRS) 和讀取許可權異地區域備援記憶體 (RA-GZRS)。

如需所有備援選項的詳細概觀,請參閱 Azure 儲存體 備援

您可以視需要變更記憶體帳戶的備援設定,不過有些設定受限於 限制停機時間需求。 在環境中進行任何變更之前,先檢閱這些限制和需求,有助於避免與您自己的時間範圍和運行時間需求發生衝突。

有三種方式可以變更復寫設定:

異地備援和讀取許可權可以同時變更。 不過,任何也牽涉到區域備援的變更都需要轉換,而且必須使用雙步驟程序個別執行。 這兩個步驟可以依任何順序執行。

變更備援設定

下表提供如何在復寫類型之間切換的概觀。

注意

手動移轉是您想要在變更復寫類型限制內變更復寫設定的任何案例的選項。 手動移轉選項會從下表中排除以簡化。

開關 ...至 LRS ...至 GRS/RA-GRS 6 至 ZRS ...至 GZRS/RA-GZRS 2,6
...來自 LRS N/A 使用 Azure 入口網站PowerShellCLI1,2 執行轉換2,3,4,5 首先,使用入口網站PowerShellCLI 切換至 GRS/RA-GRS 1,然後執行 GZRS/RA-GZRS 3,4,5 的轉換
...從 GRS/RA-GRS 使用 Azure 入口網站PowerShellCLI N/A 首先,使用入口網站PowerShellCLI 切換至 LRS,然後執行 ZRS 3,5 的轉換 執行轉換3,5
...從 ZRS 執行轉換3 首先,使用入口網站PowerShellCLI 切換至 GZRS/RA-GZRS,然後執行 GRS/RA-GRS3 的轉換 N/A 使用 Azure 入口網站PowerShellCLI1
...從 GZRS/RA-GZRS 首先,使用入口網站PowerShellCLI 切換至 ZRS,然後執行 LRS 3 的轉換 執行轉換3 使用 Azure 入口網站、PowerShell 或 CLI N/A

1新增異地備援會產生一次性輸出費用
2 如果您的記憶體帳戶在封存層中包含 Blob,請先 檢閱存取層限制 ,再將備援類型變更為異地或區域備援。
3 支援的轉換類型取決於記憶體帳戶類型。 如需詳細資訊,請參閱 記憶體帳戶數據表
4 不支援針對故障轉移所產生的 LRS 帳戶轉換成 ZRS 或 GZRS。 如需詳細資訊,請參閱 故障轉移和容錯回復
5 如果已啟用 Azure Blob 儲存體 的 NFSv3 通訊協定支援,或記憶體帳戶包含 Azure 檔案儲存體 NFSv4.1 共用,則不支援從 LRS 轉換成 ZRS
6 即使啟用異地備援似乎會立即發生,但必須等到兩個區域之間的數據同步處理完成,才能起始故障轉移至次要區域。

變更複寫設定

根據您的案例從 變更備援組態 區段,使用下列其中一種方法來變更復寫設定。

使用 Azure 入口網站、PowerShell 或 Azure CLI 變更備援組態

在大部分情況下,您可以使用 Azure 入口網站、PowerShell 或 Azure CLI 來變更記憶體帳戶的異地備援或讀取存取權 (RA) 複寫設定。

變更記憶體帳戶在 Azure 入口網站 中的複寫方式,不會造成應用程式的關閉時間,包括需要轉換的變更。

若要在 Azure 入口網站 中變更記憶體帳戶的備援選項,請遵循下列步驟:

  1. 瀏覽至您的儲存體帳戶。

  2. 在 [數據管理] 底下,選取 [備援]。

  3. 更新備 設定。

  4. 選取 [儲存]。

    Screenshot showing how to change replication option in portal.

執行轉換

備援「轉換」是變更記憶體帳戶區域備援層面的程式。

在轉換期間, 不需要數據遺失或應用程式停機

有兩種方式可以起始轉換:

提示

Microsoft 建議盡可能使用客戶起始的轉換,而不是支援起始的轉換。 客戶起始的轉換可讓您起始轉換,並直接從 Azure 入口網站 內監視其進度。 由於轉換是由客戶起始的,因此不需要建立和管理支援要求。

客戶起始的轉換

大部分區域中的客戶可以開始轉換並監視其進度,而不是開啟支援要求。 此選項可消除與建立和管理支援要求相關的潛在延遲。 如需判斷支持客戶起始轉換的區域的說明,請參閱 區域限制 一文。

您可以使用 Azure 入口網站、PowerShell 或 Azure CLI,在支援區域中完成客戶起始的轉換。 初始之後,轉換仍可能需要72小時才能開始。

重要

轉換完成時沒有 SLA。

如果您需要更充分掌控轉換開始和完成的時間,請考慮 手動移轉。 一般而言,您在帳戶中擁有的數據越多,複寫該數據至其他區域或區域所需的時間就越長。

如需客戶起始轉換時間的詳細資訊,請參閱 計時和頻率

若要在 Azure 入口網站 內新增或修改記憶體帳戶的區域性備援,請執行下列步驟:

  1. 瀏覽至您的儲存體帳戶。

  2. 在 [數據管理] 底下,選取 [備援]。

  3. 更新備 設定。

  4. 選取 [儲存]。

    Screenshot showing how to change the zonal-replication option in portal.

監視客戶起始的轉換進度

在評估並處理轉換要求時,狀態應該會透過下表所示的清單進行:

狀態 說明
提交以進行轉換 轉換要求已成功提交以進行處理。
進行中 1 轉換正在進行中。
已完成
- 或 -
Failed2
轉換已順利完成。
- 或 -
轉換失敗。

1 起始之後,轉換最多可能需要 72 小時才能開始。 如果轉換在起始要求后 96 小時內未輸入「進行中」狀態,請向 Microsoft 提交支援要求以判斷原因。 如需客戶起始轉換時間的詳細資訊,請參閱 計時和頻率
2 如果轉換失敗,請向 Microsoft 提交支援要求,以判斷失敗的原因。

注意

雖然 Microsoft 會立即處理轉換的要求,但無法保證何時完成轉換。 如果您需要依特定日期轉換的數據,Microsoft 建議您改為執行手動移轉。

一般而言,您在帳戶中擁有的數據越多,將該數據復寫到區域中其他區域所需的時間就越長。

客戶起始的轉換狀態會顯示在 記憶體帳戶的 [備援 ] 頁面上:

Screenshot showing the status of the conversion request on the Redundancy page of the Azure portal.

支援起始的轉換

客戶仍然可以透過向 Microsoft 開啟支援要求來要求轉換。

提示

如果您需要轉換多個記憶體帳戶,請建立單一支援票證,並指定要在 [ 其他詳細 數據] 索引標籤上轉換的帳戶名稱。

請遵循下列步驟,向 Microsoft 要求轉換:

  1. 在 Azure 入口網站 中,流覽至您想要轉換的記憶體帳戶。

  2. 在 [支援 + 疑難解答] 底下,選取 [新增支援要求]。

  3. 根據您的帳戶資訊完成 [ 問題描述 ] 索引標籤:

    • 摘要:(一些描述性文字)。
    • 問題類型:選取 [技術]。
    • 訂用帳戶:從下拉式清單中選取訂用帳戶。
    • 服務:選取 [我的服務],然後 儲存體 [服務類型] 的 [帳戶管理]。
    • 資源:選取要轉換的記憶體帳戶。 如果您需要指定多個記憶體帳戶,您可以在 [ 其他詳細數據 ] 索引標籤上執行此動作。
    • 問題類型:選擇 [資料遷移]。
    • 問題子類型:選擇 [移轉至 ZRS]、[GZRS] 或 [RA-GZRS]。

    Screenshot showing how to request a conversion - Problem description tab.

  4. 選取 [下一步]。 [建議的解決方案] 索引標籤可能會在切換至 [解決方案] 頁面之前短暫顯示。 在 [ 解決方案] 頁面上,您可以檢查記憶體帳戶的資格以進行轉換:

    • 目標複寫類型:(從下拉式清單中選擇所需的選項 )
    • 儲存體 帳戶的來源: (輸入單一記憶體帳戶名稱或以分號分隔的帳戶清單)
    • 選取 [提交]

    Screenshot showing how to check the eligibility of your storage account(s) for conversion - Solutions page.

  5. 如果結果指出您的記憶體帳戶不符合轉換資格,請採取適當的動作。 否則,請選取 [ 返回以支援要求]。

  6. 選取 [下一步]。 如果您有多個記憶體帳戶要移轉,請在 [ 詳細 數據] 索引標籤上指定每個帳戶的名稱,並以分號分隔。

    Screenshot showing how to request a conversion - Additional details tab.

  7. 在 [其他詳細數據] 索引標籤上提供必要資訊,然後選取 [檢閱 + 建立] 以檢閱並提交您的支援票證。 Azure 支援 代理程式會檢閱您的案例,並連絡您提供協助。

手動移轉

手動移轉比轉換更有彈性和控制能力。 如果您需要特定日期移動的數據,或案例不支持轉換,則可以使用此選項。 將記憶體帳戶移至另一個區域時,手動移轉也很有用。 如需詳細資訊,請參閱將 Azure 儲存體 帳戶移至另一個區域

如果下列狀況,您必須執行手動移轉:

  • 您要將記憶體帳戶移轉至不同的區域。
  • 您的記憶體帳戶是區塊 Blob 帳戶。
  • 您的記憶體帳戶包含封存層中的數據,並不需要重新凍結數據。

重要

手動移轉可能造成應用程式停機。 如果您的應用程式需要高可用性,Microsoft 也會提供 轉換 選項。 轉換是就地移轉,不需要停機。

透過手動移轉,您會將數據從現有的記憶體帳戶複製到新的記憶體帳戶。 若要執行手動移轉,您可以使用下列其中一個選項:

  • 使用 AzCopy、其中一個 Azure 儲存體 客戶端連結庫或可靠的非 Microsoft 工具等現有工具來複製數據。
  • 如果您熟悉 Hadoop 或 HDInsight,您可以將來源記憶體帳戶和目的地記憶體帳戶連結至叢集。 然後,使用 DistCp 之類的工具平行處理資料複製程式。

如需如何執行手動移轉的詳細指引,請參閱將 Azure 儲存體 帳戶移至另一個區域

變更復寫類型的限制

重要

開機診斷不支援進階記憶體帳戶或區域備援記憶體帳戶。 當進階或區域備援記憶體帳戶用於開機診斷時,使用者會在啟動虛擬機時收到 StorageAccountTypeNotSupported 錯誤。

限制適用於一些復寫變更案例,視下列情況而定:

區域

請確定記憶體帳戶所在的區域支援所有所需的複寫設定。 例如,如果您要將您的帳戶轉換成區域備援 (ZRS、GZRS 或 RA-GZRS),請確定您的記憶體帳戶位於支援它的區域中。 請參閱區域備援記憶體異地區域備援記憶體的支持區域清單。

重要

從 LRS 到 ZRS 的客戶起始轉換 可在支援 ZRS 的所有公用區域中使用,但下列專案除外:

  • (歐洲)義大利北部
  • (歐洲) 英國南部
  • (歐洲)波蘭中部
  • (歐洲) 西歐
  • (中東)以色列中部
  • (北美洲) 加拿大中部
  • (北美洲) 美國東部
  • (北美洲) 美國東部 2

從現有 ZRS 帳戶到 LRS 的客戶起始轉換 可在所有公用區域中使用。

功能衝突

某些記憶體帳戶功能與其他功能或作業不相容。 例如,故障轉移至次要區域的能力是異地備援的主要功能,但其他功能與故障轉移不相容。 如需故障轉移不支援的功能和服務的詳細資訊,請參閱 不支援的功能和服務。 如果啟用衝突的功能,可能會封鎖帳戶轉換為 GRS、GZRS 或 RA-GZRS,或可能需要稍後在起始故障轉移之前停用此功能。

Storage account type

規劃變更復寫設定時,請考慮下列與記憶體帳戶類型相關的限制。

某些記憶體帳戶類型僅支援某些備援組態,這會影響它們是否可以轉換或移轉,如果是的話,該設定會如何。 如需 Azure 記憶體帳戶類型和支援的備援選項的詳細資訊,請參閱 記憶體帳戶概觀

下表提供記憶體帳戶類型可用的備援選項概觀,以及是否支援轉換和手動移轉:

Storage account type 支援 LRS 支援 ZRS 支援轉換
(從入口網站)
支援轉換
(依支援要求)
支援手動移轉
標準一般用途 v2
進階檔案共用 1
進階區塊 Blob
進階版 分頁 Blob
受控磁碟2
標準一般用途 v1 3
ZRS 傳統4
(適用於標準一般用途 v1 帳戶)

1 進階檔案共享的轉換僅適用於 開啟支援要求; 目前不支援客戶起始的轉換
2 受控磁碟適用於 LRS 和 ZRS,不過 ZRS 磁碟有一些 限制。 如果 LRS 磁碟是區域磁碟(沒有指定區域),則可以藉由 變更 SKU 來轉換它。 如果 LRS 磁碟是區域性磁碟,則只能依照移轉受控磁碟中的程式手動移轉。 您可以在標準 HDD 記憶體上儲存標準 SSD 受控磁碟的快照集和映像,並選擇 LRS 和 ZRS 選項。 如需與可用性設定組整合的相關信息,請參閱 Azure 受控磁碟簡介。
3 如果您的記憶體帳戶為 v1,您必須先將它升級至 v2,才能執行轉換。 若要瞭解如何升級 v1 帳戶,請參閱 升級至一般用途 v2 儲存器帳戶
4 個 ZRS 傳統記憶體帳戶已被取代。 如需轉換 ZRS 傳統帳戶的相關信息,請參閱 轉換 ZRS 傳統帳戶

轉換 ZRS 傳統帳戶

重要

ZRS 傳統帳戶已於 2021 年 3 月 31 日淘汰。 客戶無法再建立 ZRS 傳統帳戶。 如果您仍有一些帳戶,您應該將它們升級至一般用途 v2 帳戶。

ZRS 傳統僅適用於 一般用途 V1 (GPv1) 記憶體帳戶中的區塊 Blob 。 如需記憶體帳戶的詳細資訊,請參閱 Azure 記憶體帳戶概觀

ZRS 傳統帳戶會以異步方式在一到兩個區域內跨數據中心複寫數據。 除非 Microsoft 起始故障轉移至次要復寫數據,否則無法使用複寫的數據。 ZRS 傳統帳戶無法轉換成 LRS、GRS 或 RA-GRS。 ZRS 傳統帳戶也不支援計量或記錄。

若要將 ZRS 傳統變更為另一個復寫類型,請使用下列其中一種方法:

若要將 ZRS 傳統記憶體帳戶升級至 ZRS,請在 ZRS 可用的區域中,使用 Azure 入口網站、PowerShell 或 Azure CLI:

若要升級至 Azure 入口網站 中的 ZRS,請流覽至帳戶的 [組態設定],然後選擇 [升級]:

Upgrade ZRS Classic to ZRS in the Portal

若要手動將 ZRS 傳統帳戶數據遷移至另一種復寫類型,請依照步驟 執行手動移轉。

如果您想要將數據遷移至與來源帳戶不同的區域備援記憶體帳戶,您必須執行手動移轉。 如需詳細資訊,請參閱將 Azure 儲存體 帳戶移至另一個區域

存取層

請確定所需的備援選項支援記憶體帳戶中目前使用的存取層。 例如,ZRS、GZRS 和RA-GZRS記憶體帳戶不支援封存層。 如需詳細資訊,請參閱 Blob 數據的經常性存取層、非經常性存取層和封存存取層。 若要將 LRS、GRS 或 RA-GRS 帳戶轉換成支援區域備援的帳戶,請先將封存的 Blob 移至支援封存層中 Blob 的記憶體帳戶。 然後將來源帳戶轉換為 ZRS、GZRS 和 RA-GZRS。

將所有封存 Blob 重新凍結至經常性存取層或非經常性存取層之後,可以將包含封存層 Blob 的 LRS 記憶體帳戶切換至 GRS 或 RA-GRS。 您也可以執行手動移

提示

Microsoft 建議您盡可能避免變更包含封存 Blob 的記憶體帳戶備援組態,因為解除凍結作業的成本和耗時。 但是,如果您必須加以變更, 手動移 轉可以節省解除凍結的費用。

通訊協定支援

如果下列任一情況成立,您就無法將記憶體帳戶轉換為區域備援 (ZRS、GZRS 或 RA-GZRS):

  • 已啟用 Azure Blob 儲存體的 NFSv3 通訊協定支援
  • 記憶體帳戶包含 Azure 檔案儲存體 NFSv4.1 共用

容錯移轉和容錯回復

帳戶故障轉移至次要區域之後,就可以使用PowerShell或 Azure CLI(2.30.0 版或更新版本)從新的主要複本起始容錯回復至新的次要區域。 起始故障轉移

如果您執行客戶管理的帳戶故障轉移,以從 GRS 或 RA-GRS 帳戶的中斷中復原,在故障轉移之後,該帳戶會變成新主要區域中的本地備援 (LRS)。 即使針對所謂的容錯回復作業,也不支援從故障轉移產生的 LRS 帳戶轉換成 ZRS 或 GZRS。 例如,如果您執行帳戶從RA-GRS故障轉移至次要區域中的 LRS,然後再次將它設定為RA-GRS,它會保留在新的次要區域 (原始主要區域) 中的 LRS。 如果您接著執行另一個帳戶故障轉移以容錯回復至原始主要區域,則會在原始主要區域中再次保持 LRS。 在此情況下,您無法在主要區域中執行 ZRS、GZRS 或 RA-GZRS 的轉換。 相反地,請執行手動移轉以新增區域備援。

停機時間需求

轉換期間,您可以存取記憶體帳戶中的數據,且不會遺失持久性或可用性。 移轉程式期間會維護 Azure 儲存體 SLA,而且轉換期間不會遺失任何數據。 服務端點、存取金鑰、共用存取簽章和其他帳戶選項在移轉后保持不變。

如果您選擇執行手動移轉,則需要停機,但您可以更充分掌控移轉程序的時機。

計時和頻率

如果您從 Azure 入口網站 起始區域備援轉換,轉換程式最多可能需要 72 小時才能開始。 如果您 藉由開啟支援要求來要求轉換,可能需要較長的時間才能開始。 如果客戶起始的轉換在起始要求后 96 小時內未輸入「進行中」狀態,請提交支援要求給 Microsoft 以判斷原因。 若要監視客戶起始轉換的進度,請參閱 監視客戶起始的轉換進度

重要

轉換完成時沒有 SLA。 如果您需要更充分掌控轉換開始和完成的時間,請考慮 手動移轉。 一般而言,您在帳戶中擁有的數據越多,複寫該數據至其他區域或區域所需的時間就越長。

區域備援轉換之後,您至少必須等候 72 小時,才能再次變更記憶體帳戶的備援設定。 暫時保留可讓背景進程在進行另一項變更之前完成,以確保帳戶的一致性和完整性。 例如,從 LRS 移至 GZRS 是一個 2 個步驟的程式。 您必須在一個作業中新增區域備援,然後在第二個作業中新增異地備援。 從 LRS 到 ZRS 之後,您必須等待至少 72 小時,才能從 ZRS 移至 GZRS。

與變更數據復寫方式相關聯的成本

Azure 儲存體 提供數個選項來設定複寫。 這些選項的排序成本最低到最昂貴,包括:

  • LRS
  • ZRS
  • GRS
  • RA-GRS
  • GZRS
  • RA-GZRS

變更記憶體帳戶中數據復寫方式的相關成本,取決於您 變更的備援 設定哪些層面。 數據記憶體和輸出頻寬定價的組合會決定進行變更的成本。 如需定價的詳細資訊,請參閱 Azure 儲存體 定價頁面

如果您在主要區域中新增區域備援,則不會有與進行該轉換相關的初始成本,但由於所需的復寫和儲存空間增加,進行中的數據儲存成本較高。

異地備援會在變更時產生輸出頻寬費用,因為您的整個記憶體帳戶會復寫到次要區域。 所有後續寫入主要區域也會產生輸出頻寬費用,以將寫入複寫至次要區域。

如果您移除異地備援(從 GRS 變更為 LRS),則不需要進行變更,但復寫的數據會從次要位置刪除。

重要

如果您移除次要區域 (RA) 的讀取存取權(從RA-GRS 變更為 GRS 或 LRS),該帳戶會在轉換后的日期之後額外計費為RA-GRS 30 天。

另請參閱