什麼是可用性區域?
許多 Azure 區域都提供可用性區域,這些區域是區域內數據中心的分隔群組。 每個可用性區域都有獨立的電源、冷卻和網路基礎結構,因此,如果某個區域發生中斷,則其餘區域支援區域服務、容量和高可用性。
可用性區域是由高效能網路所連線,往返延遲少於 2 毫秒。 它們已足夠接近其他可用性區域的低延遲連線,但相距甚遠,可減少多個受局部中斷影響的可能性,例如電源故障或暴風雨。
資料中心位置是使用嚴格的弱點風險評估準則來選取的。 此程序會識別所有重要的資料中心特定風險,並考慮可用性區域之間的共用風險。
下圖會顯示數個範例 Azure 區域。 區域 1 和 2 支援可用性區域,而區域 3 和 4 沒有可用性區域。
若要了解哪些區域支援可用性區域,請參閱具有可用性區域支援的 Azure 區域。
可用性區域支持的類型
Azure 服務可以提供兩種類型的可用性區域支援: 區域備援 和 區域。 每個服務都可能支援一或兩種類型。 設計可靠性策略時,請確定您瞭解工作負載中的每個服務如何支援可用性區域。
區域備援部署:區域備援資源會自動復寫或分散到多個可用性區域。 例如,區域備援數據服務會將數據復寫到多個區域,讓某個區域中的失敗不會影響數據的可用性。 針對某些服務,您可以選取資源所使用的區域集,而在其他服務中,Microsoft選取區域。
使用區域備援部署,Microsoft管理跨區域分散要求,以及跨區域複寫數據。 如果可用性區域中發生中斷,Microsoft會自動管理故障轉移至另一個區域。
區域性部署:區域資源會部署到單一自我選取的可用性區域。 此方法不提供復原優點,但可協助您達到更嚴格的延遲或效能需求。 例如,虛擬機、受控磁碟和標準IP位址可以分區部署至相同的區域。
若要改善區域資源的復原能力,您必須在區域內多個可用性區域中設計具有不同資源的架構,但Microsoft不會為您管理程式。 如果可用性區域中發生中斷,您必須負責故障轉移至另一個區域。
有些服務在設定可用性區域之前不會使用可用性區域。 如果您未明確設定可用性區域支援的服務,則稱為 非區域 或 區域 部署。 以這種方式設定的資源可能會放在區域中的任何可用性區域,而且可能會移動。 如果區域中的任何可用性區域發生中斷,非區域資源可能會位於受影響的區域中,而且可能會發生停機時間。
重要
某些服務可能會有額外的需求,以符合可用性區域支援。 例如,有些可能只支援特定層級或 SKU 的可用性區域,或 Azure 區域的子集。
設定可用性區域支援的資源
每個服務都有自己的方法來設定可用性區域支援。 若要瞭解每個服務如何支援可用性區域,以及如何設定該支援,請參閱 依服務排序的 Azure 可靠性指南。
實體和邏輯可用性區域
每個資料中心都會指派給實體區域。 實體區域會對應至 Azure 訂用帳戶中的邏輯區域,而不同的訂用帳戶可能會有不同的對應順序。 Azure 訂用帳戶會在建立訂用帳戶時自動指派其對應。 因此,一個訂用帳戶的區域對應可能與其他訂用帳戶不同。
例如,訂用帳戶 A 可能有對應至邏輯區域 2 的實體區域 1,而訂用帳戶 B 有對應至邏輯區域 3 的實體區域 1:
若要了解訂用帳戶的邏輯和實體區域之間的對應,請使用 清單位置 Azure Resource Manager API。 您可使用 Azure CLI 或 Azure PowerShell 來從 API 擷取資訊。
az rest --method get \
--uri '/subscriptions/{subscriptionId}/locations?api-version=2022-12-01' \
--query 'value[?availabilityZoneMappings != `null`].{displayName: displayName, name: name, availabilityZoneMappings: availabilityZoneMappings}'
可用性區域和 Azure 更新
針對每個區域,Microsoft的目標是一次將更新部署到單一可用性區域內的 Azure 服務。 此方法可減少更新對作用中工作負載的影響,讓工作負載在進行更新時繼續在其他區域中執行。 若要利用循序區域更新,您的工作負載必須已設定為跨多個區域執行。 如需 Azure 部署更新方式的詳細資訊,請參閱 進階安全部署做法。
可用性區域架構指導
若要達成可靠的工作負載:
- 如果生產工作負載位於支援可用性區域,則生產工作負載應設定為使用多個可用性區域。
- 對於任務關鍵性工作負載,您應該考慮多區域和多重區域兩個解決方案。
如需如何在解決方案架構中使用區域和可用性區域的詳細資訊,請參閱 使用可用性區域和區域的建議。