Rövid útmutató: Virtuális hálózat létrehozása az Azure PowerShell használatával

Ez a rövid útmutató bemutatja, hogyan hozhat létre virtuális hálózatot az Azure PowerShell használatával. Ezután két virtuális gépet (virtuális gépet) hoz létre a hálózaton, biztonságosan csatlakozik a virtuális gépekhez az internetről, és privát kommunikációt indít el a virtuális gépek között.

A virtuális hálózat az Azure-beli magánhálózatok alapvető építőeleme. Az Azure Virtual Network lehetővé teszi, hogy az Azure-erőforrások, például a virtuális gépek biztonságosan kommunikáljanak egymással és az internettel.

A virtuális hálózat rövid útmutatójában létrehozott erőforrások diagramja.

Előfeltételek

  • Egy Azure-fiók, aktív előfizetéssel. Ingyenesen létrehozhat fiókot.

  • Azure Cloud Shell vagy Azure PowerShell.

    A rövid útmutató lépései interaktívan futtatják az Azure PowerShell-parancsmagokat az Azure Cloud Shellben. A Cloud Shell parancsainak futtatásához válassza a Kódblokk jobb felső sarkában található Open CloudShell lehetőséget . Válassza a Másolás lehetőséget a kód másolásához, majd illessze be a Cloud Shellbe a futtatáshoz. A Cloud Shellt az Azure Portalon is futtathatja.

    Az Azure PowerShellt helyileg is telepítheti a parancsmagok futtatásához. A cikkben ismertetett lépésekhez az Azure PowerShell-modul 5.4.1-es vagy újabb verziója szükséges. Futtassa Get-Module -ListAvailable Az a telepített verziót. Ha frissítenie kell, tekintse meg az Azure PowerShell-modul frissítését.

    Ha helyileg futtatja a PowerShellt, futtassa Connect-AzAccount az Azure-hoz való csatlakozást.

Erőforráscsoport létrehozása

A New-AzResourceGroup használatával hozzon létre egy erőforráscsoportot a virtuális hálózat üzemeltetéséhez. Futtassa a következő kódot egy test-rg nevű erőforráscsoport létrehozásához az Eastus2 Azure-régióban:

$rg = @{
    Name = 'test-rg'
    Location = 'eastus2'
}
New-AzResourceGroup @rg

Virtuális hálózat létrehozása

  1. A New-AzVirtualNetwork használatával hozzon létre egy vnet-1 nevű virtuális hálózatot a 10.0.0.0/16 IP-címelőtaggal a test-rg erőforráscsoportban és eastus2 helyen:

    $vnet = @{
        Name = 'vnet-1'
        ResourceGroupName = 'test-rg'
        Location = 'eastus2'
        AddressPrefix = '10.0.0.0/16'
    }
    $virtualNetwork = New-AzVirtualNetwork @vnet
    
  2. Az Azure erőforrásokat helyez üzembe egy virtuális hálózaton belüli alhálózaton. Az Add-AzVirtualNetworkSubnetConfig használatával hozzon létre egy alhálózat-konfigurációt az 1.0.0.0/24 címelőtaggal:

    $subnet = @{
        Name = 'subnet-1'
        VirtualNetwork = $virtualNetwork
        AddressPrefix = '10.0.0.0/24'
    }
    $subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
    
  3. Társítsa az alhálózat konfigurációját a virtuális hálózathoz a Set-AzVirtualNetwork használatával:

    $virtualNetwork | Set-AzVirtualNetwork
    

Az Azure Bastion üzembe helyezése

Az Azure Bastion a böngésző használatával csatlakozik a virtuális hálózat virtuális gépeihez a Secure Shell (SSH) vagy a Távoli asztali protokoll (RDP) használatával a privát IP-címek használatával. A virtuális gépeknek nincs szükségük nyilvános IP-címekre, ügyfélszoftverekre vagy speciális konfigurációra. További információ a Bastionról: Mi az az Azure Bastion?.

Az óránkénti díjszabás a Bastion üzembe helyezésének pillanatától kezdődik, a kimenő adathasználattól függetlenül. További információ: Díjszabás és termékváltozatok. Ha a Bastiont egy oktatóanyag vagy teszt részeként helyezi üzembe, javasoljuk, hogy a használat befejezése után törölje ezt az erőforrást.

  1. Konfiguráljon egy Bastion-alhálózatot a virtuális hálózathoz. Ez az alhálózat kizárólag Bastion-erőforrások számára van fenntartva, és AzureBastionSubnetnek kell lennie.

    $subnet = @{
        Name = 'AzureBastionSubnet'
        VirtualNetwork = $virtualNetwork
        AddressPrefix = '10.0.1.0/26'
    }
    $subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
    
  2. A konfiguráció beállítása:

    $virtualNetwork | Set-AzVirtualNetwork
    
  3. Hozzon létre egy nyilvános IP-címet a Bastion számára. A Bastion-gazdagép a nyilvános IP-cím használatával éri el az SSH-t és az RDP-t a 443-as porton keresztül.

    $ip = @{
            ResourceGroupName = 'test-rg'
            Name = 'public-ip'
            Location = 'eastus2'
            AllocationMethod = 'Static'
            Sku = 'Standard'
            Zone = 1,2,3
    }
    New-AzPublicIpAddress @ip
    
  4. A New-AzBastion paranccsal hozzon létre egy új Standard SKU Bastion-gazdagépet az AzureBastionSubnetben:

    $bastion = @{
        Name = 'bastion'
        ResourceGroupName = 'test-rg'
        PublicIpAddressRgName = 'test-rg'
        PublicIpAddressName = 'public-ip'
        VirtualNetworkRgName = 'test-rg'
        VirtualNetworkName = 'vnet-1'
        Sku = 'Basic'
    }
    New-AzBastion @bastion
    

A Bastion-erőforrások üzembe helyezése körülbelül 10 percet vesz igénybe. A következő szakaszban virtuális gépeket hozhat létre, miközben a Bastion üzembe helyezi a virtuális hálózatát.

Virtuális gépek létrehozása

A New-AzVM használatával hozzon létre két vm-1 és vm-2 nevű virtuális gépet a virtuális hálózat 1. alhálózatában. Amikor a rendszer hitelesítő adatokat kér, adja meg a virtuális gépekhez tartozó felhasználóneveket és jelszavakat.

  1. Az első virtuális gép létrehozásához használja a következő kódot:

    # Set the administrator and password for the VM. ##
    $cred = Get-Credential
    
    ## Place the virtual network into a variable. ##
    $vnet = Get-AzVirtualNetwork -Name 'vnet-1' -ResourceGroupName 'test-rg'
    
    ## Create a network interface for the VM. ##
    $nic = @{
        Name = "nic-1"
        ResourceGroupName = 'test-rg'
        Location = 'eastus2'
        Subnet = $vnet.Subnets[0]
    }
    $nicVM = New-AzNetworkInterface @nic
    
    ## Create a virtual machine configuration. ##
    $vmsz = @{
        VMName = "vm-1"
        VMSize = 'Standard_DS1_v2'  
    }
    $vmos = @{
        ComputerName = "vm-1"
        Credential = $cred
    }
    $vmimage = @{
        PublisherName = 'Canonical'
        Offer = '0001-com-ubuntu-server-jammy'
        Skus = '22_04-lts-gen2'
        Version = 'latest'    
    }
    $vmConfig = New-AzVMConfig @vmsz `
        | Set-AzVMOperatingSystem @vmos -Linux `
        | Set-AzVMSourceImage @vmimage `
        | Add-AzVMNetworkInterface -Id $nicVM.Id
    
    ## Create the VM. ##
    $vm = @{
        ResourceGroupName = 'test-rg'
        Location = 'eastus2'
        VM = $vmConfig
    }
    New-AzVM @vm
    
  2. A második virtuális gép létrehozásához használja a következő kódot:

    # Set the administrator and password for the VM. ##
    $cred = Get-Credential
    
    ## Place the virtual network into a variable. ##
    $vnet = Get-AzVirtualNetwork -Name 'vnet-1' -ResourceGroupName 'test-rg'
    
    ## Create a network interface for the VM. ##
    $nic = @{
        Name = "nic-2"
        ResourceGroupName = 'test-rg'
        Location = 'eastus2'
        Subnet = $vnet.Subnets[0]
    }
    $nicVM = New-AzNetworkInterface @nic
    
    ## Create a virtual machine configuration. ##
    $vmsz = @{
        VMName = "vm-2"
        VMSize = 'Standard_DS1_v2'  
    }
    $vmos = @{
        ComputerName = "vm-2"
        Credential = $cred
    }
    $vmimage = @{
        PublisherName = 'Canonical'
        Offer = '0001-com-ubuntu-server-jammy'
        Skus = '22_04-lts-gen2'
        Version = 'latest'    
    }
    $vmConfig = New-AzVMConfig @vmsz `
        | Set-AzVMOperatingSystem @vmos -Linux `
        | Set-AzVMSourceImage @vmimage `
        | Add-AzVMNetworkInterface -Id $nicVM.Id
    
    ## Create the VM. ##
    $vm = @{
        ResourceGroupName = 'test-rg'
        Location = 'eastus2'
        VM = $vmConfig
    }
    New-AzVM @vm
    

Tipp.

Ezzel a -AsJob beállítással virtuális gépet hozhat létre a háttérben, miközben más feladatokat folytat. Futtassa például a következőt New-AzVM @vm1 -AsJob: Amikor az Azure elkezdi létrehozni a virtuális gépet a háttérben, a következő kimenethez hasonló eredményt kap:

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
1      Long Running... AzureLongRun... Running       True            localhost            New-AzVM

Az Azure néhány percet vesz igénybe a virtuális gépek létrehozásához. Amikor az Azure befejezi a virtuális gépek létrehozását, a kimenetet a PowerShell-be adja vissza.

Feljegyzés

A Bastion-gazdagéppel rendelkező virtuális hálózatok virtuális gépeinek nincs szükségük nyilvános IP-címekre. A Bastion biztosítja a nyilvános IP-címet, a virtuális gépek pedig privát IP-címeket használnak a hálózaton belüli kommunikációhoz. A nyilvános IP-címeket a Bastion által üzemeltetett virtuális hálózatokon lévő virtuális gépekről is eltávolíthatja. További információ: Nyilvános IP-cím társítása azure-beli virtuális gépről.

Feljegyzés

Az Azure alapértelmezett kimenő hozzáférési IP-címet biztosít azokhoz a virtuális gépekhez, amelyek vagy nincsenek hozzárendelve nyilvános IP-címhez, vagy egy belső alapszintű Azure-terheléselosztó háttérkészletében találhatók. Az alapértelmezett kimenő hozzáférési IP-mechanizmus olyan kimenő IP-címet biztosít, amely nem konfigurálható.

Az alapértelmezett kimenő hozzáférési IP-cím le van tiltva az alábbi események egyike esetén:

  • A virtuális géphez nyilvános IP-cím van hozzárendelve.
  • A virtuális gép egy standard terheléselosztó háttérkészletébe kerül kimenő szabályokkal vagy anélkül.
  • Egy Azure NAT Gateway-erőforrás van hozzárendelve a virtuális gép alhálózatához.

A virtuálisgép-méretezési csoportok rugalmas vezénylési módban történő használatával létrehozott virtuális gépek nem rendelkeznek alapértelmezett kimenő hozzáféréssel.

Az Azure-beli kimenő kapcsolatokról további információt az Alapértelmezett kimenő hozzáférés az Azure-ban és a Kimenő kapcsolatok forráshálózati címfordításának (SNAT) használata című témakörben talál.

Csatlakozás virtuális géphez

  1. A portálon keresse meg és válassza ki a virtuális gépeket.

  2. A Virtuális gépek lapon válassza a vm-1 elemet.

  3. Az 1. virtuális gép áttekintésiadatai között válassza a Csatlakozás.

  4. A Csatlakozás virtuális gép lapján válassza a Bastion lapot.

  5. Válassza a Bastion használata lehetőséget.

  6. Adja meg a virtuális gép létrehozásakor létrehozott felhasználónevet és jelszót, majd válassza a Csatlakozás.

Virtuális gépek közötti kommunikáció indítása

  1. A vm-1 bash parancssorában adja meg a következőtping -c 4 vm-2: .

    A következő üzenethez hasonló választ kap:

    azureuser@vm-1:~$ ping -c 4 vm-2
    PING vm-2.3bnkevn3313ujpr5l1kqop4n4d.cx.internal.cloudapp.net (10.0.0.5) 56(84) bytes of data.
    64 bytes from vm-2.internal.cloudapp.net (10.0.0.5): icmp_seq=1 ttl=64 time=1.83 ms
    64 bytes from vm-2.internal.cloudapp.net (10.0.0.5): icmp_seq=2 ttl=64 time=0.987 ms
    64 bytes from vm-2.internal.cloudapp.net (10.0.0.5): icmp_seq=3 ttl=64 time=0.864 ms
    64 bytes from vm-2.internal.cloudapp.net (10.0.0.5): icmp_seq=4 ttl=64 time=0.890 ms
    
  2. Zárja be a Bastion-kapcsolatot a vm-1-hez.

  3. Ismételje meg a Csatlakozás lépéseit egy virtuális gépre a vm-2-hez való csatlakozáshoz.

  4. A 2. vm-hez tartozó bash-parancssorba írja be a következőtping -c 4 vm-1: .

    A következő üzenethez hasonló választ kap:

    azureuser@vm-2:~$ ping -c 4 vm-1
    PING vm-1.3bnkevn3313ujpr5l1kqop4n4d.cx.internal.cloudapp.net (10.0.0.4) 56(84) bytes of data.
    64 bytes from vm-1.internal.cloudapp.net (10.0.0.4): icmp_seq=1 ttl=64 time=0.695 ms
    64 bytes from vm-1.internal.cloudapp.net (10.0.0.4): icmp_seq=2 ttl=64 time=0.896 ms
    64 bytes from vm-1.internal.cloudapp.net (10.0.0.4): icmp_seq=3 ttl=64 time=3.43 ms
    64 bytes from vm-1.internal.cloudapp.net (10.0.0.4): icmp_seq=4 ttl=64 time=0.780 ms
    
  5. Zárja be a Bastion-kapcsolatot a vm-2-hez.

Az erőforrások eltávolítása

Amikor befejezi a virtuális hálózatot és a virtuális gépeket, a Remove-AzResourceGroup használatával távolítsa el az erőforráscsoportot és annak összes erőforrását:

Remove-AzResourceGroup -Name 'test-rg' -Force

Következő lépések

Ebben a rövid útmutatóban létrehozott egy két virtuális gépet tartalmazó alapértelmezett alhálózattal rendelkező virtuális hálózatot. Üzembe helyezte az Azure Bastiont, és arra használta, hogy csatlakozzon a virtuális gépekhez, és biztonságosan kommunikáljon a virtuális gépek között. A virtuális hálózati beállításokról további információt a virtuális hálózat létrehozása, módosítása vagy törlése című témakörben talál.