《Windows Azure Platform 系列文章目錄》
我們在使用Azure雲平臺的時候,可以使用可用區(Availability Zone)的概念。
可用區(Availability Zone,AZ),一個AZ是一個或多個物理數據中心的集合,有獨立的風火水電,AZ內邏輯上再將計算、網絡、存儲等資源劃分成多個集羣。一個Region中的多個AZ間通過高速光纖相連,以滿足用戶跨AZ構建高可用性系統的需求。
對於不同的訂閱來說,A訂閱看到的可用區(1),和B訂閱看到的可用性區(1),從底層實際物理數據中心部署的角度來說,物理位置可能是不一樣的。
簡單來說,A訂閱裏的可用區(1)的物理位置,可能在B訂閱裏是部署在可用區(2)裏的
那如何才能查看2個訂閱之間,可用性區底層物理數據中心部署的對應關係?我們可以通過下面的PowerShell來實現
1.首先需要註冊Azure Feature組件,以下我們以PowerShell爲例:
#註冊組件 Register-AzProviderFeature -FeatureName AvailabilityZonePeering -ProviderNamespace Microsoft.Resources #查看組件是否註冊成功 get-AzProviderFeature -FeatureName AvailabilityZonePeering -ProviderNamespace Microsoft.Resources
如果註冊成功的話,會顯示下圖的信息:
2.如果我們以Azure CLI註冊組件,請使用下面的命令:
az feature register -n AvailabilityZonePeering --namespace Microsoft.Resources
az feature show -n AvailabilityZonePeering --namespace Microsoft.Resources
3.下載下面的PowerShell到本地磁盤:
https://github.com/RZomerman/Check-AZZones/blob/main/Check-AzureAZmapping.ps1
4.執行PowerShell命令
#登錄Azure環境 Add-AzAccount #選擇當前訂閱 Select-AzureSubscription -Current -SubscriptionName [你的訂閱名稱] #查看訂閱之間的可用區對應關係 #Targetsubscription是目標訂閱ID #Location選擇Azure數據中心名稱 #SourceSubscription是源訂閱ID .\checkazmapping.ps1 -Targetsubscription "b5aa1700-1510-" -location eastus -SourceSubscription "8149a599-606f-"
5.執行完畢後,如下圖:
可以看到,源訂閱ID爲:8149a599-606f的可用區1的,針對目標訂閱:b5aa1700-1510的對應的可用區爲2
6.我們還可以通過REST API的方式,來驗證2個訂閱之間的AZ對應關係。
具體可以參考:https://docs.microsoft.com/en-us/rest/api/resources/subscriptions/check-zone-peers#code-try-0
POST:https://management.azure.com/subscriptions/8149a599-606f-XXXXXXXXXXXXX/providers/Microsoft.Resources/checkZonePeers/?api-version=2020-01-01
Body:
{
"location": "eastus",
"subscriptionIds": [
"subscriptions/b5aa1700-1510-XXXXXXXXXXXXX"
]
}
Headers:
Authorization: Bearer [Access_Key]
Responses