Créer une machine virtuelle avec une adresse IP privée statique à l’aide de Azure PowerShell

Une adresse IP privée est automatiquement assignée à une machine virtuelle (VM) Azure, dans une plage que vous définissez. Cette plage est basée sur le sous-réseau dans lequel la machine virtuelle est déployée. Cette adresse est conservée jusqu’à ce que la machine virtuelle soit supprimée. Azure attribue dynamiquement l’adresse IP privée disponible suivante du sous-réseau dans lequel vous créez une machine virtuelle. Assignez une adresse IP statique à la machine virtuelle si vous souhaitez assigner une adresse IP spécifique du sous-réseau.

Prérequis

Si vous choisissez d’installer et d’utiliser PowerShell en local, vous devez exécuter le module Azure PowerShell version 5.4.1 ou ultérieure pour les besoins de cet article. Exécutez Get-Module -ListAvailable Az pour rechercher la version installée. Si vous devez effectuer une mise à niveau, consultez Installer le module Azure PowerShell. Si vous exécutez PowerShell en local, vous devez également exécuter Connect-AzAccount pour créer une connexion avec Azure.

Créer un groupe de ressources

Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées.

Avec la commande New-AzResourceGroup, créez un groupe de ressources nommé myResourceGroup dans l’emplacement eastus2.

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

Création d'une machine virtuelle

Créez une machine virtuelle avec New-AzVM.

La commande suivante crée une machine virtuelle Windows Server 2016. Quand vous y êtes invité, indiquez le nom d’utilisateur et le mot de passe à utiliser comme informations d’identification pour la machine virtuelle :

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

Passer une adresse IP privée en statique

Dans cette section, vous allez faire passer l’adresse IP privée de dynamique à statique pour la machine virtuelle que vous avez créée précédemment.

Utilisez AzVirtualNetwork pour placer la configuration du réseau virtuel dans une variable. Utilisez AzVirtualNetworkSubnetConfig pour placer la configuration de sous-réseau dans une variable. Utilisez AzNetworkInterface pour obtenir la configuration de l’interface réseau et la placer dans une variable. Utilisez Set-AzNetworkInterfaceIpConfig pour définir la configuration de l’interface réseau. Enfin, utilisez Set-AzNetworkInterface pour définir la configuration de la machine virtuelle.

La commande suivante remplace l’adresse IP privée de la machine virtuelle par une adresse statique :

## 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

Avertissement

À partir du système d’exploitation d’une machine virtuelle, vous ne devez pas affecter de manière statique l’adresse IP privée qui est affectée à la machine virtuelle Azure. N’effectuez l’affectation statique d’une adresse IP privée qu’en cas de nécessité, par exemple quand vous affectez de nombreuses adresses IP à des machines virtuelles.

Si vous définissez manuellement l’adresse IP privée dans le système d’exploitation, assurez-vous qu’elle correspond à l’adresse IP privée affectée à l’interface réseau Azure. Sinon, vous risquez de perdre la connectivité à la machine virtuelle. En savoir plus sur les paramètres d’adresse IP privée.

Nettoyer les ressources

Quand vous n’avez plus besoin d’un groupe de ressources, vous pouvez utiliser Remove-AzResourceGroup pour le supprimer ainsi que toutes les ressources qu’il contient :

Remove-AzResourceGroup -Name myResourceGroup -Force

Étapes suivantes