共用方式為


快速入門:使用 Azure CLI 使用 Azure 虛擬網絡 Manager 建立網格網路拓撲

使用 Azure CLI 來管理所有虛擬網路的連線,以開始使用 Azure 虛擬網絡 Manager。

在本快速入門中,您會部署三個虛擬網路,並使用 Azure Virtual Network Manager 來建立網狀網路拓撲。 然後您會驗證已套用連線設定。

使用 Azure Virtual Network Manager 針對網格虛擬網路拓撲部署的資源圖表。

必要條件

  • 具有有效訂用帳戶的 Azure 帳戶。 免費建立帳戶
  • 最新的 Azure CLI,或者您可以在入口網站中使用 Azure Cloud Shell。
  • Azure 虛擬網絡 Manager 擴充功能。 若要新增它,請執行 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"

建立 Virtual Network Manager 執行個體

在這項工作中,定義此 虛擬網絡 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 建立三個虛擬網路。 此範例會在 (US) 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"

定義網格組態的成員資格

Azure 虛擬網絡 Manager 允許將成員資格新增至網路群組的兩種方法。 靜態成員資格牽涉到手動新增虛擬網路,而動態成員資格牽涉到使用 Azure 原則 根據條件動態新增虛擬網路。 針對網格組態成員資格,選擇您想要完成的選項。

藉由使用靜態成員資格,您可以透過 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"

下一步

在此步驟中,您將瞭解如何使用安全性系統管理員設定來封鎖網路流量: