Aracılığıyla paylaş


Hızlı Başlangıç: Azure PowerShell kullanarak Azure Sanal Ağ Manager ile ağ topolojisi oluşturma

Sanal ağlarınızın bağlantısını yönetmek için Azure PowerShell'i kullanarak Azure Sanal Ağ Manager'ı kullanmaya başlayın.

Bu hızlı başlangıçta üç sanal ağ dağıtacak ve ağ topolojisi oluşturmak için Azure Sanal Ağ Manager'ı kullanacaksınız. Ardından bağlantı yapılandırmasının uygulandığını doğrularsınız.

Azure sanal ağ yöneticisi ile bir ağ sanal ağ topolojisi için dağıtılan kaynakların diyagramı.

Önkoşullar

  • Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
  • Bu hızlı başlangıcı Azure Cloud Shell aracılığıyla değil PowerShell'i yerel olarak kullanarak gerçekleştirin. Azure Cloud Shell'deki Az.Network sürümü şu anda Azure Sanal Ağ Manager cmdlet'lerini desteklememektedir.
  • Dinamik ağ gruplarını değiştirmek için size yalnızca Azure RBAC rol ataması aracılığıyla erişim verilmelidir. Klasik Yönetici/eski yetkilendirme desteklenmez.

Azure hesabınızda oturum açın ve aboneliğinizi seçin

Yapılandırmanıza başlamak için Azure hesabınızda oturum açın:

Connect-AzAccount

Ardından aboneliğinize bağlanın:

Set-AzContext -Subscription <subscription name or id>

Azure PowerShell modülünü yükleme

Şu komutu kullanarak en son Az.Network Azure PowerShell modülünü yükleyin:

 Install-Module -Name Az.Network -RequiredVersion 5.3.0

Kaynak grubu oluşturma

Bu görevde, ağ yöneticisi örneğini barındırmak için bir kaynak grubu oluşturun. New-AzResourceGroup kullanarak bir kaynak grubu oluşturun. Bu örnek, Batı ABD 2 bölgesinde resource-group adlı bir kaynak grubu oluşturur:

# Create a resource group
$location = "westus2"
$rg = @{
    Name = 'resource-group'
    Location = $location
}
New-AzResourceGroup @rg

Kapsamı ve erişim türünü tanımlama

Bu görevde, New-AzNetworkManagerScope kullanarak Azure Sanal Ağ Manager örneğinin kapsamını ve erişim türünü tanımlayın. Bu örnek, tek bir aboneliğe sahip bir kapsamı tanımlar ve erişim türünü Bağlantı olarak ayarlar. değerini Azure Sanal Ağ Yöneticisi aracılığıyla yönetmek istediğiniz aboneliğin kimliğiyle değiştirin<subscription_id>.

$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

Sanal Ağ Yöneticisi örneği oluşturma

Bu görevde, New-AzNetworkManager kullanarak bir Sanal Ağ Yöneticisi örneği oluşturun. Bu örnek, (ABD) Batı ABD 2 bölgesinde network-manager adlı bir örnek oluşturur:

$avnm = @{
    Name = 'network-manager'
    ResourceGroupName = $rg.Name
    NetworkManagerScope = $scope
    NetworkManagerScopeAccess = $access
    Location = $location
}
$networkmanager = New-AzNetworkManager @avnm

Üç sanal ağ oluşturma

Bu görevde, New-AzVirtualNetwork kullanarak üç sanal ağ oluşturun. Bu örnek, (ABD) Batı ABD 2 bölgesinde vnet-00, vnet-01 ve vnet-02 adlı sanal ağlar oluşturur. Ağ ağı oluşturmak istediğiniz sanal ağlarınız zaten varsa sonraki bölüme atlayabilirsiniz.

$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

Her sanal ağa alt ağ ekleme

Bu görevde, Add-AzVirtualNetworkSubnetConfig komutunu kullanarak alt ağ adresi ön eki /24 olan default adlı bir alt ağ yapılandırması oluşturun. Ardından, alt ağ yapılandırmasını sanal ağa uygulamak için Set-AzVirtualNetwork komutunu kullanın.

$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

Ağ grubu oluşturma

Sanal Ağ Yöneticisi, yapılandırmaları ağ gruplarına yerleştirerek sanal ağ gruplarına uygular. New-AzNetworkManagerGroup kullanarak bir ağ grubu oluşturun. Bu örnek, (ABD) Batı ABD 2 bölgesinde network-group adlı bir ağ grubu oluşturur:

$ng = @{
        Name = 'network-group'
        ResourceGroupName = $rg.Name
        NetworkManagerName = $networkManager.Name
    }
    $ng = New-AzNetworkManagerGroup @ng

Mesh yapılandırması için üyelik tanımlama

Bu görevde, New-AzNetworkManagerStaticMember komutunu kullanarak ağ grubuna vnet-00 ve vnet-01 statik üyelerini eklersiniz.

Statik üyelerin kapsamı ağ grubuna göre belirlenmiş benzersiz bir ada sahip olmalıdır. Sanal ağ kimliğinin tutarlı bir karması kullanmanızı öneririz. Bu yaklaşım, Azure Resource Manager şablonunun uniqueString() uygulamasını kullanır.

    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

Bağlantı yapılandırması oluşturma

Bu görevde, New-AzNetworkManagerConnectivityConfiguration ve New-AzNetworkManagerConnectivityGroupItem kullanarak ağ grubu ağ grubuyla bir bağlantı yapılandırması oluşturursunuz:

  1. Bağlantı grubu öğesi oluşturma:

    $gi = @{
        NetworkGroupId = $ng.Id
    }
    $groupItem = New-AzNetworkManagerConnectivityGroupItem @gi
    
  2. Bir yapılandırma grubu oluşturun ve buna bir bağlantı grubu öğesi ekleyin:

    [System.Collections.Generic.List[Microsoft.Azure.Commands.Network.Models.NetworkManager.PSNetworkManagerConnectivityGroupItem]]$configGroup = @()
    $configGroup.Add($groupItem)
    
  3. Yapılandırma grubuyla bağlantı yapılandırmasını oluşturun:

    $config = @{
        Name = 'connectivity-configuration'
        ResourceGroupName = $rg.Name
        NetworkManagerName = $networkManager.Name
        ConnectivityTopology = 'Mesh'
        AppliesToGroup = $configGroup
    }
    $connectivityconfig = New-AzNetworkManagerConnectivityConfiguration @config
        ```                        
    
    

Dağıtımı işleme

kullanarak yapılandırmayı hedef bölgelere işleyin Deploy-AzNetworkManagerCommit. Bu adım, yapılandırmanızın etkin bir şekilde başlamasını tetikler.

[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

Kaynakları temizleme

Azure Sanal Ağ Manager örneğine ve kaynaklarına artık ihtiyacınız yoksa, kaynakları içeren kaynak grubunu silerek bunları silmek için şu adımları izleyin:

  1. Remove-AzResourceGroup komutunu kullanarak kaynak grubunu silin:

    Remove-AzResourceGroup -Name $rg.Name -Force
    

Sonraki adımlar

Bu adımda, bir güvenlik yöneticisi yapılandırması kullanarak ağ trafiğini engellemeyi öğrenin: