Novedades de Azure VM Image Builder
Se aplica a: ✔️ Máquinas virtuales Linux ✔️ Máquinas virtuales Windows ✔️ Conjuntos de escalado flexibles ✔️ Conjuntos de escalado uniformes
Este artículo contiene todos los principales cambios de API y actualizaciones de características para el servicio Azure VM Image Builder (AIB).
Actualizaciones
Septiembre de 2024
La creación automática de imágenes a través de desencadenadores se desactivará si la compilación de la plantilla de imagen ha producido un error varias veces consecutivamente, con el fin de evitar errores de compilación innecesarios.
Todavía puede compilar manualmente la plantilla de imagen. Una vez que una compilación manual se realiza correctamente, se reactivarán los desencadenadores automáticos.
Tenga en cuenta que este comportamiento es el mismo independientemente de la versión de API que use para el recurso de plantilla de imagen.
Mayo de 2024
Cambio importante: distinción entre mayúsculas y minúsculas
A partir del 21 de mayo de 2024, la API de Azure VM Image Builder versión 2024-02-01 y posteriores aplicará la distinción de mayúsculas y minúsculas para todos los campos. Esto significa que la mayúsculas de las letras de las solicitudes de API debe coincidir exactamente con el formato esperado.
Importante
Nota importante para los usuarios existentes de Azure Image Builder
Si es un usuario existente de Azure VM Image Builder, asegúrese de que este cambio no afectará a los recursos existentes. La aplicación de distinción entre mayúsculas y minúsculas solo se aplica a recursos recién creados mediante API versión 2024-02-01 y posteriores. Los recursos existentes seguirán funcionando según lo previsto sin cambios.
Si tiene algún problema relacionado con la distinción entre mayúsculas y minúsculas, consulte la documentación actualizada de la API de Azure Image Builder para obtener instrucciones.
Anteriormente, la API de Azure Image Builder era más perdonada en términos de caso, pero avanzar, la precisión es fundamental. Al realizar llamadas API, asegúrese de usar las mayúsculas y minúsculas correctas para los nombres de campo, los parámetros y los valores. Por ejemplo, si un campo se denomina “vmBoot,” debe usar “vmBoot” (no “VMBoot” o “vmboot”).
Si envía una solicitud de API a la versión 2024-02-01 de la API de Azure Image Builder y versiones posteriores con campos incorrectos o no reconocidos, el servicio lo rechazará. Recibirá una respuesta de error que indica que la solicitud no es válida. El error tendrá un aspecto similar al siguiente:
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.
El mensaje de error mencionará un "campo desconocido" y le dirigirá a la documentación oficial: Creación de un archivo Bicep de Azure Image Builder o una plantilla JSON de ARM.
Nota:
Referencia de Swagger de Azure Image Builder para llamadas API
Al realizar llamadas al servicio Azure Image Builder, haga referencia siempre a la documentación de Swagger, que sirve como origen definitivo de verdad para las especificaciones de API de Azure Image Builder. Aunque la documentación pública se ha actualizado para incluir los nombres de campo y mayúsculas adecuados antes de la versión de la API, la definición de Swagger contiene detalles precisos sobre cada API de AIB para asegurarse de que realiza llamadas al servicio correctamente.
A continuación se muestra una lista de los cambios de documentación realizados para que coincidan con los nombres de campo de la versión de API 2024-02-01:
En la documentación Creación de una plantilla JSON de Azure Image Builder o una plantilla de ARM:
Campos actualizados:
- Se han reemplazado varias menciones de
vmboot
porvmBoot
- Se ha reemplazado una mención de
imageVersionID
porimageVersionId
Campo quitado:
apiVersion
: Se recomienda evitar la inclusión de este campo en las solicitudes porque no se especifica explícitamente en nuestra API, por lo que incluirlo en la plantilla JSON puede provocar errores en la compilación de imágenes.
En la documentación las opciones de red de Azure VM Image Builder:
Campo actualizado:
- Se ha reemplazado una mención de
VirtualNetworkConfig
porvnetConfig
Campos quitados:
subnetName
en lavnetConfig
propiedad : este campo está en desuso y el nuevo campo estásubnetId
resourceGroupName
en lavnetConfig
propiedad : este campo está en desuso y el nuevo campo estásubnetId
Anclar a una versión anterior de Azure Image Builder API
Consideración importante para anclar a versiones anteriores de API
Anclar a una versión anterior de la API de Azure Image Builder puede proporcionar compatibilidad con las plantillas existentes, pero no se recomienda debido a los siguientes factores:
Riesgo de desuso: Las versiones anteriores de la API pueden quedar en desuso.
Características que faltan: Al anclar a una versión anterior de la API, se pierden las características y mejoras más recientes introducidas en las versiones más recientes. Estas mejoras suelen mejorar el rendimiento, la seguridad y la funcionalidad.
Si desea evitar realizar cambios en las propiedades de las plantillas de imagen debido a las nuevas reglas de confidencialidad de mayúsculas y minúsculas, tiene la opción de anclar las llamadas API de Azure VM Image Builder a una versión anterior de la API. Esto le permite seguir usando el comportamiento conocido sin modificaciones.
Para garantizar la compatibilidad con las plantillas existentes, al crear o actualizar una plantilla de imagen, especifique la versión de API deseada (por ejemplo, api-version=2022-07-01) mediante la inclusión del parámetro api-version
en la llamada al servicio. Ejemplo:
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}?api-version=2022-07-01
Probar el código
Después de anclar a la versión anterior de la API, pruebe el código para comprobar que se comporta según lo previsto. Asegúrese de que las plantillas existentes siguen funcionando correctamente.
noviembre de 2023
Azure Image Builder habilita compilaciones de imágenes aisladas mediante Azure Container Instances de forma por fases. Se espera que el lanzamiento se complete a principios de 2024. Las plantillas de imagen existentes seguirán funcionando y no habrá ningún cambio en la forma en que cree o compile nuevas plantillas de imagen.
Es posible que observe que un conjunto diferente de recursos transitorios de Azure aparece temporalmente en el grupo de recursos de almacenamiento provisional, pero eso no afecta a las compilaciones reales ni a la forma en que interactúa con Azure Image Builder. Para más información, consulte Compilaciones de imágenes aisladas.
Importante
Asegúrese de que la suscripción está registrada para el proveedor de Microsoft.ContainerInstance
y de que no haya ninguna directiva que bloquee la implementación de recursos de Azure Container Instances. Asegúrese también de que la cuota está disponible para los recursos de Azure Container Instances.
abril de 2023
Se agregó una nueva funcionalidad de Azure Portal Image Builder. Busque "Plantillas de imagen" en el Azure Portal y, a continuación, haga clic en "Crear". También puede empezar aquí a crear y validar imágenes personalizadas dentro del portal.
Versiones de la API
Versión 2024-02-01
Mejoras
- Nueva propiedad
autoRun
que permite ejecutar la compilación de la imagen en la creación o actualización de plantillas. Para obtener más información, vea Propiedades: autoRun. - Nueva propiedad
managedResourceTags
que permite aplicar etiquetas a los recursos que crea el servicio Azure Image Builder en el grupo de recursos de almacenamiento provisional durante la compilación de imágenes. Para obtener más información, vea Propiedades: managedResourceTags. - Nueva propiedad
containerInstanceSubnetId
que permite especificar una subred en la que se implementará Azure Container Instance para compilaciones aisladas. Este campo solo se puede especificar si también se especificasubnetId
y debe estar en la misma red virtual que la subred especificada ensubnetId
. Para obtener más información, vea Traiga su propia subred de máquina virtual de compilación y traiga su propia subred de ACI. - Se ha agregado compatibilidad para actualizar la propiedad
vmProfile
, incluidos los campos siguientes:vmSize
osDiskSizeGB
userAssignedIdentities
vnetConfig
subnetId
containerInstanceSubnetId
Para obtener más información sobre la propiedadvmProfile
, vea vmProfile.
Cambios API versión 2024-02-01 presenta un cambio importante que aplica la distinción entre mayúsculas y minúsculas para todos los campos. Esto significa que la mayúsculas de las letras de las solicitudes de API debe coincidir exactamente con el formato esperado. Si envía una solicitud de API a la versión 2024-02-01 de la API de Azure Image Builder y versiones posteriores con campos incorrectos o no reconocidos, el servicio lo rechazará. Recibirá una respuesta de error que indica que la solicitud no es válida. Para obtener más información, vea Cambio importante: Distinción entre mayúsculas y minúsculas.
Versión 2023-07-01
Próximamente
Compatibilidad con la actualización de destinos de distribución de Azure Compute Gallery.
Cambios
Nueva propiedad errorHandling
. Esta propiedad proporciona a los usuarios más control sobre cómo se controlan los errores durante el proceso de creación de imágenes. Para obtener más información, consulte errorHandling
Versión 1-7-2022
Mejoras
- Se ha agregado compatibilidad para usar la versión de imagen más reciente almacenada en Azure Compute Gallery como origen de la plantilla de imagen
- Se ha agregado
versioning
para admitir la generación de números de versión para distribuciones de imágenes. Para obtener más información, vea propiedades: control de versiones - Se ha agregado compatibilidad con la configuración por región al distribuir a Azure Compute Gallery. Para obtener más información, consulte Distribute:targetRegions
- Se ha agregado el nuevo tipo de validación "Archivo". Para obtener más información, vea validar propiedades
- Los discos duros virtuales ahora se pueden distribuir a un blob o contenedor personalizados en una cuenta de almacenamiento personalizada. Para obtener más información, consulte Distribute:VHD
- Se ha agregado compatibilidad con el uso de una imagen de la Galería compartida directa como origen de la plantilla de imagen
Cambios
replicationRegions
ahora está en desuso para las distribuciones de la galería. Para más información, use gallery-replicated-regions- Los discos duros virtuales ahora se pueden distribuir a un blob o contenedor personalizados en una cuenta de almacenamiento personalizada
- Matriz
targetRegions
agregada y aplicada solo al tipo distribute "SharedImage". Para más información sobretargetRegions
, consulte Azure Compute Gallery - Se ha agregado compatibilidad con el uso de una imagen de la Galería compartida directa como origen de la plantilla de imagen. La Galería compartida directa se encuentra actualmente en versión preliminar.
- Los desencadenadores ya están disponibles en versión preliminar pública para configurar compilaciones automáticas de imágenes. Para obtener más información, consulte Cómo usar desencadenadores de AIB
Versión 2022-02-14
Mejoras
- Compatibilidad con la validación
- Shell (Linux): script o insertado
- PowerShell (Windows): script o insertado, ejecución con privilegios elevados, ejecución como sistema
- Modo de solo validación de origen
- Compatibilidad con grupos de recursos de almacenamiento provisional personalizados
Versión 2021-10-01
Cambio importante
La versión 2021-10-01 de la API presenta un cambio en el esquema de error que formará parte de cada versión futura de la API. Si tiene automatizaciones de Azure VM Image Builder, tenga en cuenta el nuevo error que se genera al cambiar a la versión 2021-10-01 de la API o posterior. Se recomienda, después de cambiar a la versión más reciente de la API, que no revierta a una versión anterior, ya que tendrá que cambiar la automatización de nuevo para generar el esquema de error anterior. No se prevé volver a cambiar el esquema de errores en futuras versiones.
Generación del error en la versión 2020-02-14 y versiones anteriores
{
"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."
}
Generación del error en la versión 2021-10-01 y versiones posteriores
{
"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."
}
}
Mejoras
- Se ha agregado compatibilidad con MSI de VM de compilación.
- Se ha agregado compatibilidad con la personalización del tamaño de VM de proxy.
Versión 2020-02-14
Mejoras
- Se ha agregado compatibilidad para crear imágenes a partir de los siguientes orígenes:
- Imagen administrada
- Azure Compute Gallery
- Repositorio de imágenes de plataforma (incluido plan de compra de imágenes de plataforma)
- Se ha agregado compatibilidad con las siguientes personalizaciones:
- Shell (Linux): script o insertado
- PowerShell (Windows): script o insertado, ejecución con privilegios elevados, ejecución como sistema
- Archivo (Linux y Windows)
- Reiniciar Windows (Windows)
- Windows Update (Windows): con criterios de búsqueda, filtros y límite de actualización
- Se ha agregado compatibilidad con los siguientes tipos de distribución:
- VHD (disco duro virtual)
- Imagen administrada
- Azure Compute Gallery
- Otras características:
- Se ha agregado compatibilidad para que los clientes usen su propia red virtual.
- Se ha agregado compatibilidad para que los clientes personalicen la VM de compilación (tamaño de la VM, tamaño del disco del sistema operativo).
- Se ha agregado compatibilidad con Microsoft Windows Installer (MSI) asignado por el usuario (para personalizar o distribuir pasos).
- Se ha agregado compatibilidad con imágenes de Gen2.
API en versión preliminar
Las siguientes API están en desuso, pero todavía son compatibles:
- Versión preliminar 2019-05-01
Pasos siguientes
Obtenga más información sobre VM Image Builder.