變更儲存體帳戶的複寫方式 \(部分機器翻譯\)
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 入口網站PowerShell 或 CLI 1,2 | 執行轉換2,3,4,5 | 首先,使用入口網站PowerShell 或 CLI 以切換至 GRS/RA-GRS 1,然後執行轉換至 GZRS/RA-GZRS 3,4,5 |
…從 GRS/RA-GRS | 使用 Azure 入口網站PowerShell 或 CLI | N/A | 首先,使用入口網站PowerShell 或 CLI 以切換至 LRS,然後執行轉換至 ZRS 3,5 | 執行轉換3,5 |
...從 ZRS | 執行轉換3 | 首先,使用入口網站PowerShell 或 CLI 以切換至 GZRS/RA-GZRS,然後執行轉換至 GRS/RA-GRS3 | N/A | 使用 Azure 入口網站PowerShell 或 CLI 1 |
…從 GZRS/RA-GZRS | 首先,使用入口網站PowerShell 或 CLI 以切換至 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 入口網站中變更儲存體帳戶的備援選項,請遵循下列步驟:
執行轉換
備援「轉換」是變更儲存體帳戶區域備援層面的流程。
轉換期間,沒有資料遺失也不需要應用程式停機。
有兩種方式可以起始轉換:
提示
Microsoft 建議盡可能使用客戶起始的轉換,而不是支援起始的轉換。 客戶起始的轉換可讓您起始轉換,並直接從 Azure 入口網站內監視其進度。 因為轉換是由客戶起始,所以不需要建立和管理支援要求。
客戶起始的轉換
大部分區域中的客戶無需開啟支援要求,即可啟動轉換並監視其進度。 此選項會消除與建立和管理支援要求相關的潛在延遲。 如需協助判斷哪些區域支援客戶起始的轉換,請參閱區域限制一文。
您可以使用 Azure 入口網站、PowerShell 或 Azure CLI,在受支援區域中完成客戶起始的轉換。 起始後,轉換仍可能需要最多 72 小時才會開始。
重要
沒有用於完成轉換的 SLA。
如果您需要進一步控制轉換開始和完成的時間,請考慮手動移轉。 一般而言,您帳戶中的資料越多,將該資料複寫至其他區域或地區所需的時間就越長。
如需客戶起始轉換時機的詳細資訊,請參閱時機和頻率。
若要在 Azure 入口網站內新增或修改儲存體帳戶的區域性備援,請執行下列步驟:
監視客戶起始的轉換進度
在評估並處理轉換要求時,狀態應該會透過下表所示的清單進行:
狀態 | 說明 |
---|---|
已提交進行轉換 | 已成功提交轉換要求進行處理。 |
進行中1 | 轉換進行中。 |
已完成 - 或 - 失敗2 |
轉換已成功完成。 - 或 - 轉換失敗。 |
1 初始之後,轉換通常會在72小時內開始,但在某些情況下可能需要較長的時間。 如需客戶起始轉換時機的詳細資訊,請參閱時機和頻率。
2 如果轉換失敗,請向 Microsoft 提交支援要求,以判斷失敗的原因。
注意
雖然 Microsoft 會立即處理您的轉換要求,但不保證何時會完成。 如果您需要在特定日期之前完成資料轉換,則 Microsoft 建議您改為執行手動移轉。
一般而言,您帳戶中的資料越多,將該資料複寫至地區中的其他區域所需的時間就越長。
客戶起始的轉換狀態會顯示在儲存體帳戶的 [備援] 頁面上:
支援起始的轉換
客戶仍然可以透過向 Microsoft 開啟支援要求來要求轉換。
提示
如果您需要轉換多個儲存體帳戶,請在 [其他詳細資料] 索引標籤上建立單一支援票證,並指定要轉換的帳戶名稱。
請依照下列步驟操作來向 Microsoft 要求轉換:
在 Azure 入口網站中,瀏覽至您想要轉換的儲存體帳戶。
在 [支援 + 疑難排解] 下方,選取 [新增支援要求]。
根據您的帳戶資訊,完成 [問題描述] 索引標籤:
- 摘要:(描述性文字)。
- 問題類型:選取 [技術]。
- 訂用帳戶:從下拉式清單中選取訂用帳戶。
- 服務:選取 [我的服務],然後針對 [服務類型] 選取 [儲存體帳戶管理]。
- 資源:選取要轉換的儲存體帳戶。 如果您需要指定多個儲存體帳戶,您可以在 [其他詳細資料] 索引標籤中指定。
- 問題類型:選擇 [資料移轉]。
- 問題子類型:選擇 [移轉至 ZRS、GZRS 或 RA-GZRS]。
選取 [下一步]。 [建議的解決方案] 索引標籤可能會在切換至 [解決方案] 頁面之前短暫顯示。 在 [解決方案] 頁面中,您可以查看儲存體帳戶是否符合轉換的資格:
- 目標複寫類型:(從下拉式清單選擇所需的選項)
- 儲存體帳戶的來源:(輸入單一儲存體帳戶名稱或以分號分隔的帳戶清單)
- 選取 [提交]。
如果結果指出您的儲存體帳戶不符合轉換資格,請採取適當的動作。 否則,選取 [返回支援要求]。
選取 [下一步]。 如果您有一個以上的儲存體帳戶要移轉,請在 [詳細資料] 索引標籤上,指定每個帳戶的名稱,並以分號分隔。
在 [其他詳細資料] 索引標籤上提供他必要資訊,然後選取 [檢閱 + 建立] 以檢閱並提交您的支援票證。 Azure 支援代理程式會檢閱您的案例,並連絡您以提供協助。
手動移轉
手動移轉的彈性和掌控性比轉換還高。 如果需要在特定日期前移動資料,或是如果您的案例不支援轉換,則您可以使用此選項。 將儲存體帳戶移至另一個區域時,手動移轉也相當實用。 如需詳細資料,請參閱將 Azure 儲存體帳戶移至另一個區域。
如果發生下列情況,您必須執行手動移轉:
- 您想要將儲存體帳戶移轉至不同的區域。
- 您的儲存體帳戶是區塊 Blob 帳戶。
- 您的儲存體帳戶包含封存層中的資料,且不需要解除凍結資料。
重要
手動移轉可能造成應用程式停機。 如果您的應用程式需要高可用性,Microsoft 也提供轉換選項。 轉換是一種不需停機的就地移轉。
透過手動移轉,您可以從現有的儲存體帳戶將資料複製到新的儲存體帳戶。 若要執行手動移轉,您可以使用下列其中一個選項:
- 使用現有的工具 (例如 AzCopy)、其中一個 Azure 儲存體用戶端程式庫,或可靠的非 Microsoft 工具來複製資料。
- 如果您熟悉 Hadoop 或 HDInsight,則可以將來源儲存體帳戶和目的地儲存體帳戶連結至您的叢集。 然後,使用 DistCp 之類的工具來平行處理資料複製程序。
如需如何執行手動移轉的詳細指引,請參閱將 Azure 儲存體帳戶移至另一個區域。
變更複寫類型的限制
重要
開機診斷不支援進階儲存體帳戶或區域備援儲存體帳戶。 當進階或區域備援儲存體帳戶用於開機診斷時,使用者會在啟動虛擬機器 (VM) 時收到 StorageAccountTypeNotSupported
錯誤。
限制適用於一些複寫變更案例,視下列情況而定:
區域
確定儲存體帳戶所在的區域支援所有所需的複寫設定。 例如,如果您要將您的帳戶轉換成區域備援 (ZRS、GZRS 或 RA-GZRS),請確定您的儲存體帳戶位於支援它的區域中。 請參閱區域備援儲存體和異地區域備援儲存體的支援區域清單。
功能衝突
某些儲存體帳戶功能與其他功能或作業不相容。 例如,容錯移轉至次要區域的能力是異地備援的主要功能,但其他功能與容錯移轉不相容。 如需容錯移轉不支援哪些功能和服務的詳細資訊,請參閱不支援的功能和服務。 如果啟用衝突的功能,可能會封鎖將帳戶轉換為 GRS、GZRS 或 RA-GZRS,或可能需要稍後在起始容錯移轉之前停用此功能。
Storage account type
規劃變更您的複寫設定時,請考慮下列與儲存體帳戶類型相關的限制。
某些儲存體帳戶類型僅支援特定備援設定,這會影響其是否可以進行轉換或移轉,若是如此,該如何轉換或移轉。 如需 Azure 儲存體帳戶類型和受支援備援選項的詳細資訊,請參閱儲存體帳戶概觀。
下表提供儲存體帳戶類型可用的備援選項概觀,以及是否支援轉換和手動移轉:
Storage account type | 支援 LRS | 支援 ZRS | 支援轉換 (從入口網站) |
支援轉換 (透過支援要求) |
支援手動移轉 |
---|---|---|---|---|---|
標準一般用途 v2 | ✅ | ✅ | ✅ | ✅ | ✅ |
進階檔案共用 | ✅ | ✅ | ✅1 | ✅ | |
進階區塊 Blob | ✅ | ✅ | ✅ | ||
進階分頁 Blob | ✅ | ||||
受控磁碟2 | ✅ | ✅ | ✅ | ✅ | |
標準一般用途 v1 | ✅ | 3 | ✅ | ||
傳統 ZRS4 (適用於標準一般用途 v1 帳戶) |
✅ |
1 開啟支援要求即可取得進階檔案共享的轉換;客戶起始的轉換可以使用PowerShell或 Azure CLI 進行。
2 受控磁碟適用於 LRS 和 ZRS,不過 ZRS 磁碟有一些限制。 如果 LRS 磁碟是地區性的 (未指定區域),則可以 變更 SKU 來進行轉換。 如果 LRS 磁碟是區域性的,則只能遵循移轉受控磁碟中的流程進行手動移轉。 您可以將標準 SSD 受控磁碟的快照集及映像,存放在標準 HDD 儲存體上,並選擇 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,請在可使用 ZRS 的區域中使用 Azure 入口網站、PowerShell 或 Azure CLI:
若要在 Azure 入口網站中升級至 ZRS,請瀏覽至帳戶的 [組態] 設定,然後選擇 [升級]:
若要手動將傳統 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-GZRS 帳戶執行客戶自控帳戶容錯移轉,以從中斷中復原,則該帳戶會在容錯移轉之後變成新主要區域中的本地備援 (LRS)。 不支援針對故障轉移所產生的 LRS 帳戶轉換成 ZRS 或 GZRS。 請改為執行手動移轉以新增區域備援。
停機時間需求
在轉換期間,您可以存取儲存體帳戶中的資料,而不會失去持久性或可用性。 Azure 儲存體 SLA 會在移轉過程中維持原樣,且在轉換期間不會遺失任何資料。 在移轉之後,服務端點、存取金鑰、共用存取簽章和其他帳戶選項都會保持不變。
如果您選擇執行手動移轉,則需要停機,但您更能控制移轉流程的時機。
時機和頻率
如果您從 Azure 入口網站起始區域備援轉換,轉換流程最多可能需要 72 小時才會開始。 如果您開啟支援要求來要求轉換,則可能需要更長的時間才會開始。 若要監視客戶起始的轉換進度,請參閱監視客戶起始的轉換進度。
重要
沒有用於完成轉換的 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),則該帳戶會在其轉換日期之後的額外 30 天期間以 RA-GRS 的方式計費。