Quickstart: Een mesh-netwerktopologie maken met Azure Virtual Network Manager met behulp van Azure PowerShell
Ga aan de slag met Azure Virtual Network Manager met behulp van Azure PowerShell om 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. Vervolgens controleert u of de connectiviteitsconfiguratie is toegepast.
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- Voer deze quickstart lokaal uit met Behulp van PowerShell, niet via Azure Cloud Shell. De versie van Az.Network in Azure Cloud Shell biedt momenteel geen ondersteuning voor de Azure Virtual Network Manager-cmdlets.
- Als u dynamische netwerkgroepen wilt wijzigen, moet u alleen toegang krijgen via Azure RBAC-roltoewijzing . Klassieke beheerder/verouderde autorisatie wordt niet ondersteund.
Aanmelden bij uw Azure-account en uw abonnement selecteren
Meld u aan bij uw Azure-account om uw configuratie te starten:
Connect-AzAccount
Maak vervolgens verbinding met uw abonnement:
Set-AzContext -Subscription <subscription name or id>
De Azure PowerShell-module installeren
Installeer de nieuwste Az.Network Azure PowerShell-module met behulp van deze opdracht:
Install-Module -Name Az.Network -RequiredVersion 5.3.0
Een brongroep maken
In deze taak maakt u een resourcegroep voor het hosten van een netwerkbeheerexemplaren. Maak een resourcegroep met behulp van New-AzResourceGroup. In dit voorbeeld wordt een resourcegroep met de naam resourcegroep gemaakt in de regio VS - west 2 :
# Create a resource group
$location = "westus2"
$rg = @{
Name = 'resource-group'
Location = $location
}
New-AzResourceGroup @rg
Het bereik en het toegangstype definiëren
In deze taak definieert u het bereik en het toegangstype voor het Azure Virtual Network Manager-exemplaar met behulp van New-AzNetworkManagerScope. In dit voorbeeld wordt een bereik gedefinieerd met één abonnement en wordt het toegangstype ingesteld op Connectiviteit. Vervang door <subscription_id>
de id van het abonnement dat u wilt beheren via Azure Virtual Network Manager.
$subID= "<subscription_id>"
[System.Collections.Generic.List[string]]$subGroup = @()
$subGroup.Add("/subscriptions/$subID")
[System.Collections.Generic.List[String]]$access = @()
$access.Add("Connectivity");
$scope = New-AzNetworkManagerScope -Subscription $subGroup
Een Virtual Network Manager-exemplaar maken
Maak in deze taak een Exemplaar van Virtual Network Manager met behulp van New-AzNetworkManager. In dit voorbeeld wordt een instantie met de naam netwerkbeheerder gemaakt in de regio VS - west 2 :
$avnm = @{
Name = 'network-manager'
ResourceGroupName = $rg.Name
NetworkManagerScope = $scope
NetworkManagerScopeAccess = $access
Location = $location
}
$networkmanager = New-AzNetworkManager @avnm
Drie virtuele netwerken maken
In deze taak maakt u drie virtuele netwerken met behulp van New-AzVirtualNetwork. In dit voorbeeld worden virtuele netwerken met de naam vnet-00, vnet-01 en vnet-02 gemaakt in de regio VS - west 2. Als u al virtuele netwerken hebt waarmee u een mesh-netwerk wilt maken, kunt u doorgaan naar de volgende sectie.
$vnet_00 = @{
Name = 'vnet-00'
ResourceGroupName = $rg.Name
Location = $location
AddressPrefix = '10.0.0.0/16'
}
$vnet_00 = New-AzVirtualNetwork @vnet_00
$vnet_01 = @{
Name = 'vnet-01'
ResourceGroupName = $rg.Name
Location = $location
AddressPrefix = '10.1.0.0/16'
}
$vnet_01 = New-AzVirtualNetwork @vnet_01
$vnet_02 = @{
Name = 'vnet-02'
ResourceGroupName = $rg.Name
Location = $location
AddressPrefix = '10.2.0.0/16'
}
$vnet_02 = New-AzVirtualNetwork @vnet_02
Een subnet toevoegen aan elk virtueel netwerk
In deze taak maakt u een subnetconfiguratie met de naam standaard met een subnetadresvoorvoegsel van /24 met behulp van Add-AzVirtualNetworkSubnetConfig. Gebruik Vervolgens Set-AzVirtualNetwork om de subnetconfiguratie toe te passen op het virtuele netwerk.
$subnet_vnet_00 = @{
Name = 'default'
VirtualNetwork = $vnet_00
AddressPrefix = '10.0.0.0/24'
}
$subnetConfig_vnet_00 = Add-AzVirtualNetworkSubnetConfig @subnet_vnet_00
$vnet_00 | Set-AzVirtualNetwork
$subnet_vnet_01 = @{
Name = 'default'
VirtualNetwork = $vnet_01
AddressPrefix = '10.1.0.0/24'
}
$subnetConfig_vnet_01 = Add-AzVirtualNetworkSubnetConfig @subnet_vnet_01
$vnet_01 | Set-AzVirtualNetwork
$subnet_vnet_02 = @{
Name = 'default'
VirtualNetwork = $vnet_02
AddressPrefix = '10.2.0.0/24'
}
$subnetConfig_vnet_02 = Add-AzVirtualNetworkSubnetConfig @subnet_vnet_02
$vnet_02 | Set-AzVirtualNetwork
Een netwerkgroep maken
Virtual Network Manager past configuraties toe op groepen virtuele netwerken door ze in netwerkgroepen te plaatsen. Maak een netwerkgroep met behulp van New-AzNetworkManagerGroup. In dit voorbeeld wordt een netwerkgroep met de naam netwerkgroep gemaakt in de regio VS - west 2 :
$ng = @{
Name = 'network-group'
ResourceGroupName = $rg.Name
NetworkManagerName = $networkManager.Name
}
$ng = New-AzNetworkManagerGroup @ng
Lidmaatschap definiëren voor een mesh-configuratie
In deze taak voegt u de statische leden vnet-00 en vnet-01 toe aan de netwerkgroepnetwerkgroep met behulp van New-AzNetworkManagerStaticMember.
Statische leden moeten een unieke naam hebben die is afgestemd op de netwerkgroep. U wordt aangeraden een consistente hash van de id van het virtuele netwerk te gebruiken. Deze benadering maakt gebruik van de implementatie van uniqueString()
de Azure Resource Manager-sjabloon.
function Get-UniqueString ([string]$id, $length=13)
{
$hashArray = (new-object System.Security.Cryptography.SHA512Managed).ComputeHash($id.ToCharArray())
-join ($hashArray[1..$length] | ForEach-Object { [char]($_ % 26 + [byte][char]'a') })
}
$sm_vnet_00 = @{
Name = Get-UniqueString $vnet_00.Id
ResourceGroupName = $rg.Name
NetworkGroupName = $ng.Name
NetworkManagerName = $networkManager.Name
ResourceId = $vnet_00.Id
}
$sm_vnet_00 = New-AzNetworkManagerStaticMember @sm_vnet_00
$sm_vnet_01 = @{
Name = Get-UniqueString $vnet_01.Id
ResourceGroupName = $rg.Name
NetworkGroupName = $ng.Name
NetworkManagerName = $networkManager.Name
ResourceId = $vnet_01.Id
}
$sm_vnet_01 = New-AzNetworkManagerStaticMember @sm_vnet_01
Een connectiviteitsconfiguratie maken
In deze taak maakt u een connectiviteitsconfiguratie met de netwerkgroep netwerkgroep met behulp van New-AzNetworkManagerConnectivityConfiguration en New-AzNetworkManagerConnectivityGroupItem:
Maak een connectiviteitsgroepitem:
$gi = @{ NetworkGroupId = $ng.Id } $groupItem = New-AzNetworkManagerConnectivityGroupItem @gi
Maak een configuratiegroep en voeg er een verbindingsgroepitem aan toe:
[System.Collections.Generic.List[Microsoft.Azure.Commands.Network.Models.NetworkManager.PSNetworkManagerConnectivityGroupItem]]$configGroup = @() $configGroup.Add($groupItem)
Maak de connectiviteitsconfiguratie met de configuratiegroep:
$config = @{ Name = 'connectivity-configuration' ResourceGroupName = $rg.Name NetworkManagerName = $networkManager.Name ConnectivityTopology = 'Mesh' AppliesToGroup = $configGroup } $connectivityconfig = New-AzNetworkManagerConnectivityConfiguration @config ```
Implementatie doorvoeren
Voer de configuratie door naar de doelregio's met behulp van Deploy-AzNetworkManagerCommit
. Met deze stap wordt uw configuratie geactiveerd om van kracht te worden.
[System.Collections.Generic.List[string]]$configIds = @()
$configIds.add($connectivityconfig.id)
[System.Collections.Generic.List[string]]$target = @()
$target.Add("westus2")
$deployment = @{
Name = $networkManager.Name
ResourceGroupName = $rg.Name
ConfigurationId = $configIds
TargetLocation = $target
CommitType = 'Connectivity'
}
Deploy-AzNetworkManagerCommit @deployment
Resources opschonen
Als u het Azure Virtual Network Manager-exemplaar en de bijbehorende resources niet meer nodig hebt, volgt u deze stappen om ze te verwijderen door de resourcegroep met de resources te verwijderen:
Verwijder de resourcegroep met Remove-AzResourceGroup:
Remove-AzResourceGroup -Name $rg.Name -Force
Volgende stappen
In deze stap leert u hoe u netwerkverkeer blokkeert met behulp van een configuratie van een beveiligingsbeheerder: