使用 Azure CLI 來管理所有虛擬網路的連線,以開始使用 Azure 虛擬網絡 Manager。
在本快速入門中,您會部署三個虛擬網路,並使用 Azure Virtual Network Manager 來建立網狀網路拓撲。 然後您會驗證已套用連線設定。
必要條件
- 具有有效訂用帳戶的 Azure 帳戶。 免費建立帳戶。
- 最新的 Azure CLI,或者您可以在入口網站中使用 Azure Cloud Shell。
- Azure 虛擬網路管理員擴充功能。 若要新增它,請執行
az extension add -n virtual-network-manager。 - 若要修改動態網路群組,您只能透過 Azure RBAC 角色指派來獲得存取權。 不支援傳統管理員/舊版授權。
登入您的 Azure 帳戶並且選取您的訂用帳戶
若要開始您的組態,請登入您的 Azure 帳戶。 如果您使用 Cloud Shell 試用功能 ,則會自動登入。
az login
選取已部署虛擬網路管理員的訂用帳戶:
az account set \
--subscription "<subscriptionID>"
更新 Azure CLI 的 虛擬網絡 Manager 擴充功能:
az extension update --name virtual-network-manager
建立資源群組
在這項工作中,您會使用 az group create 建立資源群組來裝載網路管理員實例。 此範例會在 (US) West 2 位置建立名為 resource-group 的資源群組:
az group create \
--name "resource-group" \
--location "westus2"
建立 虛擬網路管理員 執行個體
在這項工作中,定義此 虛擬網絡 Manager 實例的範圍和存取類型。 使用 az network manager create 建立範圍。 將值 <subscriptionID> 取代為您想要讓虛擬網路管理員用來管理虛擬網路的訂用帳戶。 將 <mgName\> 取代為您想要管理的管理群組。
az network manager create \
--location "westus2" \
--name "network-manager" \
--resource-group "resource-group" \
--scope-accesses "Connectivity" "SecurityAdmin" \
--network-manager-scopes subscriptions="/subscriptions/<subscriptionID>"
建立網路群組
在這項工作中,使用 az network manager group create 建立網络群組:
az network manager group create \
--name "network-group" \
--network-manager-name "network-manager" \
--resource-group "resource-group" \
--description "Network Group for Production virtual networks"
建立虛擬網路
在這項工作中,使用 az network vnet create 建立三個虛擬網路。 此範例在 (美國)West 2 位置建立三個虛擬網路。 每個虛擬網路都有用於動態成員資格的標記 NetworkType 。 如果你已經有想要建立網狀網路的虛擬網路,可以跳到下一節。
az network vnet create \
--name "vnet-00" \
--resource-group "resource-group" \
--address-prefix "10.0.0.0/16" \
--tags "NetworkType=Prod"
az network vnet create \
--name "vnet-01" \
--resource-group "resource-group" \
--address-prefix "10.1.0.0/16" \
--tags "NetworkType=Prod"
az network vnet create \
--name "vnet-02" \
--resource-group "resource-group" \
--address-prefix "10.2.0.0/16" \
--tags "NetworkType=Prod"
將子網新增至每個虛擬網路
在這項工作中,請為每個虛擬網路新增一個 /24 子網路,以完成其設定。 使用 az network vnet subnet create 建立名為 default 的子網組態:
az network vnet subnet create \
--name "default" \
--resource-group "resource-group" \
--vnet-name "vnet-00" \
--address-prefix "10.0.0.0/24"
az network vnet subnet create \
--name "default" \
--resource-group "resource-group" \
--vnet-name "vnet-01" \
--address-prefix "10.1.0.0/24"
az network vnet subnet create \
--name "default" \
--resource-group "resource-group" \
--vnet-name "vnet-02" \
--address-prefix "10.2.0.0/24"
定義網格組態的成員資格
藉由使用靜態成員資格,您可以透過 az network manager group static-member create,手動將網格組態的三個虛擬網路新增至您的網路群組。 以建立這些虛擬網路時所屬的訂用帳戶取代 <subscriptionID>。
az network manager group static-member create \
--name "vnet-00" \
--network-group "network-group" \
--network-manager "network-manager" \
--resource-group "resource-group" \
--resource-id "/subscriptions/<subscriptionID>/resourceGroups/resource-group/providers/Microsoft.Network/virtualnetworks/vnet-00"
az network manager group static-member create \
--name "vnet-01" \
--network-group "network-group" \
--network-manager "network-manager" \
--resource-group "resource-group" \
--resource-id "/subscriptions/<subscriptionID>/resourceGroups/resource-group/providers/Microsoft.Network/virtualnetworks/vnet-01"
az network manager group static-member create \
--name "vnet-02" \
--network-group "network-group" \
--network-manager "network-manager" \
--resource-group "resource-group" \
--resource-id "/subscriptions/<subscriptionID>/resourceGroups/resource-group/providers/Microsoft.Network/virtualnetworks/vnet-02"
建立設定
在這項工作中,使用 az network manager connect-config create 建立網格網路拓撲組態。 使用您的訂用帳戶 ID 來取代 <subscriptionID> 。
az network manager connect-config create \
--configuration-name "connectivityconfig" \
--description "Production Mesh Connectivity Config Example" \
--applies-to-groups '[{"networkGroupId": "/subscriptions/<subscriptionID>/resourceGroups/resource-group/providers/Microsoft.Network/networkManagers/network-manager/networkGroups/network-group", "groupConnectivity": "None"}]' \
--connectivity-topology "Mesh" \
--network-manager-name "network-manager" \
--resource-group "resource-group"
認可部署
若要讓組態生效,請使用 az network manager post-commit 將組態提交至目標區域:
az network manager post-commit \
--network-manager-name "network-manager" \
--commit-type "Connectivity" \
--configuration-ids "/subscriptions/<subscriptionID>/resourceGroups/resource-group/providers/Microsoft.Network/networkManagers/network-manager/connectivityConfigurations/connectivityconfig" \
--target-locations "westus2" \
--resource-group "resource-group"
驗證設定
當您使用 az network manager list-effective-connectivity-config 時,虛擬網路會顯示套用至它們的組態:
az network manager list-effective-connectivity-config \
--resource-group "resource-group" \
--virtual-network-name "vnet-00"
az network manager list-effective-connectivity-config \
--resource-group "resource-group" \
--virtual-network-name "vnet-01"
az network manager list-effective-connectivity-config \
--resource-group "resource-group" \
--virtual-network-name "vnet-02"
針對屬於連線設定一部分的虛擬網路,您會取得類似此範例的輸出:
{
"skipToken": "",
"value": [
{
"appliesToGroups": [
{
"groupConnectivity": "None",
"isGlobal": "False",
"networkGroupId": "/subscriptions/<subscriptionID>/resourceGroups/resource-group/providers/Microsoft.Network/networkManagers/network-manager/networkGroups/network-group",
"useHubGateway": "False"
}
],
"configurationGroups": [
{
"description": "Network Group for Production virtual networks",
"id": "/subscriptions/<subscriptionID>/resourceGroups/resource-group/providers/Microsoft.Network/networkManagers/network-manager/networkGroups/network-group",
"provisioningState": "Succeeded",
"resourceGroup": "resource-group"
}
],
"connectivityTopology": "Mesh",
"deleteExistingPeering": "False",
"description": "Production Mesh Connectivity Config Example",
"hubs": [],
"id": "/subscriptions/<subscriptionID>/resourceGroups/resource-group/providers/Microsoft.Network/networkManagers/network-manager/connectivityConfigurations/connectivityconfig",
"isGlobal": "False",
"provisioningState": "Succeeded",
"resourceGroup": "resource-group"
}
]
}
清除資源
如果您不再需要 Azure 虛擬網絡 Manager 實例和其他資源,請使用 az group delete 刪除資源群組:
az group delete \
--name "resource-group"
下一步
在此步驟中,您將瞭解如何使用安全性系統管理員設定來封鎖網路流量: