Vue d’ensemble d’Azure VM Image Builder

S’applique aux : ✔️ Machines virtuelles Linux ✔️ Machines virtuelles Windows ✔️ Groupes identiques flexibles ✔️ Groupes identiques uniformes

En utilisant des images de machine virtuelle normalisées, votre organisation peut migrer plus facilement vers le cloud et assurer la cohérence de vos déploiements. Les images incluent généralement des paramètres de sécurité et de configuration prédéfinis, ainsi que tout logiciel nécessaire. La configuration de votre propre pipeline de création d’images nécessite du temps, une infrastructure et bien d’autres détails. Avec Azure VM Image Builder, il vous suffit de créer une configuration décrivant votre image et de l’envoyer au service, où l’image est créée puis distribuée.

Avec VM Image Builder, vous pouvez migrer votre pipeline de personnalisation d’image existant vers Azure et continuer à utiliser les scripts, commandes et processus existants. Vous pouvez intégrer vos applications principales dans une image de machine virtuelle afin que vos machines virtuelles puissent accepter des charges de travail une fois les images créées. Vous pouvez même ajouter des configurations afin de générer des images pour Azure Virtual Desktop, en tant que disques durs virtuels (VHD) à utiliser dans Azure Stack, ou pour faciliter l’exportation.

VM Image Builder vous permet de commencer avec des images Windows ou Linux issues de la Place de marché Azure ou d’images personnalisées existantes, puis d’ajouter vos propres personnalisations. Vous pouvez également spécifier où vous souhaitez que vos images obtenues soient hébergées dans Azure Compute Gallery (anciennement Shared Image Gallery), en tant qu’images managées ou disques durs virtuels.

Fonctionnalités

Bien qu’il soit possible de créer des images de machine virtuelle personnalisées manuellement ou avec d’autres outils, le processus peut être fastidieux et peu fiable. VM Image Builder, qui s’appuie sur HashiCorp Packer, vous offre les avantages d’un service managé.

Simplicité

Pour réduire la complexité de la création d’images de machine virtuelle, VM Image Builder :

  • Élimine la nécessité d’utiliser des outils, des processus et des étapes manuelles complexes pour créer une image de machine virtuelle. VM Image Builder fait abstraction de tous ces détails et masque les exigences spécifiques à Azure, comme la nécessité de généraliser l’image (Sysprep). Cela donne aux utilisateurs plus avancés la possibilité de ne pas tenir compte de ces exigences.

  • Peut être intégré aux pipelines de build d’images existants pour une expérience « click-and-go ». Pour ce faire, vous pouvez soit appeler VM Image Builder à partir de votre pipeline, soit utiliser une tâche DevOps du service Azure VM Image Builder (préversion).

  • Peut récupérer (fetch) les données de personnalisation à partir de différentes sources, ce qui élimine le besoin de tout collecter à partir d’un seul endroit.

  • Peut être intégré à Compute Gallery, qui crée un système de gestion d’images avec lequel distribuer, répliquer, versionner et mettre à l’échelle des images à l’échelle mondiale. De plus, vous pouvez distribuer la même image résultante sous la forme d’un disque dur virtuel ou d’une ou plusieurs images managées, sans avoir à les recréer à partir de zéro.

Infrastructure as code

Avec VM Image Builder, vous n’avez pas besoin de gérer votre infrastructure à long terme (comme des comptes de stockage contenant des données de personnalisation) ou temporaire (comme des machines virtuelles temporaires pour la génération d’images).

VM Image Builder stocke vos artefacts de build d’image de machine virtuelle en tant que ressources Azure. Cette fonctionnalité supprime à la fois le besoin de gérer des définitions hors connexion et le risque de dérives d’environnement résultant de suppressions ou de mises à jour accidentelles.

Sécurité

Pour vous aider à sécuriser vos images, VM Image Builder :

  • Vous permet de créer des images de référence (c’est-à-dire vos configurations minimales de sécurité et d’entreprise) et permet à d’autres services de les personnaliser davantage. Vous pouvez assurer la sécurité et la conformité de ces images en utilisant VM Image Builder pour regénérer rapidement une image finale (gold) qui utilise la dernière version corrigée d’une image source. VM Image Builder vous permet également de créer plus facilement des images qui respectent la base de référence de sécurité Azure Windows. Pour plus d’informations, consultez VM Image Builder - Modèle de référence Windows.

  • Vous permet de récupérer (fetch) vos artefacts de personnalisation sans avoir à les rendre accessibles publiquement. VM Image Builder peut utiliser votre identité managée Azure pour récupérer ces ressources, et vous pouvez limiter les privilèges de cette identité aussi strictement que vous le souhaitez avec le contrôle d’accès en fonction du rôle Azure (Azure RBAC). Vous pouvez à la fois conserver vos artefacts secrets et empêcher la falsification par des acteurs non autorisés.

  • Stocke de manière sécurisée des copies des artefacts de personnalisation, des ressources de calcul et de stockage transitoires ainsi que leurs images résultantes dans votre abonnement, car l’accès est contrôlé par Azure RBAC. Ce niveau de sécurité, qui s’applique également à la machine virtuelle de build utilisée pour créer l’image personnalisée, permet d’empêcher la copie de vos scripts et fichiers de personnalisation sur une machine virtuelle inconnue dans un abonnement inconnu. De plus, vous pouvez obtenir un niveau élevé de séparation des charges de travail des autres clients en utilisant des offres de machines virtuelles isolées pour la machine virtuelle de build.

  • Vous permet de connecter VM Image Builder à vos réseaux virtuels existants afin de communiquer avec des serveurs de configuration existants tels que DSC (serveur Pull de configuration d’état souhaité), Chef et Puppet, des partages de fichiers ou tout autre serveur et service routable.

  • Peut être configuré pour attribuer vos identités affectées par l’utilisateur à la machine virtuelle de build VM Image Builder (c’est-à-dire celle que le service VM Image Builder crée dans votre abonnement et utilise pour générer et personnaliser l’image). Vous pouvez ensuite utiliser ces identités au moment de la personnalisation pour accéder aux ressources Azure, y compris les secrets, de votre abonnement. Il n’est pas nécessaire d’accorder à VM Image Builder un accès direct à ces ressources.

Régions

Le service VM Image Builder est disponible dans les régions suivantes :

Notes

Vous pouvez toujours distribuer des images en dehors de ces régions.

  • USA Est
  • USA Est 2
  • Centre-USA Ouest
  • USA Ouest
  • USA Ouest 2
  • USA Ouest 3
  • États-Unis - partie centrale méridionale
  • Europe Nord
  • Europe Ouest
  • Asie Sud-Est
  • Sud-Australie Est
  • Australie Est
  • Sud du Royaume-Uni
  • Ouest du Royaume-Uni
  • Brésil Sud
  • Centre du Canada
  • Inde centrale
  • USA Centre
  • France Centre
  • Allemagne Centre-Ouest
  • Japon Est
  • Centre-Nord des États-Unis
  • Norvège Est
  • Suisse Nord
  • Inde Ouest Jio
  • Émirats arabes unis Nord
  • Asie Est
  • Centre de la Corée
  • Afrique du Sud Nord
  • Qatar Central
  • USGov Arizona (préversion publique)
  • USGov Virginie (préversion publique)
  • Chine Nord 3 (préversion publique)
  • Suède Centre
  • Pologne Centre
  • Italie Nord

Pour accéder à la préversion publique d’Azure VM Image Builder dans les régions Fairfax (USGov Arizona et USGov Virginie), vous devez inscrire la fonctionnalité Microsoft.VirtualMachineImages/FairfaxPublicPreview. Exécutez pour cela la commande suivante dans PowerShell ou Azure CLI :

Register-AzProviderPreviewFeature -ProviderNamespace Microsoft.VirtualMachineImages -Name FairfaxPublicPreview

Pour accéder à la préversion publique d’Azure VM Image Builder dans la région Chine Nord 3, vous devez inscrire la fonctionnalité Microsoft.VirtualMachineImages/MooncakePublicPreview. Exécutez pour cela la commande suivante dans PowerShell ou Azure CLI :

Register-AzProviderPreviewFeature -ProviderNamespace Microsoft.VirtualMachineImages -Name MooncakePublicPreview

Prise en charge du système d’exploitation

VM Image Builder est conçu pour fonctionner avec toutes les images du système d’exploitation Place de marché Azure de base.

Remarque

Depuis mars 2023, vous pouvez utiliser le service Azure Image Builder dans le portail. Prise en main de la création et de la validation d’images personnalisées dans le portail.

Prise en charge des machines virtuelles confidentielles et du lancement fiable

VM Image Builder offre une prise en charge étendue des images TrustedLaunchSupported et ConfidentialVMSupported, avec certaines contraintes. Voici la liste des contraintes :

SecurityType État de la prise en charge
TrustedLaunchSupported Prise en charge en tant qu’image source pour les builds d’images
ConfidentialVMSupported Prise en charge en tant qu’image source pour les builds d’images
TrustedLaunch Non pris en charge en tant qu’image source
ConfidentialVM Non pris en charge en tant qu’image source

Remarque

Quand vous utilisez des images TrustedLaunchSupported, il est important que la source et la distribution soient toutes deux TrustedLaunchSupported pour que la prise en charge soit assurée. Si la source est normale et que la distribution est TrustedLaunchSupported, ou si la source est TrustedLaunchSupported et que la distribution est normale Gen2, la prise en charge n’est pas assurée.

Fonctionnement

VM Image Builder est un service Azure complètement managé qui est accessible aux fournisseurs de ressources Azure. Les fournisseurs de ressources le configurent en spécifiant une image source, une personnalisation à effectuer et l’emplacement où la nouvelle image doit être distribuée. Un workflow général est illustré dans le diagramme suivant :

Diagramme de la vue d’ensemble conceptuelle d’AIB

Vous pouvez passer des configurations de modèle en utilisant Azure PowerShell, Azure CLI ou des modèles Azure Resource Manager. Vous pouvez également utiliser une tâche DevOps VM Image Builder. Quand vous envoyez la configuration au service, Azure crée une ressource de modèle d’image. Une fois la ressource de modèle d’image créée, un groupe de ressources intermédiaire est créé dans votre abonnement au format suivant : IT_\<DestinationResourceGroup>_\<TemplateName>_\(GUID). Le groupe de ressources intermédiaire contient des fichiers et des scripts qui sont référencés dans la personnalisation File, Shell et PowerShell de la propriété ScriptURI.

Pour exécuter la build, appelez Run sur la ressource de modèle VM Image Builder. Le service déploie alors des ressources supplémentaires pour la build, telles qu’une machine virtuelle, un réseau, un disque et une carte réseau.

Si vous générez une image sans un réseau virtuel existant, VM Image Builder déploie également une adresse IP publique et un groupe de sécurité réseau, et se connecte à la machine virtuelle de build en utilisant le protocole SSH (Secure Shell) ou WinRM (Windows Remote Management).

Si vous sélectionnez un réseau virtuel existant, le service est déployé via Azure Private Link. Dans ce cas, une adresse IP publique n’est pas requise. Pour plus d’informations, consultez la vue d’ensemble des options de réseau d’Azure VM Image Builder.

Une fois la build terminée, toutes les ressources sont supprimées, à l’exception du groupe de ressources intermédiaire et du compte de stockage. Vous pouvez les supprimer en supprimant la ressource de modèle d’image ou vous pouvez les laisser en place pour réexécuter la build.

Pour obtenir des exemples, des guides pas à pas, des modèles de configuration et des solutions, accédez au dépôt GitHub de VM Image Builder.

Prise en charge du déplacement

La ressource de modèle d’image est immuable et contient des liens vers les ressources et le groupe de ressources intermédiaire. Le déplacement de ce type de ressource n’est donc pas pris en charge.

Si vous souhaitez déplacer la ressource de modèle d’image, veillez à avoir une copie du modèle de configuration ou, si vous n’en avez pas, extrayez la configuration existante de la ressource. Ensuite, créez une ressource de modèle d’image dans le nouveau groupe de ressources avec un nouveau nom, puis supprimez la ressource de modèle d’image précédente.

Autorisations

Quand vous vous inscrivez au service VM Image Builder, vous accordez au service l’autorisation de créer, de gérer et de supprimer un groupe de ressources intermédiaire avec le préfixe IT_*. Vous avez le droit d’ajouter à ce groupe toutes les ressources nécessaires à la création d’image. Cela se produit car un nom de principal de service VM Image Builder est mis à disposition dans votre abonnement une fois l’inscription terminée.

Pour permettre à VM Image Builder de distribuer des images aux images managées ou à une galerie Compute Gallery, vous devez créer une identité Azure affectée par l’utilisateur qui dispose des autorisations nécessaires pour lire et écrire des images. Si vous accédez à Stockage Azure, vous aurez besoin d’autorisations pour lire les conteneurs privés et publics.

Dans l’API version 2021-10-01 et ultérieure, VM Image Builder prend en charge l’ajout d’identités Azure affectées par l’utilisateur à la machine virtuelle de build pour prendre en charge des scénarios où vous devez vous authentifier sur des services comme Azure Key Vault dans votre abonnement.

Pour plus d’informations sur les autorisations, consultez :

Coûts

Quand vous créez, générez et stockez des images avec VM Image Builder, vous engendrez des coûts liés au calcul, au réseau et au stockage. Ces coûts sont similaires à ceux que vous occasionnez quand vous créez manuellement des images personnalisées. Vos ressources sont facturées selon vos tarifs Azure.

Remarque

Le service Azure Image Builder ne prend pas actuellement en charge Azure Hybrid Benefit pour Windows Server.

Pendant le processus de création d’image, les fichiers sont téléchargés et stockés dans le groupe de ressources IT_<DestinationResourceGroup>_<TemplateName>, ce qui implique des coûts de stockage modiques. Si vous ne souhaitez pas conserver ces fichiers, supprimez le modèle d’image une fois l’image générée.

VM Image Builder crée une machine virtuelle en utilisant la taille de machine virtuelle par défaut Standard_D1_v2 pour les images Gen1 et Standard_D2ds_v4 pour les images Gen2, ainsi que le stockage et le réseau nécessaires à la machine virtuelle. Ces ressources durent le temps du processus de génération et sont supprimées une fois que VM Image Builder a fini de créer l’image.

VM Image Builder distribue l’image dans les régions de votre choix, ce qui peut occasionner des frais de sortie de réseau.

Hyper-V Génération

VM Image Builder prend actuellement en charge la création d’images Hyper-V Gen1 et Gen2 dans une galerie Compute Gallery et sous la forme d’images managées ou de disques durs virtuels. N’oubliez pas que l’image distribuée est toujours de la même génération que l’image fournie.

Pour les images Gen2, veillez à utiliser la bonne référence SKU. Par exemple, la référence SKU d’une image Ubuntu Server 18.04 Gen2 est 18_04-lts-gen2. La référence SKU d’une image Ubuntu Server 18.04 Gen1 est 18.04-lts.

Voici comment trouver les références SKU basées sur le serveur de publication d’images :

# Find all Gen2 SKUs published by Microsoft Windows Desktop
az vm image list --publisher MicrosoftWindowsDesktop --sku g2 --output table --all

# Find all Gen2 SKUs published by Canonical
az vm image list --publisher Canonical --sku gen2 --output table --all

Pour plus d’informations sur les images de machine virtuelle Azure qui prennent en charge Gen2, consultez Images de machine virtuelle Gen2 dans la Place de marché Azure.

Étapes suivantes

Pour essayer VM Image Builder, consultez les articles sur la génération d’images Linux ou Windows.