Dans un précédent article, je vous présentais comment envoyer un VHD personnalisé depuis votre poste local vers Azure. Aujourd’hui, nous allons voir comment à partir d’un VHD maison nous allons pouvoir créer une machine virtuelle et tous les composants nécessaires à son bon fonctionnement sur le cloud de Microsoft.
Dans mon exemple, l’objectif sera de provisionner un VM de type Windows 10 directement dans Azure. En effet, par défaut (et pour l’instant en tout cas – 25/10/2016), il est toujours impossible de provisionner une VM Windows 10 dans Windows Azure (sauf si votre subscribtion est obtenue via un compte MSDN Visual Studio Developer). Si vous avez testé, vous aurez peut-être observé les messages suivants :
Exclusively available for MSDN subscribtion…
J’ai donc créé un VHD sur lequel j’ai installé Windows 10 et je l’ai transféré dans un container sur mon Storage Account. Pour plus d’informations sur comment transférer un VHD vers Auzre, je vous invite à consulter ce article.
Nous allons donc maintenant utiliser ce VHD et le rattacher à mon infrastructure existante. Profitez-en pour récupérer le chemin complet vers votre VHD, nous en aurons besoin pour la suite. 😉
Bien sûr, lorsque je dis infrastructure existante, cela veut dire que vous devez déjà disposer des composants suivants (que nous aurons besoin de mentionner dans la CmdLet qui va nous permettra de créer notre virtual machine) :
Une fois que vous êtes prêt nous allons exécuter la CmdLet suivante :
#Login-AzureRmAccount (vous devez être identifié sur Azure) #Select-AzureRmSubscription -SubscribtionId "xxx-xxx-xxx" (vous avez déjà sélectionné la subscribtion dans laquelle vous travaillez) $resourceGroupName = "ctxtgi12" $destinationVhd = "https://xxxxxxxx.blob.core.windows.net/vhds/template_Windows10_tgi.vhd" $virtualNetworkName = "VirtualNetwork" $locationName = "westeurope" $virtualNetwork = Get-AzureRmVirtualNetwork -ResourceGroupName $resourceGroupName -Name $virtualNetworkName $publicIp = New-AzureRmPublicIpAddress -Name "Win10-PIP" -ResourceGroupName $ResourceGroupName -Location $locationName -AllocationMethod Static $networkInterface = New-AzureRmNetworkInterface -ResourceGroupName $resourceGroupName -Name "Win10-NIC" -Location $locationName -SubnetId $virtualNetwork.Subnets[0].Id -PublicIpAddressId $publicIp.Id $availabilityset = (Get-AzureRmAvailabilitySet -ResourceGroupName $resourceGroupName)[0].Id $vmConfig = New-AzureRmVMConfig -VMName "MyVMWindows10" -VMSize "Standard_DS1" #-AvailabilitySetID $availabilityset $vmConfig = Set-AzureRmVMOSDisk -VM $vmConfig -Name "MyVMWindows10" -VhdUri $destinationVhd -CreateOption Attach -Windows $vmConfig = Add-AzureRmVMNetworkInterface -VM $vmConfig -Id $networkInterface.Id New-AzureRmVM -VM $vmConfig -Location $locationName -ResourceGroupName $resourceGroupName
A adapter bien entendu en fonction de votre cas de figure ! 🙂
Si l’on regarde un peu de plus prés les quelques lignes ci-dessus, nous pouvons remarquer les points suivants :
Après quelques instants, vous remarquerez sur le portail Azure que les différents éléments ont été créés et que notre machine virtuelle a d’ailleurs été automatiquement démarrée :
La machine virtuelle a été générée conformément à nos besoins (ip interne dans le virtual network, ip publique, sizing, azure location, etc.). Pour vérifier que tout est conforme, il ne vous reste alors plus qu’à vous y connecter en RDP ! 🙂
Un grand merci à Léon dont l’article suivant m’a permis d’avancer sur ce point : https://blogs.infosupport.com/creating-a-vm-in-azure-based-on-an-uploaded-vhd/. 🙂
Réveillon 2024-2025 à Lanzarote (image générée par IA) Vous cherchez une destination pour échapper à…
Microsoft 365 : L’arrivée de Copilot entraîne une augmentation des prix en 2025 Microsoft a…
Alors que l'année 2024 est officiellement révolue, il est temps de jeter un regard en…
LE célèbre icône du logiciel VLC Media PLayer Le lecteur multimédia VLC, développé par l'association…
Dell a récemment annoncé une refonte majeure de sa gamme de produits, abandonnant des noms…
Proton : Une panne mondiale due à une migration vers Kubernetes Interruption de service durant…