Freigeben über


Neuerungen in Azure VM Image Builder

Gilt für: ✔️ Linux-VMs ✔️ Windows-VMs ✔️ Flexible Skalierungsgruppen ✔️ Einheitliche Skalierungsgruppen

Dieser Artikel enthält alle wichtigen API-Änderungen und Featureupdates für den Azure VM Image Builder(AIB)-Dienst.

Updates

September 2024

Die automatische Bilderstellung über Trigger wird deaktiviert, wenn der Imagevorlagenbuild mehrmals fehlgeschlagen ist, um unnötige Buildfehler zu vermeiden.

Sie können die Bildvorlage weiterhin manuell erstellen. Sobald ein manueller Build erfolgreich ist, werden die automatischen Trigger erneut aktiviert.

Beachten Sie, dass dieses Verhalten unabhängig von der API-Version, die Sie für die Bildvorlagenressource verwenden, identisch ist.

Mai 2024

Breaking Change: Groß-/Kleinschreibung

Ab dem 21. Mai 2024 erzwingt azure VM Image Builder die API-Version 2024-02-01 und darüber hinaus die Groß-/Kleinschreibung für alle Felder. Dies bedeutet, dass die Groß-/Kleinschreibung von Buchstaben in Ihren API-Anforderungen exakt mit dem erwarteten Format übereinstimmen muss.

Wichtig

Wichtiger Hinweis für vorhandene Azure Image Builder-Benutzer

Wenn Sie ein vorhandener Benutzer von Azure VM Image Builder sind, stellen Sie sicher, dass diese Änderung sich nicht auf Ihre vorhandenen Ressourcen auswirkt. Die Durchsetzung der Groß-/Kleinschreibung gilt nur für neu erstellte Ressourcen mit API Version 2024-02-01 und höher. Ihre vorhandenen Ressourcen funktionieren ohne Änderungen weiterhin wie erwartet.

Wenn Probleme im Zusammenhang mit der Groß-/Kleinschreibung auftreten, lesen Sie bitte die aktualisierte API-Dokumentation von Azure Image Builder, um Anleitungen zu erhalten.

Bisher war die API des Azure Image Builder im Hinblick auf die Groß-/Kleinschreibung eher verwöhnend, aber die Präzision ist entscheidend. Stellen Sie beim Tätigen von API-Aufrufen sicher, dass Sie die richtige Groß-/Kleinschreibung für Feldnamen, Parameter und Werte verwenden. Wenn beispielsweise ein Feld den Namen "vmBoot" hat, müssen Sie "vmBoot" (nicht "VMBoot" oder "vmboot") verwenden.

Wenn Sie eine API-Anforderung an die API-Version 2024-02-01 von Azure Image Builder und darüber hinaus mit falschen Feldern oder nicht erkannten Feldern senden, lehnt der Dienst sie ab. Sie erhalten eine Fehlerantwort, die angibt, dass die Anforderung ungültig ist. Ein ähnlicher Fehler wie der folgende wird angezeigt:

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.

Die Fehlermeldung erwähnt ein "unbekanntes Feld" und leitet Sie zur offiziellen Dokumentation weiter: Erstellen Sie eine JSON-Vorlage für Azure Image Builder Bicep oder ARM.

Hinweis

Referenzieren des Swaggers von Azure Image Builder für API-Aufrufe

Verweisen Sie beim Aufrufen des Azure Image Builder-Diensts immer auf die Swagger-Dokumentation, die als endgültige Wahrheitsquelle für die API-Spezifikationen von Azure Image Builder dient. Während die öffentliche Dokumentation aktualisiert wurde, um die richtigen Groß- und Kleinschreibungs- und Feldnamen vor der API-Version einzuschließen, enthält die Swagger-Definition genaue Details zu jeder AIB-API, um sicherzustellen, dass Sie Aufrufe an den Dienst ordnungsgemäß ausführen.

Nachfolgend finden Sie eine Liste der Dokumentationsänderungen, die an die Feldnamen in API Version 2024-02-01 angepasst wurden:

In der Erstellen einer Azure Image Builder-Bicep- oder -ARM-JSON-Vorlage Dokumentation:

Felder aktualisiert:

  • Mehrere Erwähnungen von vmboot mit vmBoot ersetzt
  • Eine Erwähnung von imageVersionID mit imageVersionId ersetzt

Feld entfernt:

  • apiVersion: Es wird empfohlen, die Einbeziehung dieses Felds in Ihre Anforderungen zu vermeiden, da es nicht explizit in unserer API angegeben ist, sodass dies in Ihrer JSON-Vorlage zu Fehlern in Ihrem Imagebuild führen kann.

In der Dokumentation zu Azure VM Image Builder-Netzwerkoptionen:

Feld aktualisiert:

  • Eine Erwähnung von VirtualNetworkConfig mit vnetConfig ersetzt

Felder entfernt:

  • subnetName in der vnetConfig Eigenschaft – dieses Feld ist veraltet, und das neue Feld ist subnetId
  • resourceGroupName in der vnetConfig Eigenschaft – dieses Feld ist veraltet, und das neue Feld ist subnetId

So heften Sie sich an eine ältere Azure Image Builder-API-Version an

Wichtige Überlegungen zum Anheften an ältere API-Versionen

Das Anheften an eine ältere Azure Image Builder-API-Version kann Kompatibilität mit ihren vorhandenen Vorlagen bieten, wird jedoch aufgrund der folgenden Faktoren nicht empfohlen:

  • Veraltetes Risiko: Ältere API-Versionen sind möglicherweise veraltet.

  • Fehlende Features: Durch das Anheften an eine ältere API-Version verpassen Sie die neuesten Features und Verbesserungen, die in neueren Versionen eingeführt wurden. Diese Verbesserungen verbessern häufig die Leistung, Sicherheit und Funktionalität.

Wenn Sie aufgrund der neuen Regeln für die Groß-/Kleinschreibung keine Änderungen an den Eigenschaften in Ihren Imagevorlagen vornehmen möchten, haben Sie die Möglichkeit, Ihre Azure VM Image Builder-API-Aufrufe an eine frühere API-Version anzuheften. Auf diese Weise können Sie das vertraute Verhalten ohne Änderungen weiterhin verwenden.

Um die Kompatibilität mit ihren vorhandenen Vorlagen sicherzustellen, geben Sie beim Erstellen oder Aktualisieren einer Bildvorlage die gewünschte API-Version (z. B. api-version=2022-07-01) an, indem Sie den api-version Parameter in Ihren Dienstaufruf einschließen. Beispiel:

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

Testen Ihres Codes

Testen Sie nach dem Anheften an die ältere API-Version Ihren Code, um zu überprüfen, ob es sich wie erwartet verhält. Stellen Sie sicher, dass Ihre vorhandenen Vorlagen weiterhin ordnungsgemäß funktionieren.

November 2023

Azure Image Builder aktiviert isolierte Imagebuilds mithilfe von Azure-Containerinstanzen stufenweise. Der Rollout wird voraussichtlich Anfang 2024 abgeschlossen sein. Ihre vorhandenen Bildvorlagen funktionieren weiterhin, und es gibt keine Änderung in der Art und Weise, wie Sie neue Bildvorlagen erstellen.

Es kann sein, dass in der Staging-Ressourcengruppe vorübergehend andere Azure-Ressourcen angezeigt werden. Dies hat jedoch keine Auswirkungen auf Ihre tatsächlichen Builds oder die Art und Weise, wie Sie mit Azure Image Builder arbeiten. Weitere Informationen zu isolierten Imagebuilds finden Sie hier.

Wichtig

Stellen Sie sicher, dass Ihr Abonnement für den Microsoft.ContainerInstance-Anbieter registriert ist, und es gibt keine Richtlinien, die die Bereitstellung von Azure Container Instances-Ressourcen blockieren. Stellen Sie außerdem sicher, dass das Kontingent für Azure Container Instances-Ressourcen verfügbar ist.

April 2023

Für Azure Image Builder wurde eine neue Portalfunktionalität hinzugefügt. Suchen Sie in Microsoft Azure-Portal nach „Imagevorlagen“, und klicken Sie dann auf „Erstellen“. Hier finden Sie Anleitungen zu ersten Schritten mit dem Erstellen und Überprüfen benutzerdefinierter Images im Portal.

API-Releases

Version 2024-02-01

Verbesserungen

  • Neue autoRun-Eigenschaft, mit der Sie den Imagebuild bei der Vorlagenerstellung oder -aktualisierung ausführen können. Weitere Informationen finden Sie unter Eigenschaften: autoRun.
  • Neue managedResourceTags-Eigenschaft, mit der Sie Tags auf die Ressourcen anwenden können, die der Azure Image Builder-Dienst während der Imageerstellung in der Stagingressourcengruppe erstellt. Weitere Informationen finden Sie unter Eigenschaften: managedResourceTags.
  • Neue containerInstanceSubnetId-Eigenschaft, mit der Sie ein Subnetz angeben können, in dem Azure Container Instances für isolierte Builds bereitgestellt wird. Dieses Feld kann nur angegeben werden, wenn subnetId ebenfalls angegeben ist, und es muss sich im gleichen virtuellen Netzwerk wie das in subnetId angegebene Subnetz befinden. Weitere Informationen finden Sie unter Stellen Sie Ihr eigenes Build-VM-Subnetz und Ihr eigenes ACI-Subnetz zur Verfügung..
  • Unterstützung für die Aktualisierung der vmProfile-Eigenschaft hinzugefügt, einschließlich der folgenden Felder:
    • vmSize
    • osDiskSizeGB
    • userAssignedIdentities
    • vnetConfig
      • subnetId
      • containerInstanceSubnetId Weitere Informationen zur vmProfile-Eigenschaft finden Sie unter vmProfile.

Änderungen In API-Version 2024-02-01 wird ein Breaking Change eingeführt, der die Groß-/Kleinschreibung für alle Felder erzwingt. Dies bedeutet, dass die Groß-/Kleinschreibung von Buchstaben in Ihren API-Anforderungen exakt mit dem erwarteten Format übereinstimmen muss. Wenn Sie eine API-Anforderung an die API-Version 2024-02-01 von Azure Image Builder und darüber hinaus mit falschen Feldern oder nicht erkannten Feldern senden, lehnt der Dienst sie ab. Sie erhalten eine Fehlerantwort, die angibt, dass die Anforderung ungültig ist. Weitere Informationen finden Sie unter Breaking Change: Groß-/Kleinschreibung.

Version 2023-07-01

Bald verfügbar

Unterstützung für das Aktualisieren von Azure Compute Gallery-Verteilungszielen.

Änderungen

Neue errorHandling-Eigenschaft. Diese Eigenschaft bietet Benutzern mehr Kontrolle darüber, wie Fehler bei der Imageerstellung behandelt werden. Weitere Informationen finden Sie unter errorHandling.

Version 2022-07-01

Verbesserungen

  • Unterstützung für die Verwendung der neuesten Imageversion, die in Azure Compute Gallery als Quelle für die Imagevorlage gespeichert ist, hinzugefügt
  • versioning wurde zur Unterstützung für das Generieren von Versionsnummern für Imageverteilungen hinzugefügt. Weitere Informationen finden Sie unter Properties: versioning
  • Die Unterstützung für die Konfiguration pro Region bei der Verteilung in Azure Compute Gallery wurde hinzugefügt. Weitere Informationen finden Sie unter Distribute: targetRegions
  • Ein neuer Überprüfungstyp „Datei“ wurde hinzugefügt. Weitere Informationen finden Sie unter Überprüfen von Eigenschaften
  • Virtuelle Festplatten (VHDs) können jetzt an ein benutzerdefiniertes Blob oder einen benutzerdefinierten Container in einem benutzerdefinierten Speicherkonto verteilt werden. Weitere Informationen finden Sie unter Distribute: VHD
  • Unterstützung für die Verwendung eines direkt freigegebenen Katalog-Images als Quelle für die Bildvorlage hinzugefügt

Änderungen

  • replicationRegions ist jetzt für Katalogverteilungen veraltet. Weitere Informationen finden Sie unter gallery-replicated-regions
  • VHDs können jetzt an ein benutzerdefiniertes Blob oder einen benutzerdefinierten Container in einem benutzerdefinierten Speicherkonto verteilt werden
  • Es wurde ein targetRegions-Array hinzugefügt und nur auf den Verteiltyp „SharedImage“ angewendet. Weitere Informationen zu targetRegions finden Sie unter Azure Compute Gallery
  • Die Unterstützung für die Verwendung eines direkt freigegebenen Katalog-Images als Quelle für die Imagevorlage wurde hinzugefügt. Der direkt freigegebene Katalog ist derzeit in der Vorschau verfügbar.
  • Trigger sind jetzt in der öffentlichen Vorschau verfügbar, um automatische Imagebuilds einzurichten. Weitere Informationen finden Sie unter Verwendung von AIB-Triggern.

Version 2022-02-14

Verbesserungen

Version 2021-10-01

Wichtige Änderung

Mit der API-Version 2021-10-01 wurde eine Änderung am Fehlerschema eingeführt, die für alle künftigen API-Releases gilt. Falls Sie über Azure VM Image Builder-Automatisierungen verfügen, beachten Sie die neue Fehlerausgabe, wenn Sie zur API-Version 2021-10-01 oder höher wechseln. Es wird empfohlen, nach dem Wechsel zur neuesten API-Version nicht wieder zu einer früheren Version zurückzukehren, da Sie die Automatisierung erneut ändern müssten, um das frühere Fehlerschema zu erzeugen. Wir rechnen nicht damit, dass sich das Fehlerschema in zukünftigen Releases erneut ändert.

Fehlerausgabe für Version 2020-02-14 und früher
{ 
  "code": "ValidationFailed",
  "message": "Validation failed: 'ImageTemplate.properties.source': Field 'imageId' has a bad value: '/subscriptions/subscriptionID/resourceGroups/resourceGroupName/providers/Microsoft.Compute/images/imageName'. Please review  http://aka.ms/azvmimagebuildertmplref  for details on fields requirements in the Image Builder Template." 
} 
Fehlerausgabe für Version 2021-10-01 und höher
{ 
  "error": {
    "code": "ValidationFailed", 
    "message": "Validation failed: 'ImageTemplate.properties.source': Field 'imageId' has a bad value: '/subscriptions/subscriptionID/resourceGroups/resourceGroupName/providers/Microsoft.Compute/images/imageName'. Please review  http://aka.ms/azvmimagebuildertmplref  for details on fields requirements in the Image Builder Template." 
  }
}

Verbesserungen

  • Unterstützung für Build-VM-MSIs hinzugefügt.
  • Unterstützung für die Anpassung von Proxy-VM-Größen hinzugefügt.

Version 2020-02-14

Verbesserungen

  • Unterstützung für das Erstellen von Images aus den folgenden Quellen hinzugefügt:
    • Verwaltetes Image
    • Azure Compute Gallery
    • Platform Image Repository (einschließlich Platform Image Purchase Plan)
  • Unterstützung für die folgenden Anpassungen hinzugefügt:
    • Shell (Linux) – Skript oder Inline
    • PowerShell (Windows) – Skript oder Inline, Ausführung mit erhöhten Rechten, Ausführung als System
    • Datei (Linux und Windows)
    • Windows-Neustart (Windows)
    • Windows-Update (Windows): Suchkriterien, Filter und Updatelimit
  • Unterstützung für die folgenden Verteilungstypen hinzugefügt:
    • VHD (virtuelle Festplatte)
    • Verwaltetes Image
    • Azure Compute Gallery
  • Weitere Features:
    • Unterstützung für das Verwenden des eigenen VNet für Kunden hinzugefügt
    • Unterstützung für das Anpassen der Build-VM (VM-Größe, Größe des Betriebssystemdatenträgers) für Kunden hinzugefügt
    • Unterstützung für benutzerseitig zugewiesenen Microsoft Windows Installer (MSI) hinzugefügt (zum Anpassen/Verteilen von Schritten)
    • Unterstützung für Gen2-Images hinzugefügt

Vorschau-APIs

Die folgenden APIs sind veraltet, werden aber weiterhin unterstützt:

  • Version 2019-05-01-preview

Nächste Schritte

Weitere Informationen zu VM Image Builder.