Creare una macchina virtuale con un indirizzo IP privato statico usando Azure PowerShell

Una macchina virtuale viene assegnata automaticamente a un indirizzo IP privato da un intervallo specificato. Questo intervallo si basa sulla subnet in cui viene distribuita la macchina virtuale. La macchina virtuale mantiene l'indirizzo finché non viene eliminata la macchina virtuale. Azure assegna dinamicamente l'indirizzo IP privato successivo disponibile dalla subnet in cui si crea una macchina virtuale. Assegnare un indirizzo IP statico alla macchina virtuale se si vuole un indirizzo IP specifico nella subnet.

Prerequisiti

Se si sceglie di installare e usare PowerShell in locale, per questo articolo è necessario il modulo Azure PowerShell 5.4.1 o versione successiva. Eseguire Get-Module -ListAvailable Az per trovare la versione installata. Se è necessario eseguire l'aggiornamento, vedere Installare e configurare Azure PowerShell. Se si esegue PowerShell in locale, è anche necessario eseguire Connect-AzAccount per creare una connessione con Azure.

Creare un gruppo di risorse

Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite.

Creare un gruppo di risorse con New-AzResourceGroup denominato myResourceGroup nella posizione eastus2 .

## Create resource group. ##
$rg =@{
    Name = 'myResourceGroup'
    Location = 'eastus2'
}
New-AzResourceGroup @rg

Creare una macchina virtuale

Creare una macchina virtuale con New-AzVM.

Il comando seguente crea una macchina virtuale Windows Server. Quando richiesto, specificare un nome utente e una password da usare come credenziali per la macchina virtuale:

## Create virtual machine. ##
$vm = @{
    ResourceGroupName = 'myResourceGroup'
    Location = 'East US 2'
    Name = 'myVM'
    PublicIpAddressName = 'myPublicIP'
}
New-AzVM @vm

Modificare l'indirizzo IP privato in statico

In questa sezione verrà modificato l'indirizzo IP privato da dinamico a statico per la macchina virtuale creata in precedenza.

Usare Get-AzVirtualNetwork per inserire la configurazione della rete virtuale in una variabile. Usare Get-AzVirtualNetworkSubnetConfig per inserire la configurazione della subnet in una variabile. Usare Get-AzNetworkInterface per ottenere la configurazione dell'interfaccia di rete e inserire in una variabile. Usare Set-AzNetworkInterfaceIpConfig per impostare la configurazione dell'interfaccia di rete. Infine, usare Set-AzNetworkInterface per impostare la configurazione per la macchina virtuale.

Il comando seguente modifica l'indirizzo IP privato della macchina virtuale in statico:

## Place virtual network configuration into a variable. ##
$net = @{
    Name = 'myVM'
    ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net

## Place subnet configuration into a variable. ##
$sub = @{
    Name = 'myVM'
    VirtualNetwork = $vnet
}
$subnet = Get-AzVirtualNetworkSubnetConfig @sub

## Get name of network interface and place into a variable ##
$int1 = @{
    Name = 'myVM'
    ResourceGroupName = 'myResourceGroup'
}
$vm = Get-AzVM @int1

## Place network interface configuration into a variable. ##
$nic = Get-AzNetworkInterface -ResourceId $vm.NetworkProfile.NetworkInterfaces.Id

## Set interface configuration. ##
$config =@{
    Name = 'myVM'
    PrivateIpAddress = '192.168.1.4'
    Subnet = $subnet
}
$nic | Set-AzNetworkInterfaceIpConfig @config -Primary

## Save interface configuration. ##
$nic | Set-AzNetworkInterface

Avviso

Dall'interno del sistema operativo di una macchina virtuale, non è consigliabile assegnare staticamente l'IP privato assegnato alla macchina virtuale di Azure. Eseguire solo l'assegnazione statica di un INDIRIZZO IP privato quando è necessario, ad esempio quando si assegnano molti indirizzi IP alle macchine virtuali.

Se si imposta manualmente l'indirizzo IP privato all'interno del sistema operativo, assicurarsi che corrisponda all'indirizzo IP privato assegnato all'interfaccia di rete di Azure. In caso contrario, è possibile perdere la connettività alla macchina virtuale. Altre informazioni sulle impostazioni dell'indirizzo IP privato.

Pulire le risorse

Quando il gruppo di risorse e tutte le risorse in esso contenute non sono più necessari, è possibile usare Remove-AzResourceGroup per rimuoverli:

Remove-AzResourceGroup -Name myResourceGroup -Force

Passaggi successivi