共用方式為


高可用性多區域設計的建議

適用於此 Azure 架構完善的架構可靠性檢查清單建議:

RE:05 在不同的層級新增備援,特別是針對重要流程。 根據識別的可靠性目標,將備援套用至計算、數據、網路和其他基礎結構層。

相關指南:使用可用性區域和區域的備援 |

本指南說明設計高可用性多區域雲端環境的建議。 高可用性是設計可靠性的基礎原則。 高可用性架構可協助您盡可能避免停機時間,並在發生停機時有效率地復原。

主動-主動主動-被動 是一般架構類型,可根據您部署環境的平臺,以不同方式套用。 本指南著重於多區域雲端環境設計。 在 Azure 上,您也可以使用 可用性區域,在單一區域內設計主動-主動或主動-被動架構。 如需使用可用性區域設計高可用性架構的詳細指引,請參閱 Azure 架構良好的架構指南

關鍵設計策略

主動-主動和主動-被動是設計高可用性雲端環境的兩種基本方法。 主動-主動環境的設計目的是要處理部署工作負載之每個區域中的生產負載。 主動-被動環境的設計目的是只處理主要區域中的生產負載,但在必要時故障轉移至次要(被動)區域。 為您的工作負載選取最佳 Azure 區域,是設計高可用性多區域環境的關鍵部分。 如需選取 Azure 區域的指引,請參閱 選取 Azure 區域指南

本節說明評估每個模式並精簡架構以符合商務需求時應考慮的設計選項。

如需以可重複、可調整的方式建構工作負載的指引,請參閱 部署戳記模式 。 此設計模式可協助您優化高可用性設計,以有效率地管理。

下列各節說明兩種模式的設計選項。

主動-主動

  • 容量作用中-主動:兩個或多個 Azure 區域中的鏡像部署戳記,每個戳記都設定為處理其服務的區域或區域的生產工作負載,且可調整以在發生區域性中斷時處理來自其他區域的負載。

    • 網路:使用 延遲加權 全域路由,將流量分散到區域之間。

    • 數據復寫和一致性:針對多重區域讀取和寫入功能,使用 Azure Cosmos DB全域分散式數據存放區。 針對關係資料庫,請使用具有唯讀 連接字串 的可讀取複本。

    • 此設計的優點:比過度布建的設計降低營運成本。

    • 此設計的缺點:如果另一個區域發生中斷,則相應增加以符合完整負載需求時,用戶體驗的可能降低。

  • 主動-主動過度布建:兩個或多個 Azure 區域中的鏡像部署戳記,每個已過度布建以處理其服務區域或區域的生產工作負載,並在發生區域性中斷時處理來自其他區域的負載。

    • 網路:使用 延遲加權 全域路由,將流量分散到區域之間。

    • 數據復寫和一致性:針對多重區域讀取和寫入功能,使用 Azure Cosmos DB全域分散式數據存放區。 對於關係資料庫,請使用可讀取的複本搭配唯讀 連接字串。

    • 此設計的優點:最有彈性的設計可能。

    • 此設計的缺點:比可調整的設計更高的營運成本。

  • 這兩種設計的常見優點:高復原性和低風險的完整工作負載中斷。

  • 這兩種設計的常見缺點:由於各種因素,營運成本和管理負擔較高,包括管理應用程式狀態和數據同步處理的必要性。

主動-被動

  • 暖備援:一個主要區域和一或多個次要區域。 次要區域會部署最少可能的計算和數據大小調整,且不需載入即可執行。 這個區域稱為 暖備 援區域。 故障轉移時,會調整計算和數據資源,以處理來自主要區域的負載。

    • 網路:使用 優先順序 全域路由。

    • 數據復寫和一致性:將資料庫複寫至被動區域,並使用平臺即服務 (PaaS) 解決方案的自動故障轉移功能,例如 Azure Cosmos DBAzure SQL 資料庫

    • 此設計的優點:主動-被動設計中最短的復原時間。

    • 此設計的缺點:主動-被動設計中最高的作業成本。

  • 冷備援:一個主要區域和一或多個次要區域。 次要區域會調整為處理完整負載,但所有計算資源都會停止。 此區域稱為 冷備 區域。 您必須在故障轉移之前啟動資源。

    • 網路:使用 優先順序 全域路由。

    • 數據復寫和一致性:將資料庫複寫至被動區域,並使用 PaaS 解決方案的自動故障轉移功能,例如 Azure Cosmos DBAzure SQL 資料庫

    • 此設計的優點:比暖備援設計較低的營運成本。

    • 此設計的缺點:復原時間比暖備援設計更長。

  • 在災害時重新部署:一個主要區域和一或多個次要區域。 只有必要的網路部署在次要區域中。 操作員必須在次要區域中執行布建腳本,才能故障轉移工作負載。 此設計稱為 在災害時重新部署。

    • 網路:使用 優先順序 全域路由。

    • 數據復寫和一致性:部署新的資料庫實例,並從備份中解除凍結數據。

    • 此設計的優點:最低營運成本。

    • 此設計的缺點:最長的復原時間。

  • 主動-被動設計的共同優點:相較於主動式設計,降低營運成本和減少日常管理負擔。 不需要同步處理應用程式狀態。

  • 主動-被動設計的常見缺點:較久、更複雜的復原程式。 需要手動介入才能成功故障轉移的可能性較高。

注意

無論您的高可用性設計為何,請記得為 Azure DevOps 基礎結構、跳躍方塊、監視,以及管理工作負載所需的任何其他重要服務設定備援。

Azure 便利化

  • Azure Front Door 結合了 Azure 流量管理員 與內容傳遞系統和 Web 應用程式防火牆的全域路由功能,以協助您管理高可用性工作負載。

  • Azure Cosmos DB 是全域散發的 NoSQL 資料庫平臺,可協助您執行主動-主動環境,並將發生區域性中斷時停機的機會降到最低。

可靠性檢查清單

請參閱一組完整的建議。