《Windows Azure Platform 系列文章目錄》
之前做項目正好遇到,在這里記錄一下。
以下這幾種情況,都具備跨租戶間的vnet peering使用場景:
1.當我們的母公司和子公司,使用2個不同的Azure 租戶。在特殊情況下,需要通過內網互聯傳輸數據。
2.當我們的第三方運維公司的Azure環境,和多個甲方客戶的Azure環境,需要通過內網互聯進行系統維護。
前提條件:
1.在兩個租戶下,至少存在1個賬戶,對2個VNet都具有peering的權限
2.租戶間的VNet IP Range不能重疊
具體操作步驟:
1.在租戶B里,把租戶A的某一個用戶設置為Guest User
2.在租戶B里,把登錄租戶B的連接,發送給該Guest User
3.在租戶B的資源組里,把Tenant A的用戶設置好RBAC權限,使其對Tenant B的某一個VNet具備peering權限
4.新開一個瀏覽器,把步驟2的連接打開,同時以租戶A的身份,登錄Azure Portal
5.登錄完畢后,以租戶A的身份可以在Azure Portal,同時瀏覽到2個租戶信息(租戶A和租戶B)
6.我們以租戶A的身份,設置兩個VNet之前的Peering
接下來我們詳細介紹一下:
假設我們有2個租戶:
租戶 | 目錄 | 用戶名 | 資源組 | 虛擬網絡名稱 | VNet IP Range | 前提條件 |
A | contosoAAA | userA@contosoAAA.partner.onmschina.cn | A-RG | A-VNet | 10.0.0.0/24 | 用戶A有對A-VNet的peering權限 |
B | contosoBBB | userB@contosoBBB.partner.onmschina.cn | B-RG | B-VNet | 192.168.0.0/24 | 用戶B有對B-VNet的peering權限 |
以上環境,請大家提前准備好。
1.在租戶B里,我們以用戶名:userB@contosoBBB.partner.onmschina.cn,登錄Azure Portal。步驟略。
2.在租戶B里,我們點擊Azure Active Directory,點擊新來賓用戶。如下圖:
3.在租戶B里,把租戶A的用戶名:userA@contosoAAA.partner.onmschina.cn,設置為來賓用戶:
4.設置完畢后,我們可以在租戶B里,查看到這個來賓用戶(userA@contosoAAA.partner.onmschina.cn)。我們點擊該用戶名。頁面跳轉
在跳轉的頁面中,點擊重新發送邀請,
5.請把下圖中的邀請URL保存在記事本上,這個步驟非常關鍵。
6.在租戶B里,我們選擇B-VNet所在資源組,對這個來賓用戶(userA@contosoAAA.partner.onmschina.cn)設置RBAC權限,這里我們設置角色為Contributor,步驟略。
上面的操作完畢后,來賓用戶(userA@contosoAAA.partner.onmschina.cn)可以同時對2個目錄contosoAAA和contosoBBB同時具備權限。
7.我們新開一個瀏覽器,把步驟5中的邀請URL地址打開。輸入userA@contosoAAA.partner.onmschina.cn這個用戶的密碼。
在彈出的審查許可中,選擇接受。截圖略。
8.登錄完畢后,我們在同一個瀏覽器里新開一個連接:https://portal.azure.cn/,就可以以用戶userA@contosoAAA.partner.onmschina.cn,查看到目錄:contosoAAA和contosoBBB
9.我們以用戶userA@contosoAAA.partner.onmschina.cn,點擊資源組A-RG,點擊虛擬網絡A-VNet,點擊對等互聯,點擊添加。如下圖
10.我們以用戶userA@contosoAAA.partner.onmschina.cn,輸入Peering的相關信息。
請注意,我們在遠程虛擬網絡中,輸入目錄contosoBBB的虛擬網絡B-VNet的資源ID。
點擊身份驗證,然后需要再次對目錄contosoBB進行身份驗證:
11.身份驗證完畢后,我們點擊添加。就完成了A-VNet (10.0.0.0/24)到B-VNet (192.168.0.0.0/24)之間的Peering
如果大家覺得操作比較繁瑣,可以用下面的PowerShell
#前提條件: #執行下面的PowerShell,需要把上面截圖部分的的步驟1-6先操作完畢 #即某1個賬戶可以同時訪問2個Tenant,且對2個Tenant下的VNet都具備peering權限 #先登錄Azure China環境 Add-AzAccount -Environment AzureChinaCloud #選擇當前用戶所在的訂閱ID $subid_a = 'aaaaaaaa' Select-AzSubscription -SubscriptionId subid_a #選擇設置該目錄下的虛擬網絡ID $vnet1 = '/subscriptions/aaaaaaaa/resourceGroups/A-RG/providers/Microsoft.Network/virtualNetworks/A-VNet' #遠端目錄下的vnet $vnet2 = '/subscriptions/bbbbbbbb/resourceGroups/B-RG/providers/Microsoft.Network/virtualNetworks/B-VNet' #AllowGatewayTransit表示使用本地網關,請按照具體環境配置 Add-AzVirtualNetworkPeering -Name A-to-B -VirtualNetwork $vnet1 -RemoteVirtualNetworkId $vnet2 -AllowGatewayTransit -AllowForwardedTraffic #再選擇另外一個目錄下的訂閱ID $subid_b = 'bbbbbbbb' Select-AzSubscription -SubscriptionId subid_b #選擇設置該目錄下的虛擬網絡ID $vnet1 = '/subscriptions/bbbbbbbb/resourceGroups/B-RG/providers/Microsoft.Network/virtualNetworks/B-VNet' #遠端目錄下的vnet $vnet2 = '/subscriptions/aaaaaaaa/resourceGroups/A-RG/providers/Microsoft.Network/virtualNetworks/A-VNet' #UseRemoteGateways表示使用遠程虛擬網絡的網關,請按照具體環境配置 Add-AzVirtualNetworkPeering -Name B-toA -VirtualNetwork $vnet1 -RemoteVirtualNetworkId $vnet2 -UseRemoteGateways -AllowForwardedTraffic