Comment configurer une adresse IP statique sur une VM Azure existante

Ceux ayant déjà utilisé les services IaaS de Microsoft Azure savent que jusqu’à une date récente, il n’était pas possible d’affecter une adresse IP statique à une machine virtuelle.

Dans un virtual network d’Azure (VNet), c’est la plateforme Azure qui distribue les adresses IP et les paramètres des serveurs DNS aux machines virtuelles.

Certes, cette attribution utilise un bail DHCP relativement long (une adresse IP données en 2014 a un bail jusqu’à 2150 !) mais rien ne garanti de conserver l’adresse IP en cas d’arrêt et “déprovisionning” de la machine virtuelle pendant un certain temps. Du coup, il devient possible à une autre VM d’obtenir l’adresse IP préalablement utilisée ce qui peut engendrer des problèmes.

Dans le cas de frontaux Web d’une ferme, ceci n’est pas vraiment gênant mais quand on parle d’une vraie infrastructure de serveurs Windows, il existe quelques rôles qui préfèrent avoir une adresse IP fixe comme les serveurs DNS pointant sur les contrôleurs de domaine Active Directory (en soit un DC peut être configuré en client DHCP, mais les membres du domaine doivent avoir au moins une adresse IP d’un serveur DNS pointant sur ces DC. Et comme généralement les DNS sont sur les DC..)

Bonne nouvelle, il est désormais possible d’assigner une adresse IP statique interne à une machine virtuelle dans Microsoft Azure. Ce qui va bien simplifier certaines tâches et éviter des contournements comme la création de VNet dédiés aux DC.

Voici comment faire pour affecter une adresse IP statique à une machine virtuelle exécutée dans Windows Azure

Pré requis :

Dans mon exemple, j’ai créé un VNet qui s’appelle reseau-demoR2 avec un plan d’adressage 192.168.100.0/24.

Il y a 3 machines virtuelles en cours d’exécution

Ouvrir la console PowerShell Windows Azure et vérifier dans un premier temps que l’adresse IP à assigner est disponible avec la cmdlet Test-AzureStaticVNetIP

Test-AzureStaticVNetIP –VNetName nomduVNet –IPAddress adresseIPàtester

Dans cet exemple, je teste les adresses 192.168.100.3 et 192.168.100.11 de mon réseau Reseau-demoR2

Ici je vais affecter l’adresse IP 192.168.100.11 à la machine dc01-demo qui est dans le Cloud Service DemoStan1 (et connectée au VNet Reseau-demor2) :

Get-AzureVM –ServiceName DemoStan1 –Name dc01-demo |Set-AzureStaticVNetIP –IPAddress 192.168.100.11 | Update-AzureVM

Il est aussi possible de vérifier l’assignation de la bonne adresse dans le portail Azure :

Ces informations sont bien entendues disponibles au sein de l’OS de la VM :

Note : dans cet exemple, ma machine sera le premier DC d’une infrastructure, j’irai donc ensuite dans les propriétés du VNet pour définir que le serveur DNS de ce VNet est à l’adresse 192.168.100.11 que je viens d’assigner à la VM.

Pour supprimer une adresse statique d’une VM Azure, là encore, il faut passer par une commande PowerShell :

Get-AzureVM –ServiceName nomduservice –Name nomdelaVM | Remove-AzureStaticVNetIP | Update-AzureVM   

Important : il est nécessaire de redémarrer la machine virtuelle pour appliquer ce changement

Update : depuis le nouveau portail d'administration Azure, il est possible d'affecter "graphiquement" l'IP statique

Vous êtes professionnel et légitimement vous vous posez des questions sur le Cloud, Windows Azure, Hyper-V, Windows Server, l’évolution du datacenter vers un cloud privé ou hybride alors pour en savoir plus, n’hésitez pas à suivre les sessions gratuites de formation de la Microsoft Virtual Academy : http://www.microsoftvirtualacademy.com/

Pour évaluez gratuitement Windows Azure : http://azure.microsoft.com/fr-fr/pricing/free-trial/

- Stanislas Quastana -