Wat is er nieuw in Azure VM Image Builder

Van toepassing op: ✔️ Virtuele Linux-machines voor Windows-VM's ✔️ ✔️ Flexibele schaalsets Uniform-schaalsets ✔️

Dit artikel bevat alle belangrijke API-wijzigingen en functie-updates voor de AIB-service (Azure VM Image Builder).

Updates

Mei 2024

Wijziging die fouten veroorzaken: hoofdlettergevoeligheid

Vanaf 21 mei 2024 wordt voor alle velden de API-versie 2024-02-01 van Azure VM Image Builder afgedwongen. Dit betekent dat het hoofdlettergebruik van letters in uw API-aanvragen exact moet overeenkomen met de verwachte indeling.

Belangrijke opmerking voor bestaande Gebruikers van Azure Image Builder

Als u een bestaande gebruiker van Azure VM Image Builder bent, kunt u er zeker van zijn dat deze wijziging geen invloed heeft op uw bestaande resources. De afdwinging van hoofdlettergevoeligheid is alleen van toepassing op nieuw gemaakte resources met API-versie 2024-02-01 en hoger. Uw bestaande resources blijven werken zoals verwacht zonder wijzigingen.

Als u problemen ondervindt met betrekking tot hoofdlettergevoeligheid, raadpleegt u de bijgewerkte API-documentatie van Azure Image Builder voor hulp.

Voorheen was de API van Azure Image Builder meer vergevend in termen van case, maar vooruitgaand is precisie cruciaal. Wanneer u API-aanroepen maakt, moet u ervoor zorgen dat u het juiste hoofdlettergebruik gebruikt voor veldnamen, parameters en waarden. Als een veld bijvoorbeeld de naam 'vmBoot' heeft, moet u 'vmBoot' gebruiken (niet 'VMBoot' of 'vmboot').

Als u een API-aanvraag verzendt naar de API-versie 2024-02-01 van Azure Image Builder en verder met onjuiste hoofdletters of niet-herkende velden, wordt deze geweigerd door de service. U ontvangt een foutbericht dat aangeeft dat de aanvraag ongeldig is. De fout ziet er ongeveer als volgt uit:

Unmarshalling entity encountered error: unmarshalling type *v2024_02_01.ImageTemplate: struct field Properties: unmarshalling type *v2024_02_01.ImageTemplateProperties: struct field Optimize: unmarshalling type *v2024_02_01.ImageTemplatePropertiesOptimize: unmarshalling type *v2024_02_01.ImageTemplatePropertiesOptimize, unknown field \"vmboot\". There is an issue with the syntax with the JSON template you are submitting. Please check the JSON template for syntax and grammar. For more information on the syntax and grammar of the JSON template, visit http://aka.ms/azvmimagebuildertmplref.

Het foutbericht vermeldt een onbekend veld en stuurt u naar de officiële documentatie: Een JSON-sjabloon voor Azure Image Builder Bicep of ARM-sjabloon maken.

Verwijzing naar Swagger van Azure Image Builder voor API-aanroepen

Wanneer u aanroepen naar de Azure Image Builder-service maakt, raadpleegt u altijd de Swagger-documentatie, die fungeert als de definitieve bron van waarheid voor de API-specificaties van Azure Image Builder. Hoewel de openbare documentatie is bijgewerkt met de juiste hoofdletters en veldnamen vóór de API-release, bevat de Swagger-definitie nauwkeurige details over elke AIB-API om ervoor te zorgen dat u de service correct aanroept.

Hieronder ziet u een lijst met de documentatiewijzigingen die zijn aangebracht zodat deze overeenkomen met de veldnamen in API-versie 2024-02-01:

In de documentatie voor een JSON-sjabloon voor Een Azure Image Builder Bicep- of ARM-sjabloon maken:

Bijgewerkte velden:

  • Meerdere vermeldingen vervangen vmboot door vmBoot
  • Eén vermelding vervangen imageVersionID door imageVersionId

Veld verwijderd:

  • apiVersion: Het is raadzaam om het opnemen van dit veld in uw aanvragen te voorkomen omdat dit niet expliciet is opgegeven in onze API, dus het opnemen ervan in uw JSON-sjabloon kan leiden tot fouten in de build van uw installatiekopieën.

In de documentatie voor netwerkopties van Azure VM Image Builder:

Veld bijgewerkt:

  • Eén vermelding vervangen VirtualNetworkConfig door vnetConfig

Velden verwijderd:

  • subnetName in de vnetConfig eigenschap : dit veld is afgeschaft en het nieuwe veld is subnetId
  • resourceGroupName in de vnetConfig eigenschap : dit veld is afgeschaft en het nieuwe veld is subnetId

Vastmaken aan een oudere API-versie van Azure Image Builder

Belangrijke overweging voor het vastmaken aan oudere API-versies

Het vastmaken aan een oudere Versie van de Azure Image Builder-API kan compatibiliteit bieden met uw bestaande sjablonen, maar dit wordt niet aanbevolen vanwege de volgende factoren:

  • Afschaffingsrisico: oudere API-versies kunnen uiteindelijk worden afgeschaft.

  • Ontbrekende functies: Door vast te maken aan een oudere API-versie, mist u de nieuwste functies en verbeteringen die zijn geïntroduceerd in nieuwere versies. Deze verbeteringen verbeteren vaak de prestaties, beveiliging en functionaliteit.

Als u wilt voorkomen dat u wijzigingen aanbrengt in de eigenschappen in uw afbeeldingssjablonen vanwege de nieuwe regels voor hoofdlettergevoeligheid, hebt u de mogelijkheid om uw Api-aanroepen van Azure VM Image Builder vast te maken aan een eerdere API-versie. Hierdoor kunt u het vertrouwde gedrag blijven gebruiken zonder wijzigingen.

Als u compatibiliteit met uw bestaande sjablonen wilt garanderen, geeft u bij het maken of bijwerken van een afbeeldingssjabloon de gewenste API-versie (bijvoorbeeld api-version=2022-07-01) op door de api-version parameter in uw aanroep naar de service op te geven. Voorbeeld:

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}?api-version=2022-07-01