Quickstart: Een mesh-netwerk maken met Azure Virtual Network Manager met behulp van Azure PowerShell

Ga aan de slag met Azure Virtual Network Manager met behulp van de Azure PowerShell connectiviteit voor uw virtuele netwerken te beheren.

In deze quickstart implementeert u drie virtuele netwerken en gebruikt u Azure Virtual Network Manager om een mesh-netwerktopologie te maken.

Belangrijk

Azure Virtual Network Manager is momenteel beschikbaar als openbare preview. Deze preview-versie wordt aangeboden zonder service level agreement en wordt niet aanbevolen voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt. Zie Supplemental Terms of Use for Microsoft Azure Previews (Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews) voor meer informatie.

Vereisten

  • Een Azure-account met een actief abonnement. Gratis een account maken
  • Zorg ervoor dat u de nieuwste PowerShell-modules hebt, of gebruik Azure Cloud Shell in de portal.
  • Als u PowerShell lokaal uitvoert, moet u ook Connect-AzAccount uitvoeren om verbinding te kunnen maken met Azure.

Abonnement registreren voor openbare preview

Gebruik de volgende opdracht om uw Azure-abonnement te registreren voor openbare preview van Azure Virtual Network Manager:

Register-AzProviderFeature -FeatureName AllowAzureNetworkManager -ProviderNamespace Microsoft.Network

Een Azure PowerShell installeren

Installeer de meest recente Az.Network Azure PowerShell-module met behulp van deze opdracht:

Install-Module -Name Az.Network -AllowPrerelease

Een Virtual Network manager maken

  1. Definieer het bereik en het toegangstype dat dit Azure Virtual Network Manager-exemplaar heeft. U kunt ervoor kiezen om het bereik te maken met een abonnementsgroep of beheergroep of een combinatie van beide. Maak het bereik met behulp van New-AzNetworkManagerScope.

    Import-Module -Name Az.Network -RequiredVersion "4.12.1"
    
    [System.Collections.Generic.List[string]]$subGroup = @()  
    $subGroup.Add("/subscriptions/abcdef12-3456-7890-abcd-ef1234567890")
    [System.Collections.Generic.List[string]]$mgGroup = @()  
    $mgGroup.Add("/managementGroups/abcdef12-3456-7890-abcd-ef1234567890")
    
    [System.Collections.Generic.List[String]]$access = @()  
    $access.Add("Connectivity");  
    $access.Add("SecurityAdmin"); 
    
    $scope = New-AzNetworkManagerScope -Subscription $subGroup  -ManagementGroup $mgGroup
    
  2. Maak de Virtual Network Manager met New-AzNetworkManager. In dit voorbeeld wordt een Azure Virtual Network Manager met de naam myAVNM gemaakt op de locatie VS - west.

    $avnm = @{
        Name = 'myAVNM'
        ResourceGroupName = 'myAVNMResourceGroup'
        NetworkManagerScope = $scope
        NetworkManagerScopeAccess = $access
        Location = 'West US'
    }
    $networkmanager = New-AzNetworkManager @avnm
    

Resourcegroep en virtuele netwerken maken

Een resourcegroep maken

Voordat u een Azure Virtual Network Manager kunt maken, moet u een resourcegroep maken om de Network Manager te hosten. Maak een resourcegroep met behulp van de opdracht New-AzResourceGroup. In dit voorbeeld wordt een resourcegroep met de naam myAVNMResourceGroup gemaakt op de locatie WESTUS.

$rg = @{
    Name = 'myAVNMResourceGroup'
    Location = 'WestUS'
}
New-AzResourceGroup @rg

Drie virtuele netwerken maken

Maak drie virtuele netwerken met New-AzVirtualNetwork. In dit voorbeeld worden virtuele netwerken met de naam VNetA, VNetB en VNetC gemaakt op de locatie VS - west. Als u al virtuele netwerken hebt met wie u een mesh-netwerk wilt maken, kunt u naar de volgende sectie gaan.

$vnetA = @{
    Name = 'VNetA'
    ResourceGroupName = 'myAVNMResourceGroup'
    Location = 'West US'
    AddressPrefix = '10.0.0.0/16'    
}
$virtualNetworkA = New-AzVirtualNetwork @vnetA

$vnetB = @{
    Name = 'VNetB'
    ResourceGroupName = 'myAVNMResourceGroup'
    Location = 'West US'
    AddressPrefix = '10.1.0.0/16'    
}
$virtualNetworkB = New-AzVirtualNetwork @vnetB

$vnetC = @{
    Name = 'VNetC'
    ResourceGroupName = 'myAVNMResourceGroup'
    Location = 'West US'
    AddressPrefix = '10.2.0.0/16'    
}
$virtualNetworkC = New-AzVirtualNetwork @vnetC

Een subnet toevoegen aan elk virtueel netwerk

Als u de configuratie van de virtuele netwerken wilt voltooien, voegt u aan elk netwerk een /24-subnet toe. Maak een subnetconfiguratie met de naam default met Add-AzVirtualNetworkSubnetConfig.

$subnetA = @{
    Name = 'default'
    VirtualNetwork = $virtualNetworkA
    AddressPrefix = '10.0.0.0/24'
}
$subnetConfigA = Add-AzVirtualNetworkSubnetConfig @subnetA
$virtualnetworkA | Set-AzVirtualNetwork

$subnetB = @{
    Name = 'default'
    VirtualNetwork = $virtualNetworkB
    AddressPrefix = '10.0.0.0/24'
}
$subnetConfigC = Add-AzVirtualNetworkSubnetConfig @subnetB
$virtualnetworkB | Set-AzVirtualNetwork

$subnetC = @{
    Name = 'default'
    VirtualNetwork = $virtualNetworkC
    AddressPrefix = '10.0.0.0/24'
}
$subnetConfigC = Add-AzVirtualNetworkSubnetConfig @subnetC
$virtualnetworkC | Set-AzVirtualNetwork

Een netwerkgroep maken

Statisch lidmaatschap

  1. Maak een statisch virtueel netwerklid met New-AzNetworkManagerGroupMembersItem.

    $member = New-AzNetworkManagerGroupMembersItem –ResourceId "/subscriptions/abcdef12-3456-7890-abcd-ef1234567890/resourceGroups/myAVNMResourceGroup/providers/Microsoft.Network/virtualNetworks/VNetA"
    
  2. Voeg het statische lid toe aan de groep statisch lidmaatschap met de volgende opdrachten:

    [System.Collections.Generic.List[Microsoft.Azure.Commands.Network.Models.NetworkManager.PSNetworkManagerGroupMembersItem]]$groupMembers = @()  
    $groupMembers.Add($member)
    

Dynamisch lidmaatschap

  1. Definieer de voorwaardelijke instructie en sla deze op in een variabele:

    $conditionalMembership = '{ 
        "allof":[ 
            { 
            "field": "name", 
            "contains": "VNet" 
            } 
        ] 
    }' 
    
  2. Maak de netwerkgroep met behulp van de voorwaardelijke instructie die in de laatste stap is gedefinieerd met New-AzNetworkManagerGroup.

    $ng = @{
        Name = 'myNetworkGroup'
        ResourceGroupName = 'myAVNMResourceGroup'
        GroupMember = $groupMembers
        ConditionalMembership = $conditionalMembership
        NetworkManagerName = 'myAVNM'
        MemberType = 'Microsoft.Network/VirtualNetwork'
    }
    $networkgroup = New-AzNetworkManagerGroup @ng
    

Een configuratie maken

  1. Maak een item voor de connectiviteitsgroep om een netwerkgroep aan toe te voegen met New-AzNetworkManagerConnectivityGroupItem.

    $gi = @{
        NetworkGroupId = $networkgroup.Id
    }
    $groupItem = New-AzNetworkManagerConnectivityGroupItem @gi
    
  2. Maak een configuratiegroep en voeg het groepsitem uit de vorige stap toe.

    [System.Collections.Generic.List[Microsoft.Azure.Commands.Network.Models.PSNetworkManagerConnectivityGroupItem]]$configGroup = @()
    $configGroup.Add($groupItem)
    
  3. Maak de connectiviteitsconfiguratie met New-AzNetworkManagerConnectivityConfiguration.

    $config = @{
        Name = 'connectivityconfig'
        ResourceGroupName = 'myAVNMResourceGroup'
        NetworkManagerName = 'myAVNM'
        ConnectivityTopology = 'Mesh'
        AppliesToGroup = $configGroup
    }
    $connectivityconfig = New-AzNetworkManagerConnectivityConfiguration @config
    

Implementaties implementeren

Implementeer de configuratie naar de doelregio's met Deploy-AzNetworkManagerCommit.

[System.Collections.Generic.List[string]]$configIds = @()  
$configIds.add($connectivityconfig.id) 
[System.Collections.Generic.List[string]]$target = @()   
$target.Add("westus")     

$deployment = @{
    Name = 'myAVNM'
    ResourceGroupName = 'myAVNMResourceGroup'
    ConfigurationId = $configIds
    TargetLocation = $target
    CommitType = 'Connectivity'
}
Deploy-AzNetworkManagerCommit @deployment 

Resources opschonen

Als u Azure Virtual Network Manager niet meer nodig hebt, moet u ervoor zorgen dat alle volgende items waar zijn voordat u de resource kunt verwijderen:

  • Er zijn geen implementaties van configuraties in elke regio.
  • Alle configuraties zijn verwijderd.
  • Alle netwerkgroepen zijn verwijderd.
  1. Verwijder de connectiviteitsimplementatie door een lege configuratie te implementeren met Deploy-AzNetworkManagerCommit.

    [System.Collections.Generic.List[string]]$configIds = @()
    [System.Collections.Generic.List[string]]$target = @()   
    $target.Add("westus")     
    $removedeployment = @{
        Name = 'myAVNM'
        ResourceGroupName = 'myAVNMResourceGroup'
        ConfigurationId = $configIds
        Target = $target
        CommitType = 'Connectivity'
    }
    Deploy-AzNetworkManagerCommit @removedeployment
    
  2. Verwijder de connectiviteitsconfiguratie met Remove-AzNetworkManagerConnectivityConfiguration

    $removeconfig = @{
        Name = 'connectivityconfig'
        ResourceGroupName = 'myAVNMResourceGroup'
        NetworkManagerName = 'myAVNM'
    }
    Remove-AzNetworkManagerConnectivityConfiguration @removeconfig   
    
  3. Verwijder de netwerkgroep met Remove-AzNetworkManagerGroup.

    $removegroup = @{
        Name = 'myNetworkGroup'
        ResourceGroupName = 'myAVNMResourceGroup'
        NetworkManagerName = 'myAVNM'
    }
    Remove-AzNetworkManagerGroup @removegroup
    
  4. Verwijder het netwerkbeheer-exemplaar met Remove-AzNetworkManager.

    $removenetworkmanager = @{
        Name = 'myAVNM'
        ResourceGroupName = 'myAVNMResourceGroup'
    }
    Remove-AzNetworkManager @removenetworkmanager
    
  5. Als u de gemaakte resource niet meer nodig hebt, verwijdert u de resourcegroep met Remove-AzResourceGroup.

    Remove-AzResourceGroup -Name 'myAVNMResourceGroup'
    

Volgende stappen

Nadat u Azure Virtual Network Manager hebt gemaakt, gaat u verder met informatie over het blokkeren van netwerkverkeer met behulp van de configuratie van de beveiligingsbeheerder: