Condividi tramite


Novità di Image Builder per macchine virtuali di Azure

Si applica a: ✔️ macchine virtuali Linux ✔️ macchine virtuali Windows ✔️ set di scalabilità flessibili ✔️ set di scalabilità uniformi

Questo articolo contiene tutte le principali modifiche all'API e gli aggiornamenti delle funzionalità per il servizio Azure VM Image Builder (AIB).

Aggiornamenti

Settembre 2024

La creazione automatica di immagini tramite trigger verrà disattivata se la compilazione del modello di immagine non è riuscita più volte consecutivamente, per evitare errori di compilazione non necessari.

È comunque possibile compilare manualmente il modello di immagine. Una volta completata la compilazione manuale, i trigger automatici verranno riattivati.

Si noti che questo comportamento è lo stesso indipendentemente dalla versione dell'API usata per la risorsa modello di immagine.

Maggio 2024

Modifica che causa un'interruzione: distinzione tra maiuscole e minuscole

A partire dal 21 maggio 2024, l'API di Image Builder di Macchine virtuali di Azure versione 2024-02-01 e successive applica la distinzione tra maiuscole e minuscole per tutti i campi. Ciò significa che la maiuscola delle lettere nelle richieste API deve corrispondere esattamente al formato previsto.

Importante

Nota importante per gli utenti esistenti di Image Builder

Se si è un utente esistente di Image Builder di macchine virtuali di Azure, assicurarsi che questa modifica non influirà sulle risorse esistenti. L'imposizione della distinzione tra maiuscole e minuscole si applica solo alle risorse appena create usando l'API versione 2024-02-01 e successive. Le risorse esistenti continueranno a funzionare come previsto senza modifiche.

Se si verificano problemi relativi alla distinzione tra maiuscole e minuscole, vedere la documentazione aggiornata dell'API di Image Builder di Azure per indicazioni.

In precedenza, l'API di Image Builder di Azure era più forgiving in termini di caso, ma il passaggio in avanti, la precisione è fondamentale. Quando si effettuano chiamate API, assicurarsi di usare la maiuscola corretta per i nomi dei campi, i parametri e i valori. Ad esempio, se un campo è denominato "vmBoot", è necessario usare "vmBoot" (non "VMBoot" o "vmboot").

Se si invia una richiesta API all'API di Image Builder versione 2024-02-01 e successive a campi non corretti o non riconosciuti, il servizio lo rifiuterà. Verrà visualizzata una risposta di errore che indica che la richiesta non è valida. L'errore sarà simile al seguente:

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.

Il messaggio di errore indica un "campo sconosciuto" e indirizza l'utente alla documentazione ufficiale: Creare un modello JSON di modello di Azure Image Builder Bicep o ARM.

Nota

Fare riferimento a Swagger di Image Builder di Azure per le chiamate API

Quando si effettuano chiamate al servizio Azure Image Builder, fare sempre riferimento alla documentazione di Swagger, che funge da origine definitiva delle specifiche api di Azure Image Builder. Anche se la documentazione pubblica è stata aggiornata in modo da includere le maiuscole e i nomi di campo appropriati prima della versione api, la definizione di Swagger contiene dettagli precisi su ogni API AIB per assicurarsi di effettuare correttamente chiamate al servizio.

Di seguito è riportato un elenco delle modifiche alla documentazione apportate in modo che corrispondano ai nomi dei campi nell'API versione 2024-02-01:

Nella documentazione Creare un modello JSON di Modello Bicep o ARM di Image Builder di Azure:

Campi aggiornati:

  • Sostituito diverse menzioni di vmboot con vmBoot
  • Sostituito una menzione di imageVersionID con imageVersionId

Campo rimosso:

  • apiVersion: è consigliabile evitare l'inclusione di questo campo nelle richieste perché non è specificata in modo esplicito nell'API, quindi includerlo nel modello JSON può causare errori nella compilazione dell'immagine.

Nella documentazione delle opzioni di rete di Image Builder di macchine virtuali di Azure:

Campo aggiornato:

  • Sostituito una menzione di VirtualNetworkConfig con vnetConfig

Campi rimossi:

  • subnetNamevnetConfig nella proprietà : questo campo è deprecato e il nuovo campo èsubnetId
  • resourceGroupNamevnetConfig nella proprietà : questo campo è deprecato e il nuovo campo èsubnetId

Come aggiungere a una versione precedente dell'API di Image Builder di Azure

Considerazioni importanti per l'aggiunta a versioni precedenti dell'API

L'aggiunta a una versione precedente dell'API di Image Builder di Azure può garantire la compatibilità con i modelli esistenti, ma non è consigliabile a causa dei fattori seguenti:

  • Rischio di deprecazione: le versioni precedenti dell'API potrebbero essere deprecate.

  • Funzionalità mancanti: aggiungendo a una versione precedente dell'API, si perde le funzionalità e i miglioramenti più recenti introdotti nelle versioni più recenti. Questi miglioramenti migliorano spesso le prestazioni, la sicurezza e le funzionalità.

Se si vuole evitare di apportare modifiche alle proprietà nei modelli di immagine a causa delle nuove regole di distinzione tra maiuscole e minuscole, è possibile aggiungere le chiamate API di Image Builder di macchine virtuali di Azure a una versione precedente dell'API. In questo modo è possibile continuare a usare il comportamento familiare senza alcuna modifica.

Per garantire la compatibilità con i modelli esistenti, durante la creazione o l'aggiornamento di un modello di immagine, specificare la versione dell'API desiderata (ad esempio, api-version=2022-07-01) includendo il api-version parametro nella chiamata al servizio. Esempio:

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

Testare il codice

Dopo aver aggiunto alla versione precedente dell'API, testare il codice per verificare che si comporti come previsto. Assicurarsi che i modelli esistenti continuino a funzionare correttamente.

Novembre 2023

Image Builder di Azure abilita compilazioni di immagini isolate usando Istanze di Azure Container in modo graduale. L'implementazione dovrebbe essere completata entro l'inizio del 2024. I modelli di immagine esistenti continueranno a funzionare e non vi sono modifiche nel modo in cui si creano o si creano nuovi modelli di immagine.

È possibile osservare un set diverso di risorse di Azure temporanee temporaneamente nel gruppo di risorse di staging, ma ciò non influisce sulle compilazioni effettive o sul modo in cui si interagisce con Azure Image Builder. Per altre informazioni, vedere Compilazioni di immagini isolate.

Importante

Assicurarsi che la sottoscrizione sia registrata per il Microsoft.ContainerInstance provider e che non siano presenti criteri che bloccano la distribuzione delle risorse Istanze di Azure Container. Assicurarsi anche che la quota sia disponibile per le risorse Istanze di Azure Container.

Aprile 2023

È stata aggiunta una nuova funzionalità del portale per Image Builder di Azure. Cercare "Modelli di immagine" in portale di Azure, quindi fare clic su "Crea". È anche possibile iniziare a creare e convalidare immagini personalizzate all'interno del portale.

Versioni dell'API

Versione 2024-02-01

Miglioramenti

  • Nuova autoRun proprietà che consente di eseguire la compilazione dell'immagine alla creazione o all'aggiornamento del modello. Per altre informazioni, vedere Proprietà: esecuzione automatica.
  • Nuova managedResourceTags proprietà che consente di applicare tag alle risorse create dal servizio Azure Image Builder nel gruppo di risorse di staging durante la compilazione dell'immagine. Per altre informazioni, vedere Proprietà: managedResourceTags.
  • Nuova containerInstanceSubnetId proprietà che consente di specificare una subnet in cui verrà distribuita l'istanza di Azure Container per le build isolate. Questo campo può essere specificato solo se subnetId è specificato anche e deve trovarsi nella stessa Rete virtuale della subnet specificata in subnetId. Per altre informazioni, vedere Bring your own Build VM subnet and bring your own ACI subnet (Bring Your Own Vm Subnet e Bring Your Own ACI Subnet).
  • Aggiunta del supporto per l'aggiornamento della vmProfile proprietà, inclusi i campi seguenti:
    • vmSize
    • osDiskSizeGB
    • userAssignedIdentities
    • vnetConfig
      • subnetId
      • containerInstanceSubnetId Per altre informazioni sulla vmProfile proprietà, vedere vmProfile.

Modifiche API versione 2024-02-01 introduce una modifica di rilievo che impone la distinzione tra maiuscole e minuscole per tutti i campi. Ciò significa che la maiuscola delle lettere nelle richieste API deve corrispondere esattamente al formato previsto. Se si invia una richiesta API all'API di Image Builder versione 2024-02-01 e successive a campi non corretti o non riconosciuti, il servizio lo rifiuterà. Verrà visualizzata una risposta di errore che indica che la richiesta non è valida. Per altre informazioni, vedere Modifica di rilievo: distinzione tra maiuscole e minuscole.

Versione 2023-07-01

Prossimamente

Supporto per l'aggiornamento delle destinazioni di distribuzione di Azure Compute Gallery.

Modifiche

Nuova errorHandling proprietà. Questa proprietà fornisce agli utenti un maggiore controllo sulla gestione degli errori durante il processo di compilazione delle immagini. Per altre informazioni, vedere errorHandling

Versione 2022-07-01

Miglioramenti

  • Aggiunta del supporto per usare la versione più recente dell'immagine archiviata nella raccolta di calcolo di Azure come origine per il modello di immagine
  • Aggiunta versioning per supportare la generazione di numeri di versione per le distribuzioni di immagini. Per altre informazioni, vedere Proprietà: controllo delle versioni
  • Aggiunta del supporto per la configurazione per area durante la distribuzione in Azure Compute Gallery. Per altre informazioni, vedere Distribute:targetRegions
  • Aggiunta del nuovo tipo di convalida 'File'. Per altre informazioni, vedere Convalidare le proprietà
  • I dischi rigidi virtuali possono ora essere distribuiti a un BLOB o a un contenitore personalizzato in un account di archiviazione personalizzato. Per altre informazioni, vedere Distribuire: VHD
  • Aggiunta del supporto per l'uso di un'immagine della raccolta condivisa diretta come origine per il modello di immagine

Modifiche

  • replicationRegions è ora deprecato per le distribuzioni della raccolta. Per altre informazioni, usare le aree replicate dalla raccolta
  • I dischi rigidi virtuali possono ora essere distribuiti a un BLOB o a un contenitore personalizzato in un account di archiviazione personalizzato
  • targetRegions matrice aggiunta e applicata solo alla distribuzione del tipo "SharedImage". Per altre informazioni su targetRegions, vedere Raccolta di calcolo di Azure
  • Aggiunta del supporto per l'uso di un'immagine della raccolta condivisa diretta come origine per il modello di immagine. Raccolta condivisa diretta è attualmente in anteprima.
  • I trigger sono ora disponibili in anteprima pubblica per configurare le compilazioni automatiche delle immagini. Per altre informazioni, vedere Come usare i trigger AIB

Versione 2022-02-14

Miglioramenti

Versione 2021-10-01

Modifica di rilievo

La versione API 2021-10-01 introduce una modifica allo schema di errore che farà parte di ogni versione futura dell'API. Se sono presenti automazioni di Image Builder per macchine virtuali di Azure, tenere presente il nuovo output degli errori quando si passa alla versione 2021-10-01 dell'API o a una versione successiva. Dopo essere passati alla versione più recente dell'API, è consigliabile non ripristinare una versione precedente, perché sarà necessario modificare di nuovo l'automazione per produrre lo schema di errore precedente. Non è previsto che lo schema di errore venga modificato di nuovo nelle versioni future.

Output degli errori per la versione 2020-02-14 e per le versioni precedenti
{ 
  "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." 
} 
Output degli errori per la versione 2021-10-01 e per le versioni precedenti
{ 
  "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." 
  }
}

Miglioramenti

  • Aggiunta del supporto per build VM MSIs.
  • Aggiunta del supporto per la personalizzazione delle dimensioni della macchina virtuale proxy.

Versione 2020-02-14

Miglioramenti

  • Aggiunta del supporto per la creazione di immagini dalle origini seguenti:
    • Immagine gestita
    • Raccolta di calcolo di Azure
    • Repository di immagini della piattaforma (incluso il piano di acquisto di immagini della piattaforma)
  • Aggiunta del supporto per le personalizzazioni seguenti:
    • Shell (Linux): script o inline
    • PowerShell (Windows): script o inline, esecuzione con privilegi elevati, esecuzione come sistema
    • File (Linux e Windows)
    • Riavvio di Windows (Windows)
    • Windows Update (Windows): criteri di ricerca, filtri e limite di aggiornamento
  • Aggiunta del supporto per i tipi di distribuzione seguenti:
    • VHD (disco rigido virtuale)
    • Immagine gestita
    • Raccolta di calcolo di Azure
  • Altre funzionalità:
    • Aggiunta del supporto per i clienti per l'uso della propria rete virtuale
    • Aggiunta del supporto per i clienti per personalizzare la macchina virtuale di compilazione (dimensioni della macchina virtuale, dimensioni del disco del sistema operativo)
    • Aggiunta del supporto per Microsoft Windows Installer (MSI) assegnato dall'utente (per la procedura di personalizzazione/distribuzione)
    • Aggiunta del supporto per le immagini gen2

API di anteprima

Le API seguenti sono deprecate, ma ancora supportate:

  • Versione 2019-05-01-preview

Passaggi successivi

Altre informazioni su Image Builder di macchine virtuali.