Créer une image managée héritée d’une machine virtuelle généralisée dans Azure
S’applique à : ✔️ Machines virtuelles Linux ✔️ Machines virtuelles Windows ✔️ Groupes identiques flexibles
Important
Cet article traite de l’ancienne technologie d’image managée. Pour la technologie la plus récente, les clients sont encouragés à utiliser Azure Compute Gallery. Toutes les nouvelles fonctionnalités, telles qu’ARM64, Lancement fiable et Machine virtuelle confidentielle, sont uniquement prises en charge via Azure Compute Gallery. Si vous disposez d’une image managée existante, vous pouvez l’utiliser comme source et créer une image Azure Compute Gallery. Pour plus d’informations, consultez Migrer une image managée vers la galerie de calcul Azure.
Une fois une machine virtuelle marquée comme generalized
dans Azure, vous ne pouvez pas la redémarrer.
Une image managée prend en charge jusqu’à 20 déploiements simultanés. Une tentative de création simultanée de plus de 20 machines virtuelles à partir de la même image managée peut entraîner l’expiration des délais d’approvisionnement en raison des limites de performances de stockage d’un disque dur virtuel unique. Pour créer plus de 20 machines virtuelles simultanément, utilisez une image de Azure Compute Gallery (anciennement Shared Image Gallery) configurée avec 1 réplica tous les 20 déploiements simultanés de machines virtuelles.
Pour plus d'informations sur la facturation des images managées, reportez-vous à Tarification de la fonctionnalité Disques managés.
Prérequis
Pour créer une image, vous avez besoin d’une machine virtuelle généralisée.
Interface CLI : créer une image managée héritée d’une machine virtuelle
Créez une image managée d’une machine virtuelle à l’aide de az image create. L’exemple suivant crée une image nommée myImage dans le groupe de ressources nommé myResourceGroup à l’aide de la ressource de machine virtuelle nommée myVM.
az image create \
--resource-group myResourceGroup \
--name myImage --source myVM
Notes
L’image est créée dans le même groupe de ressources que votre machine virtuelle source. Vous pouvez créer des machines virtuelles dans n’importe quel groupe de ressources de votre abonnement à partir de cette image. En matière de gestion, peut-être voudrez-vous créer un groupe de ressources spécifique pour vos ressources de machine virtuelle et vos images.
Si vous capturez l’image d’une machine virtuelle de 2e génération, utilisez également le paramètre --hyper-v-generation V2
. Pour plus d’informations, consultez Machines virtuelles de 2e génération.
Si vous souhaitez stocker votre image dans le stockage résilient aux zones, vous devez la créer dans une région qui prend en charge des zones de disponibilité et inclut le paramètre --zone-resilient true
.
Cette commande retourne du code JSON qui décrit l’image de machine virtuelle. Enregistrez cette sortie pour référence ultérieure.
PowerShell : créer une image managée héritée d’une machine virtuelle
La création d’une image directement à partir de la machine virtuelle permet de s’assurer que celle-ci comprend tous les disques associés à la machine virtuelle, y compris le disque du système d’exploitation et tous les disques de données. Cet exemple montre comment créer une image gérée à partir d’une machine virtuelle qui utilise des disques managés.
Avant de commencer, assurez-vous que vous disposez de la dernière version du module Azure PowerShell. Pour trouver la version, exécutez Get-Module -ListAvailable Az
dans PowerShell. Si vous devez procéder à une mise à niveau, voir Installer Azure PowerShell sur Windows avec PowerShellGet. Si vous exécutez PowerShell en local, exécutez Connect-AzAccount
pour créer une connexion avec Azure.
Notes
Si vous voulez stocker votre image dans un stockage redondant interzone, vous devez la créer dans une région qui prend en charge les zones de disponibilité et inclut le paramètre -ZoneResilient
dans la configuration de l’image (commande New-AzImageConfig
).
Pour créer une image de machine virtuelle, procédez comme suit :
Définissez des variables.
$vmName = "myVM" $rgName = "myResourceGroup" $location = "EastUS" $imageName = "myImage"
Assurez-vous que la machine virtuelle a été libérée.
Stop-AzVM -ResourceGroupName $rgName -Name $vmName -Force
Définissez l’état de la machine virtuelle sur Généralisé.
Set-AzVm -ResourceGroupName $rgName -Name $vmName -Generalized
Accédez à la machine virtuelle.
$vm = Get-AzVM -Name $vmName -ResourceGroupName $rgName
Créez la configuration de l’image.
$image = New-AzImageConfig -Location $location -SourceVirtualMachineId $vm.Id
Créez l’image.
New-AzImage -Image $image -ImageName $imageName -ResourceGroupName $rgName
PowerShell : créer une image managée héritée à partir d’un disque managé
Si vous souhaitez créer une image uniquement du disque du système d’exploitation, spécifiez l’ID de disque managé en tant que le disque du système d’exploitation :
Définissez des variables.
$vmName = "myVM" $rgName = "myResourceGroup" $location = "EastUS" $imageName = "myImage"
Obtenez la machine virtuelle.
$vm = Get-AzVm -Name $vmName -ResourceGroupName $rgName
Obtenez l’ID du disque géré.
$diskID = $vm.StorageProfile.OsDisk.ManagedDisk.Id
Créez la configuration de l’image.
$imageConfig = New-AzImageConfig -Location $location $imageConfig = Set-AzImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -ManagedDiskId $diskID
Créez l’image.
New-AzImage -ImageName $imageName -ResourceGroupName $rgName -Image $imageConfig
PowerShell : créer une image managée héritée à partir d’une capture instantanée
Vous pouvez créer une image gérée à partir d’une capture instantanée d’une machine virtuelle généralisée en procédant comme suit :
Définissez des variables.
$rgName = "myResourceGroup" $location = "EastUS" $snapshotName = "mySnapshot" $imageName = "myImage"
Accédez à la capture instantanée.
$snapshot = Get-AzSnapshot -ResourceGroupName $rgName -SnapshotName $snapshotName
Créez la configuration de l’image.
$imageConfig = New-AzImageConfig -Location $location $imageConfig = Set-AzImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -SnapshotId $snapshot.Id
Créez l’image.
New-AzImage -ImageName $imageName -ResourceGroupName $rgName -Image $imageConfig
PowerShell : créer une image managée héritée à partir d’une machine virtuelle qui utilise un compte de stockage
Pour créer une image managée à partir d’une machine virtuelle qui n’utilise pas de disques managés, vous devez disposer de l’URI du VHD (disque dur virtuel) de système d’exploitation dans le compte de stockage, au format suivant : https://moncomptedestockage.blob.core.windows.net/conteneurvhd/nomdefichiervhd.vhd. Dans cet exemple, le disque dur virtuel se trouve dans mystorageaccount, dans un conteneur nommé vhdcontainer, et le nom de fichier du disque dur virtuel est vhdfilename.vhd.
Définissez des variables.
$vmName = "myVM" $rgName = "myResourceGroup" $location = "EastUS" $imageName = "myImage" $osVhdUri = "https://mystorageaccount.blob.core.windows.net/vhdcontainer/vhdfilename.vhd"
Arrêtez/libérez la machine virtuelle.
Stop-AzVM -ResourceGroupName $rgName -Name $vmName -Force
Indiquez que la machine virtuelle est généralisée.
Set-AzVm -ResourceGroupName $rgName -Name $vmName -Generalized
Créez l’image en utilisant votre disque dur virtuel généralisé de système d’exploitation.
$imageConfig = New-AzImageConfig -Location $location $imageConfig = Set-AzImageOsDisk -Image $imageConfig -OsType Windows -OsState Generalized -BlobUri $osVhdUri $image = New-AzImage -ImageName $imageName -ResourceGroupName $rgName -Image $imageConfig
Interface CLI : créer une machine virtuelle à partir d’une image managée héritée
Créez une machine virtuelle en utilisant l’image que vous avez créée à l’aide de la commande az vm create. L’exemple suivant crée une machine virtuelle nommée myVMDeployed à partir de l’image nommée myImage.
az vm create \
--resource-group myResourceGroup \
--name myVMDeployed \
--image myImage\
--admin-username azureuser \
--ssh-key-value ~/.ssh/id_rsa.pub
Interface CLI : créer une machine virtuelle dans un autre groupe de ressources à partir d’une image managée héritée
Vous pouvez créer des machines virtuelles à partir d’une image dans n’importe quel groupe de ressources de votre abonnement. Pour créer une machine virtuelle dans un groupe de ressources différent de celui de l’image, indiquez l’ID de ressource complet de votre image. Utilisez la commande az image list pour afficher une liste d’images. Le résultat ressemble à l’exemple qui suit.
"id": "/subscriptions/guid/resourceGroups/MYRESOURCEGROUP/providers/Microsoft.Compute/images/myImage",
"location": "westus",
"name": "myImage",
L’exemple suivant utilise la commande az vm create pour créer une machine virtuelle dans un groupe de ressources différent de celui de l’image source en spécifiant l’ID de ressource d’image.
az vm create \
--resource-group myOtherResourceGroup \
--name myOtherVMDeployed \
--image "/subscriptions/guid/resourceGroups/MYRESOURCEGROUP/providers/Microsoft.Compute/images/myImage" \
--admin-username azureuser \
--ssh-key-value ~/.ssh/id_rsa.pub
Portail : créer une machine virtuelle à partir d’une image managée héritée
- Accédez au Portail Azure pour rechercher une image managée. Recherchez et sélectionnez Images.
- Sélectionnez l’image à utiliser dans la liste. La page Vue d’ensemble de l’image s’ouvre.
- Sélectionnez Créer une machine virtuelle dans le menu.
- Saisissez les informations de la machine virtuelle. Le nom d’utilisateur et le mot de passe que vous avez entrés vous serviront pour vous connecter à la machine virtuelle. Quand vous avez terminé, sélectionnez OK. Vous pouvez créer la machine virtuelle dans un groupe de ressources existant ou sélectionner Créer nouveau pour créer un groupe de ressources pour stocker la machine virtuelle.
- Choisissez la taille de la machine virtuelle. Pour voir plus de tailles, sélectionnez Afficher tout ou modifiez le filtre Type de disque pris en charge.
- Sous Paramètres, procédez aux modifications nécessaires et cliquez sur OK.
- Dans la page Résumé, vous pouvez voir le nom de votre image répertorié comme Image privée. Cliquez sur OK pour démarrer le déploiement de la machine virtuelle.
PowerShell : créer une machine virtuelle à partir d’une image managée héritée
Vous pouvez utiliser PowerShell pour créer une machine virtuelle à partir d’une image à l’aide du paramètre simplifié défini pour la cmdlet New-AzVm. L’image doit se trouver dans le même groupe de ressources que celui dans lequel vous allez créer la machine virtuelle.
Le paramètre simplifié défini pour New-AzVm nécessite uniquement un nom, un groupe de ressources et un nom d’image pour créer une machine virtuelle à partir d’une image. New-AzVm utilise la valeur du paramètre -Name comme nom de toutes les ressources qu’il crée automatiquement. Dans cet exemple, nous fournissons des noms plus détaillés pour chaque ressource, mais laissons l’applet de commande les créer automatiquement. Vous pouvez également créer des ressources en avance, comme le réseau virtuel, et passer le nom de ressource dans l’applet de commande. New-AzVm utilisera les ressources existantes s’il peut les trouver par leur nom.
L’exemple suivant crée une machine virtuelle nommée myVMfromImage dans le groupe de ressources myResourceGroup, à partir de l’image nommée myImage.
New-AzVm `
-ResourceGroupName "myResourceGroup" `
-Name "myVMfromImage" `
-ImageName "myImage" `
-Location "East US" `
-VirtualNetworkName "myImageVnet" `
-SubnetName "myImageSubnet" `
-SecurityGroupName "myImageNSG" `
-PublicIpAddressName "myImagePIP"
Étapes suivantes
- En savoir plus sur l’utilisation d’une galerie de calcul Azure (anciennement galerie d’images partagées)