Almacenamiento y uso compartido de imágenes en Azure Compute Gallery

Se aplica a: ✔️ Máquinas virtuales Linux ✔️ Máquinas virtuales Windows ✔️ Conjuntos de escalado flexibles ✔️ Conjuntos de escalado uniformes

Una imagen es una copia de una VM completa (incluidos los discos de datos asociados) o, simplemente, el disco del sistema operativo, según cómo se cree. Cuando crea una VM desde la imagen, la copia de los VHD de la imagen se usa para crear los discos para la nueva VM. La imagen permanece en el almacenamiento y puede usarse una y otra vez para crear nuevas VM.

Si tiene un gran número de imágenes que debe mantener y quiere que estén disponibles en toda la empresa, puede usar una instancia de Azure Compute Gallery como repositorio.

Cuando se usa una galería para almacenar imágenes, se crean varios tipos de recursos:

Recurso Descripción
Origen de imagen Se trata de un recurso que se puede usar para crear una versión de imagen en una galería. Un origen de imagen puede ser una máquina virtual de Azure existente, ya sea generalizada o especializada, una imagen administrada, una instantánea, un disco duro virtual o una versión de imagen de otra galería.
Galería Al igual que Azure Marketplace, una galería es un repositorio para administrar y compartir imágenes y otros recursos, pero con control sobre quién tiene acceso.
Definición de la imagen Las definiciones de imagen se crean dentro de una galería y contienen información sobre la imagen y los requisitos para usarla a fin de crear máquinas virtuales. Esto incluye si la imagen es Windows o Linux, notas de la versión y los requisitos de memoria mínima y máxima. Es una definición de un tipo de imagen.
Versión de la imagen Una versión de la imagen es lo que se usa para crear una VM cuando se usa una galería. Puede tener varias versiones de una imagen según sea necesario para su entorno. Al igual que una imagen administrada, cuando se usa una versión de la imagen para crear una VM, la versión de la imagen se usa para crear nuevos discos para la VM. Las versiones de las imágenes pueden usarse varias veces.

Gráfico que muestra cómo puede tener varias versiones de una imagen en la galería

Definiciones de imagen

Las definiciones de la imagen son una agrupación lógica de las versiones de una imagen. La definición de la imagen contiene información acerca de por qué se creó la imagen y también incluye metadatos de la imagen, como para qué sistema operativo sirve, las características que admite y otra información sobre el uso de la imagen. Una definición de imagen es como un plan para todos los detalles que rodean la creación de una imagen específica. No se implementa una VM desde una definición de imagen, sino desde las versiones de imágenes creadas a partir de la definición.

Hay tres parámetros para cada definición de imagen que se usan en combinación: Publisher, Offer y SKU. Se utilizan para buscar una definición de imagen específica. Puede tener definiciones de imágenes que comparten uno o dos valores, pero no los tres. Por ejemplo, estas son las tres definiciones de imágenes y sus valores:

Definición de imágenes Publicador Oferta Sku
myImage1 Contoso Finance Back-end
myImage2 Contoso Finance Front-end
myImage3 Prueba Finance Front-end

Los tres tienen conjuntos de valores únicos. El formato es similar a cómo puede especificar actualmente el editor, la oferta y la SKU para las imágenes de Azure Marketplace en Azure PowerShell para obtener la última versión de una imagen de Marketplace. Cada definición de imagen debe tener un conjunto único de estos valores.

Los siguientes parámetros determinan qué tipos de versiones de imagen pueden contener:

  • Estado del sistema operativo: puede establecer el estado del sistema operativo en generalizado o especializado. Este campo es obligatorio.
  • Sistema operativo: puede ser Windows o Linux. Este campo es obligatorio.
  • Generación de Hyper-V: especifique si la imagen se creó a partir de un disco duro virtual de Hyper-V de generación 1 o generación 2. El valor predeterminado es la generación 1.

Las definiciones de imagen contienen metadatos para la imagen para permitir la agrupación de imágenes que admiten las mismas características, plan, estado del sistema operativo, tipo de sistema operativo, etc. Los siguientes son otros parámetros que se pueden establecer en la definición de la imagen para que pueda realizar un seguimiento más sencillo de sus recursos:

  • Descripción: la descripción de uso para proporcionar información más detallada sobre por qué existe la definición de la imagen. Por ejemplo, podría tener una definición de imagen para el servidor front-end que tenga la aplicación preinstalada.

  • CLUF: puede usarse para señalar un contrato de licencia de usuario final específico para la definición de la imagen.

  • Declaración de privacidad y Notas de la versión: almacene las notas de la versión y las declaraciones de privacidad en el almacenamiento Azure y proporcione un identificador URI para acceder a ellas como parte de la definición de imagen.

  • Fecha de finalización del ciclo de vida: establezca una fecha predeterminada después de la cual no se debe usar la imagen, aplicable a todas las versiones de la imagen de la definición de imagen. Las fechas finales del ciclo de vida son informativas; los usuarios seguirán teniendo la posibilidad de crear máquinas virtuales a partir de imágenes y versiones tras alcanzarse la fecha final del ciclo de vida.

  • Etiqueta: puede agregar etiquetas al crear la definición de imagen. Para más información sobre las etiquetas, consulte Uso de etiquetas para organizar los recursos.

  • Número mínimo y máximo de vCPU y recomendaciones de memoria: si la imagen tiene vCPU y recomendaciones de memoria, puede adjuntar esa información a la definición de imagen.

  • Tipos de disco no permitidos: puede proporcionar información acerca de las necesidades de almacenamiento para la máquina virtual. Por ejemplo, si la imagen no es adecuada para los discos HDD estándar, agréguelos a la lista de no permitidos.

  • Información del plan de compra para imágenes de Marketplace: -PurchasePlanPublisher, -PurchasePlanNamey -PurchasePlanProduct. Para más información sobre el plan de compra, consulte Buscar imágenes en Azure Marketplace e Indicación de la información del plan de compra de Azure Marketplace al crear imágenes.

  • Architecture

  • Las características permiten especificar características adicionales y SecurityType que se admiten en la imagen en función del tipo de galería:

    Características Valores aceptados Definición Compatible con
    IsHibernateSupported True, False Crear máquinas virtuales compatibles con la hibernación. Privado, compartido directo, comunidad
    IsAcceleratedNetworkSupported True, False Cree máquinas virtuales con redes aceleradas habilitadas. Cuando se establece en True en la definición de imagen, no es posible capturar máquinas virtuales que no admitan redes aceleradas. Privado, compartido directo, comunidad
    DiskControllerType ["SCSI", "NVMe"], ["SCSI"] Establezca esta opción para usar el tipo de disco SCSI o NVMe. Las máquinas virtuales y los discos NVMe solo se pueden capturar en definiciones de imagen etiquetadas para admitir NVMe. Privado, compartido directo, comunidad

    Al especificar un SecurityType mediante el parámetro features, se limitan las características de seguridad habilitadas en la máquina virtual. Algunos tipos limitados, en función del tipo de galería en el que se almacenan:

    SecurityType Definición Compatible con
    ConfidentialVMSupported Se trata de una imagen genérica de Gen2 que no contiene un blob VMGS. La máquina virtual Gen2 o la máquina virtual confidencial se pueden crear a partir de este tipo de imagen Privado, compartido directo, comunidad
    Máquina virtual confidencial Solo se pueden crear máquinas virtuales confidenciales a partir de este tipo de imagen Privados
    TrustedLaunchSupported Se trata de una imagen genérica de Gen2 que no contiene el blob VMGS. La máquina virtual gen2 o TrustedLaunch se pueden crear a partir de este tipo de imagen. Privado, compartido directo, comunidad
    TrustedLaunch Solo se puede crear una máquina virtual TrustedLaunch a partir de este tipo de imagen Privados
    TrustedLaunchAndConfidentialVmSupported Se trata de una imagen genérica de Gen2 que no contiene el blob VMGS. La máquina virtual Gen2, TrustedLaunch o ConfidentialVM se puede crear a partir de este tipo de imagen. Privado, compartido directo, comunidad

    Para obtener más información, consulte los ejemplos de la CLI para agregar características de definición de imagen y SecurityType o los ejemplos de PowerShell.

    **ConfidentialVM solo se admite en las regiones en las que esté disponible. Aquí puede encontrar las regiones admitidas.

Versiones de la imagen

Una versión de la imagen es lo que se usa para crear una VM. Puede tener varias versiones de una imagen según sea necesario para su entorno. Cuando se usa una versión de la imagen para crear una VM, la versión de la imagen se usa para crear nuevos discos para la VM. Las versiones de las imágenes pueden usarse varias veces.

Las propiedades de una versión de imagen son las siguientes:

  • Número de versión. Se usa como nombre de la versión de la imagen. Siempre se plasma con el siguiente formato: VersiónPrincipal.VersiónSecundaria.Revisión. Cuando se especifica que se use la versión más reciente al crear una VM, la imagen más reciente se elige en función del valor de VersiónPrincipal más alto, seguido del valor de VersiónSecundaria y de Revisión.
  • Origen. El origen puede ser una VM, un disco administrado, una instantánea, una imagen administrada u otra versión de la imagen.
  • Fecha final del ciclo de vida. Indique la fecha final del ciclo de vida de la versión de la imagen. Las fechas finales del ciclo de vida son informativas; los usuarios seguirán teniendo la posibilidad de crear máquinas virtuales a partir de versiones tras alcanzarse la fecha final del ciclo de vida.

Imágenes generalizadas y especializadas

Hay dos estados del sistema operativo compatibles con Azure Compute Gallery. Normalmente, las imágenes requieren que la máquina virtual usada para crear la imagen se haya generalizado antes de tomar la imagen. La generalización es un proceso que quita la información específica del equipo y del usuario de la máquina virtual. En el caso de Linux, puede usar los parámetros waagent-deprovision o -deprovision+user. En Windows, se usa la herramienta Sysprep.

Las máquinas virtuales especializadas no han pasado por un proceso para quitar la información y las cuentas específicas de la máquina. Además, las máquinas virtuales creadas a partir de imágenes especializadas no tienen un osProfile asociado a ellas. Esto significa que las imágenes especializadas tendrán algunas limitaciones, además de algunas ventajas.

  • Las VM y los conjuntos de escalado creados a partir de imágenes especializadas pueden estar en funcionamiento más rápido. Dado que se crean a partir de un origen que ya ha pasado a través del primer arranque, las máquinas virtuales creadas a partir de estas imágenes se inician más rápido.
  • Las cuentas que se podrían usar para iniciar sesión en la máquina virtual también se pueden usar en cualquier máquina virtual creada mediante la imagen especializada que se crea a partir de esa máquina virtual.
  • Las máquinas virtuales tendrán el nombre de equipo de la máquina virtual de la que se tomó la imagen. Debe cambiar el nombre de equipo para evitar colisiones.
  • osProfile es la forma en que se pasa información confidencial a la máquina virtual, mediante secrets. Esto puede producir problemas al usar KeyVault, WinRM y otras funciones que usan secrets en osProfile. En algunos casos, puede usar identidades Managed Service Identity (MSI) para solucionar estas limitaciones.

Actualización de recursos

Una vez que se crean, puede realizar algunos cambios en los recursos de la galería. Estos se limitan a:

Azure Compute Gallery:

  • Descripción

Definición de la imagen:

  • vCPU recomendadas:
  • Memoria recomendada
  • Descripción
  • Fecha final del ciclo de vida
  • ReleaseNotes

Versión de la imagen:

  • Recuento de réplicas regionales
  • Regiones de destino
  • Excluir de la versión más reciente
  • Fecha final del ciclo de vida

Uso compartido

Hay tres formas principales de compartir imágenes en una instancia de Azure Compute Gallery en función de con quién quiera compartirlas:

Uso compartido con: Personas Grupos Entidad de servicio Todos los usuarios de una suscripción (o) inquilino específicos Públicamente con todos los usuarios de Azure
Uso compartido de RBAC No No
RBAC + Galería compartida directa No
RBAC + Galería de comunidad No

Qué permisos RBAC son necesarios para crear una imagen ACG:

Los usuarios pueden crear imágenes ACG a partir de varios orígenes, incluidos máquinas virtuales, discos o instantáneas y VHD. En la sección se describen los distintos permisos de usuario necesarios para crear una imagen de Azure Compute Gallery. Los identificadores sin los permisos necesarios no podrán crear imágenes ACG.

Tipo de origen Permisos necesarios
Máquina virtual Escribir
Disco/instantánea Escribir
VHD Escritura (listKeys)
Imagen administrada Leer
Imagen de la galería Leer

Consulte nuestra documentación para obtener información adicional sobre roles integrados de Azure, para conceder permisos de RBAC

Replicación superficial

Al crear una versión de imagen, puede establecer el modo de replicación en superficial para el desarrollo y la prueba. La replicación superficial omite la copia de la imagen, por lo que la versión de la imagen está lista más rápido. Pero también significa que no se puede implementar un gran número de máquinas virtuales a partir de esa versión de imagen. Es similar a la forma en que funcionaban las imágenes administradas anteriores.

La replicación superficial también puede ser útil si tiene imágenes grandes (hasta 32 TB) que no se implementan con frecuencia. Dado que la imagen de origen no se copia, se pueden usar discos más grandes. Sin embargo, tampoco se pueden usar para implementar un gran número de máquinas virtuales simultáneamente.

Para establecer una imagen para la replicación superficial, use --replication-mode Shallow con la CLI de Azure.

Compatibilidad con SDK

Los siguientes SDK admiten la creación de instancias de Azure Compute Gallery:

Plantillas

Puede crear recursos de Azure Compute Gallery mediante plantillas. Hay varias plantillas de inicio rápido disponibles:

Preguntas más frecuentes

Para enumerar todos los recursos de Azure Compute Gallery de las suscripciones a las que tiene acceso en Azure Portal, siga estos pasos:

  1. Abra Azure Portal.
  2. Desplácese hacia abajo en la página y seleccione Todos los recursos.
  3. Seleccione todas las suscripciones en las que quiera enumerar todos los recursos.
  4. Busque recursos del tipo Azure Compute Gallery.

Para enumerar todos los recursos de Azure Compute Gallery, de todas las suscripciones para las que tiene permiso, use el comando siguiente en la CLI de Azure:

   az account list -otsv --query "[].id" | xargs -n 1 az sig list --subscription