Consideraciones de VPC al utilizar imágenes personalizadas en un catálogo privado
Si tiene previsto compartir o publicar una imagen personalizada en otras cuentas de la empresa, debe crear un catálogo privado. Un catálogo privado te permite gestionar el acceso a los productos para varias cuentas, siempre que dichas cuentas pertenezcan a la misma empresa. Puede compartir cualquier imagen personalizada de servidor virtual existente de x86 con un catálogo privado, excepto las imágenes cifradas.
En la consola, puede encontrar imágenes personalizadas en un catálogo privado haciendo clic en el Menú de navegación icono. > Infraestructura
> Recursos de computación > Imágenes > Imágenes del catálogo
Para obtener más información sobre los catálogos privados, consulte la guía de aprendizaje Incorporación de una imagen de servidor virtual para VPC.
Las imágenes personalizadas también se pueden publicar en el catálogo IBM Cloud® y en otras cuentas (no empresariales). Este proceso requiere la incorporación al Centro de socios deIBM Cloud®.
Requisitos previos y limitaciones
Para poder importar una imagen personalizada a un catálogo privado, deben completarse los siguientes elementos.
- Crear un catálogo privado
- Cree e importe la imagen personalizada en IBM Cloud VPC
Las imágenes personalizadas en un catálogo privado tienen las restricciones siguientes:
- Debe ser una imagen x86
- No se puede cifrar
- No se puede utilizar con un perfil nativo
- Solo puede existir en una versión de una oferta de producto de catálogo en un catálogo privado a la vez
- Debe estar en estado
available
Uso de referencias de imágenes entre cuentas en un catálogo privado en la consola
Las instancias que suministre pertenecen a su cuenta. Las imágenes compartidas con su cuenta a través de un catálogo privado pueden pertenecer a otras cuentas. Al suministrar una instancia desde una imagen que pertenece a otra cuenta o desde una plantilla de instancia que especifica una imagen de este tipo, la imagen sigue perteneciendo a la otra cuenta aunque la instancia pertenezca a su cuenta. Es posible que exista una referencia a dicha imagen en los detalles de la instancia y los recursos relacionados. Por ejemplo, los detalles sobre su volumen de arranque y cualquier instantánea que se haya creado a partir de ese volumen de arranque podrían hacer referencia a esa imagen. Independientemente de sus autorizaciones, no puede acceder a la imagen referenciada por su ID o CRN y los intentos fallan como si la imagen no existiera.
Además, es posible que la imagen referenciada tenga el mismo nombre que una imagen personalizada en su cuenta. Pero estos nombres de imagen son para dos imágenes diferentes en dos cuentas diferentes. El ID y el CRN identifican de forma exclusiva una imagen en IBM Cloud®. Para evitar una posible recuperación o uso de la imagen incorrecta, al cortar y pegar la identidad de una imagen fuera de la interfaz de usuario, utilice su ID o CRN, en lugar de su nombre.
Utilización de referencias de imagen entre cuentas en un catálogo privado en la CLI
Las instancias que suministre pertenecen a su cuenta. Las imágenes compartidas con su cuenta a través de un catálogo privado pueden pertenecer a otras cuentas. Al suministrar una instancia desde una imagen que pertenece a otra cuenta o desde una plantilla de instancia que especifica una imagen de este tipo, la imagen sigue perteneciendo a la otra cuenta aunque la instancia pertenezca a su cuenta. Es posible que exista una referencia a dicha imagen en los detalles de la instancia y los recursos relacionados. Por ejemplo, los detalles sobre su volumen de arranque y cualquier instantánea que se haya creado a partir de ese volumen de arranque podrían hacer referencia a esa imagen. Independientemente de sus autorizaciones, no puede acceder a este tipo de imagen personalizada por su ID y los intentos fallan como si la imagen no existiera.
Las referencias de imagen se utilizan en algunos lugares diferentes de la CLI. Por ejemplo, si utiliza el mandato ibmcloud is instance para recuperar datos de instancia, verá lo siguiente en la salida.
Image ID Name
r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999 test-image
Si intenta recuperar información sobre esta imagen utilizando su ID,
ibmcloud is image r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999
entonces este intento falla con un error como el ejemplo siguiente:
FAILED
Response HTTP Status Code: 404
Error code: not_found
Error message: The requested resource does not exist, or cannot be accessed.
Error target name: id, type: parameter
Trace ID: d8b4d382-2993-4a89-a371-1db991b510d8
Este error significa que la imagen no existe en su cuenta. Si la instancia se ha suministrado utilizando una imagen de catálogo compartido en otra cuenta, esta salida es la salida que siempre ve incluso si la imagen existe en la cuenta propietaria.
Además, es posible que la imagen referenciada tenga el mismo nombre que una imagen personalizada en su cuenta. Pero estos nombres de imagen son para dos imágenes diferentes en dos cuentas diferentes. Aunque la CLI utiliza el ID y el nombre para identificar una imagen, sólo el ID identifica de forma exclusiva una imagen en IBM Cloud®.
Verifique que la automatización basada en CLI maneja correctamente las anomalías de búsqueda de referencia de imagen y no presuponga que se han suprimido imágenes inaccesibles, incluso si se ejecuta con acceso completo a las imágenes. Para evitar una posible recuperación o el uso de la imagen incorrecta por Nombre, especifique el ID de imagen en su lugar.
Utilización de referencias de imagen entre cuentas en un catálogo privado en la API
Las instancias que suministre pertenecen a su cuenta. Las imágenes que se comparten con su cuenta a través de un catálogo privado pueden pertenecer a otras cuentas. Al suministrar una instancia desde una imagen que pertenece a otra cuenta o
desde una plantilla de instancia que especifica una imagen de este tipo, la imagen sigue perteneciendo a la otra cuenta aunque la instancia pertenezca a su cuenta. Es posible que exista una referencia a dicha imagen en los detalles de la instancia
y los recursos relacionados. Por ejemplo, los detalles sobre su volumen de arranque y cualquier instantánea que se cree a partir de ese volumen de arranque podrían hacer referencia a esa imagen. Independientemente de las autorizaciones, no
puede acceder a una imagen de este tipo mediante su id, crn o href y los intentos fallan como si la imagen no existiera.
En la API, aparece una referencia de imagen en lugares como las propiedades image de los esquemas de respuesta Instance y BareMetalServerInitialization y en las propiedades source_image de
los esquemas de respuesta Volume y Snapshot. El ejemplo siguiente utiliza la recuperación de datos de instancia para ilustrar cómo se puede producir este error.
curl -X GET "$vpc_api_endpoint/v1/instances/r006-44905aa4-119d-5622-00ce-face32b78999?version=2022-09-06&generation=2" -H "Authorization: Bearer $iam_token" | jq -r '(.image)'
El ejemplo utiliza jq como analizador, una herramienta de terceros con licencia de MIT. Algunos sistemas operativos no lo incluyen de jq forma predeterminada. Instálalo
jq antes de utilizarlo o sustitúyelo por otro analizador JSON.
Cuando ejecute este mandato, verá la salida siguiente.
{
"crn": "crn:v1:bluemix:public:is:us-south:a/123456::image:r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999",
"href": "https://us-south.iaas.cloud.ibm.com/v1/images/r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999",
"id": "r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999",
"name": "test-image"
}
Si intenta recuperar información sobre esta imagen utilizando su id,
curl -X GET "$vpc_api_endpoint/v1/images/r006-6cab2dbd-4e57-4dc5-810b-b7366cb78999?version=2022-09-06&generation=2" -H "Authorization: Bearer $iam_token"
entonces este intento falla con el código de estado HTTP 404 (no encontrado). Este código de estado significa que la imagen no existe en su cuenta. Si la instancia se ha suministrado utilizando una imagen de catálogo compartido en otra cuenta, esta respuesta es la respuesta que siempre obtiene incluso si la imagen sigue existiendo en la cuenta propietaria.
Además, es posible que la imagen referenciada tenga el mismo nombre que una imagen personalizada en su cuenta. Pero estos nombres de imagen son para dos imágenes diferentes en dos cuentas diferentes. id, crn y href identifican de forma exclusiva una imagen en IBM Cloud®.
Verifique que los clientes manejen correctamente las anomalías de búsqueda de referencia de imagen y no presuponga que se han suprimido las imágenes inaccesibles, incluso cuando se ejecutan con acceso completo a las imágenes. Para evitar una
posible recuperación o uso de la imagen incorrecta por parte de name, especifique la imagen id, crn o href en su lugar.
Utilización de referencias de imagen entre cuentas en un catálogo privado en Terraform
Las instancias que suministre pertenecen a su cuenta. Las imágenes que se comparten con su cuenta a través de un catálogo privado pueden pertenecer a otras cuentas. Al suministrar una instancia desde una imagen que pertenece a otra cuenta o desde una plantilla de instancia que especifica una imagen de este tipo, la imagen sigue perteneciendo a la otra cuenta aunque la instancia pertenezca a su cuenta. Es posible que exista una referencia a dicha imagen en los detalles de la instancia y los recursos relacionados. Por ejemplo, los detalles sobre su volumen de arranque y cualquier instantánea que se haya creado a partir de ese volumen de arranque podrían hacer referencia a esa imagen. Independientemente de sus autorizaciones, no puede acceder a este tipo de imagen personalizada por su ID y los intentos fallan como si la imagen no existiera.
Las referencias de imagen se utilizan en algunos lugares diferentes en el terraform. Por ejemplo, si utiliza el origen de datos de instancia para recuperar datos de instancia, verá lo siguiente en la respuesta del origen de datos.
"image": "r006-e0d3b6fb-5421-4421-9061-0ca9f79a4990"
Si intenta recuperar información sobre esta imagen utilizando su origen de datos,
data "ibm_is_image" "example" {
identifier = "r006-e0d3b6fb-5421-4421-9061-0ca9f79a4990"
}
entonces este intento falla con un error como el ejemplo siguiente:
Error: [ERROR] No image found with id r006-e0d3b6fb-5421-4421-9061-0ca9f79a4990
Este error significa que la imagen no existe en su cuenta. Si la instancia se ha suministrado utilizando una imagen de catálogo compartido en otra cuenta, esta salida es la salida que siempre ve incluso si la imagen sigue existiendo en la cuenta propietaria.
Además, es posible que la imagen referenciada tenga el mismo nombre que una imagen personalizada en su cuenta. Pero estos nombres de imagen son para dos imágenes diferentes en dos cuentas diferentes. Aunque el terraform utiliza el ID o el nombre para identificar una imagen, solo el ID identifica de forma exclusiva una imagen en IBM Cloud®. Para evitar una posible recuperación o uso de la imagen incorrecta por nombre, especifique el ID de imagen en su lugar. Para obtener más información, consulte origen de datos de imagen.
Supresión de una imagen personalizada en un catálogo privado
Una imagen personalizada no se puede suprimir, reutilizar para una versión diferente o reutilizar para una oferta de producto diferente mientras la imagen personalizada se gestiona desde un catálogo privado.
La supresión del catálogo privado que contiene directamente ofertas de productos no elimina las ofertas inmediatamente. Las imágenes personalizadas gestionadas por el catálogo privado siguen siendo gestionadas por el catálogo durante 7 días después de la fecha en que suprimió el catálogo privado.
Si desea reutilizar o suprimir inmediatamente la imagen personalizada, asegúrese de que primero elimina dicha imagen personalizada de la versión asociada en la oferta de producto de catálogo privado o suprima la oferta de producto.
Para suprimir una imagen personalizada publicada o compartida del catálogo privado, consulte la guía de aprendizaje Desuso de un producto privado. Para suprimir todo el catálogo privado, consulte la guía de aprendizaje Supresión de un catálogo privado utilizando la consola.
Grupos de instancias y catálogo privado
Puede utilizar una imagen personalizada en un catálogo privado para crear un grupo de instancias. Sin embargo, primero debe crear una política de servicio a servicio para globalcatalog-collection.instance.retrieve antes de poder
crear el grupo de instancias. Para obtener más información, consulte Utilización de una imagen personalizada en un catálogo privado con un grupo de instancias.
La información sobre qué imagen personalizada que está en un catálogo privado que se ha utilizado para suministrar una instancia no persiste en todos los recursos de IBM Cloud VPC. La información sobre la imagen personalizada en un catálogo privado no está disponible en Snapshot for VPC o Image from Volume. La información del sistema operativo, que es necesaria cuando se suministra un servidor virtual, está disponible.
Importación de la imagen personalizada en un catálogo privado
Después de importar la imagen personalizada en IBM Cloud VPC, puede importar dicha imagen personalizada en un catálogo privado.