Azure 事件方格和事件方格命名空間中的可靠性
本文包含有關透過可用性區域和跨區域災害復原和商務持續性進行事件方格和事件方格命名空間區域復原的詳細資料。
有關 Azure 可靠性的結構概觀,請參閱 Azure 可靠性。
可用性區域支援
可用性區域是每個 Azure 區域內的數據中心實體分隔群組。 當某個區域失敗時,服務可以故障轉移至其中一個其餘區域。
如需 Azure 中可用性區域的詳細資訊,請參閱 什麼是可用性區域?。
主題、系統主題、網域以及事件訂用帳戶和事件資料的事件方格資源定義會自動跨三個可用性區域進行複寫。 其中一個可用性區域發生區域失敗時,事件方格資源會自動容錯移轉至另一個可用性區域,無需人為介入。 您目前無法控制 (啟用或停用) 此功能。 現有的區域開始支援可用性區域時,就會自動容錯移轉現有的事件方格資源,以利用此功能。 不需採取客戶動作。
Azure 事件方格命名空間也會使用可用性區域實現區域內的高可用性。
必要條件
如需可用性區域支援,您的事件方格資源必須位於支援可用性區域的區域中。 若要檢閱哪些區域支援可用性區域,請參閱支援區域清單。
定價
因為事件方格會在支援可用性區域的區域中自動支援可用性區域,所以價格不會有任何變更。
建立已啟用可用性區域的資源
因為事件方格會在支援可用性區域的區域中自動支援可用性區域,所以沒有必要的設定組態。
移轉至可用性區域支援
如果將您的事件方格資源重新放置到支援可用性區域的區域,則您會自動收到可用性區域支援。 若要了解如何將您的資源重新放置到支援可用性區域的另一個區域,請參閱下列內容:
跨區域災害復原和商務持續性
災害復原 (DR)是指從重大影響事件中復原,例如自然災害或不成功的部署 (導致停機和資料遺失)。 無論原因為何,解決災害的最佳辦法是定義完善且經過測試的 DR 方案,以及主動支援 DR 的應用程式設計。 開始思考建立災害復原方案之前,請參閱設計災害復原策略的建議。
Microsoft 在災害復原方面採取共同責任模型。 在共同責任模型中,Microsoft 確保基準基礎結構和平台服務可供使用。 此時,許多 Azure 服務不會自動複寫資料,或從失敗區域回復為交叉複寫到另一個已啟用的區域。 針對這些服務,您必須負責設定適用於您工作負載的災害復原計劃。 大多數在 Azure 平台即服務 (PaaS) 供應項目執行的服務,皆提供支援災害復原的功能和指導,您可以使用支援快速復原的特定服務功能來開發災害復原方案。
災害復原通常牽涉到建立備份資源,以防止區域狀況不良時中斷。 在此流程期間,您的工作負載中將需要 Azure 事件方格資源的主要和次要區域。
有不同方式可從嚴重遺失的應用程式功能中復原。 在本節中,我們會描述您將需要遵循的檢查清單,為您的用戶端做好準備,從由於資源或區域狀況不良而造成的失敗中復原。
事件方格同時支援伺服器端上的手動和自動異地災害復原 (GeoDR)。 如果您想要更充分地控管容錯移轉程序,仍可實作用戶端災害復原邏輯。 如需有關自動 GeoDR 的詳細資訊,請參閱 Azure 事件方格中的伺服器端異地災害復原。 如需如何實作用戶端災害復原的詳細資料,請參閱 Azure 事件方格中的用戶端容錯移轉實作。
下表說明事件方格中的用戶端容錯移轉和異地災害復原支援。
事件方格資源 | 用戶端容錯移轉支援 | 異地災害復原 (GeoDR) 支援 |
---|---|---|
自訂主題 | 支援 | 跨地理位置/區域 |
系統主題 | 不支援 | 自動啟用 |
網域 | 支援 | 跨地理位置/區域 |
合作夥伴命名空間 | 支援 | 不支援 |
命名空間 | 支援 | 不支援 |
事件方格命名空間
事件方格命名空間不支援跨區域災害復原。 不過,您可以藉由建立主要和次要命名空間,透過用戶端容錯移轉實作來實現跨區域高可用性。
透過用戶端容錯移轉實作,您可以:
實作自訂 (手動或自動化) 流程,以在主要與次要區域之間複寫命名空間、用戶端身分識別和其他設定**,包括 CA 憑證、用戶端群組、主題空間、權限繫結、路由。
實作指引服務,藉由在端點上執行健康情況檢查,為用戶端提供主要和次要端點。 指引服務可以是 Web 應用程式,其可藉由使用 DNS 重新導向技術複寫並保持連接,例如使用 Azure 流量管理員。
透過複寫中繼資料並平衡整個命名空間中的負載,實現主動-主動災害復原解決方案。 您可以藉由複寫中繼資料來讓次要命名空間保持就緒,以便在主要命名空間無法使用時達成主動-被動災害復原解決方案,將流量導向次要命名空間。
設定災害復原
針對配對的區域,事件方格提供一種功能,以將發佈流量容錯移轉至自訂主題、系統主題和網域的配對區域。 事件方格會在幕後將主題、系統主題、網域和事件訂用帳戶的資源定義自動同步至配對區域。 不過,事件資料不會複寫至配對區域。 在正常狀態下,事件會儲存在您為該資源所選取的區域中。 發生區域中斷且 Microsoft 起始容錯移轉時,新的事件會開始流向地理配對區域,並從該處進行分派,而不需要您的介入。 中斷緩解之後,會從該處分派原始區域中所發佈和接受的事件。
您可以在兩個容錯移轉選項之間進行選擇,即 Microsoft起始的容錯移轉和客戶起始的容錯移轉。 如需如何設定這兩個設定的詳細步驟,請參閱設定資料落地。
Microsoft 起始的容錯移轉是由 Microsoft 在罕見的情況下施行,用以將事件方格資源從受影響的區域容錯移轉至對應的地理配對區域。 Microsoft 有權決定執行此選項的時機。 此機制在容錯移轉使用者的流量之前,無須經過使用者同意。
透過更新主題或網域的設定來啟用或停用此功能。 選取 [跨地理位置] (預設值) 來啟用 Microsoft 起始的容錯移轉。
客戶起始的容錯移轉是由自訂災害復原方案針對 Azure 事件方格主題和網域所定義的,Microsoft 不會將任何類型的資料複寫至另一個區域。 雖然此容錯移轉選項需要更多的工作,但可讓您更快速地進行容錯移轉,而且您可以控制次要區域的選擇。 如果您想要針對 Azure 事件方格主題實作用戶端災害復原,則請參閱針對 Azure 事件方格主題建置您自己的用戶端災害復原。
為何您可能想要停用 Microsoft 起始的容錯移轉功能,有幾個原因:
- Microsoft 起始的容錯移轉會以最大的努力完成。
- 某些地理配對不符合您組織的資料落地需求。
透過更新主題或網域的設定來啟用或停用此功能。 選取 [區域]。
如果您使用 非配對區域,則不論您選取的數據落地設定為何,您的元數據只會在區域內復寫。
災害復原容錯移轉體驗
災害復原是透過兩個計量 (復原點目標 (RPO) 和復原時間目標 (RTO)) 衡量的。
事件方格的自動容錯移轉針對中繼資料 (主題、網域、事件訂用帳戶) 和資料 (事件) 有不同的 RPO 和 RTO。 如果您需要與下列規格不同的規格,則仍然可以使用主題健康情況 API 實作自己的用戶端容錯移轉。
復原點目標 (RPO)
中繼資料 RPO:零分鐘。 針對適用的資源,建立/更新/刪除資源時,會將資源定義同步複寫至地理配對。 發生容錯移轉時,不會遺失任何中繼資料。
資料 RPO:發生容錯移轉時,會從配對區域處理新的資料。 只要受影響區域的中斷緩解,就會從該處分派未處理的事件。 如果區域復原所需的時間比事件上所設定的存留時間值還要長,則可能會卸除資料。 若要緩解此資料遺失,建議您為事件訂用帳戶設定無效信件目的地。 如果受影響的區域遺失且無法復原,則會遺失一些資料。 在最佳案例中,訂閱者會跟上發佈速率,而且只會遺失幾秒鐘的資料。 最糟案例是訂閱者未主動處理事件且存留時間上限為 24 小時時,最多遺失 24 小時的資料。
復原時間目標 (RTO)
中繼資料 RTO:容錯移轉決策是以配對區域中可用容量這類因素為基礎,而且可以持續 60 (含) 以上分鐘。 一旦起始了容錯移轉,在 5 分鐘內,事件方格就會開始接受主題和訂用帳戶的建立/更新/刪除呼叫。
資料 RTO:與上述資訊相同。
重要
- 在伺服器端災害復原的情況下,如果配對區域沒有額外容量可容納額外流量,則事件方格無法起始容錯移轉。 復原會以最大的努力完成。
- 使用這項功能不需付費。
- 合作夥伴命名空間和合作夥伴主題不支援異地災害復原。