Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2022-11-07 GMT+08:00

Creación de una imagen

Función

Esta API se utiliza para crear una imagen privada. Se admiten los siguientes métodos:

  • Cree una imagen de disco del sistema o de datos a partir de un ECS.
  • Cree una imagen de disco del sistema a partir de un archivo de imagen externo cargado en un bucket de OBS.
  • Cree una imagen de disco del sistema a partir de un disco de datos.

La API es asíncrona. Si se llama correctamente, el sistema de servicio en la nube recibe la solicitud. Sin embargo, debe usar la API de consulta de trabajo asincrónica para consultar el estado de creación de imágenes. Para más detalles, consulte Consulta de Trabajo Asincrónico.

Restricciones

URI

POST /v2/cloudimages/action

Solicitud

  • Parámetros para crear una imagen de disco de datos o de sistema a partir de un ECS

    Parámetro

    Obligatorio

    Tipo

    Descripción

    name

    String

    Especifica el nombre de la imagen de disco del sistema. Para una descripción detallada, consulte Atributos de imagen.

    description

    No

    String

    Especifica la descripción de la imagen. Para una descripción detallada, consulte Atributos de imagen. El valor contiene un máximo de 1024 caracteres y consta solo de letras y dígitos. No se permiten retornos de carro y corchetes angulares (< >). Este parámetro se deja en blanco por defecto.

    instance_id

    String

    Especifica el ID del ECS utilizado para crear la imagen.

    Para obtener el ECS ID, realice las siguientes operaciones:

    1. Inicie sesión en la consola de gestión.
    2. En Computing, haga click en Elastic Cloud Server.
    3. En la lista ECS, haga clic en el nombre del ECS y vea su ID.

    data_images

    No

    Array of objects

    Especifica la información del disco de datos que se va a convertir. Este parámetro es obligatorio cuando el disco de datos de un ECS se utiliza para crear una imagen de disco de datos privado. Para más detalles, consulte Tabla 1.

    Si el disco de datos ECS no se utiliza para crear una imagen de disco de datos, el parámetro está vacío de forma predeterminada.

    NOTA:

    Cuando se crea una imagen de disco de datos utilizando un disco de datos, si otros parámetros (como name, description, y tags) de esta tabla tienen valores, el sistema utiliza el valor de data_images. No se puede especificar instance_id.

    tags

    No

    Array of strings

    Especifica las etiquetas de la imagen. Este parámetro se deja en blanco por defecto.

    Usar tags o image_tags.

    image_tags

    No

    Array of objects

    Specifies tags of the image. This parameter is left blank by default.

    Usar tags o image_tags.

    enterprise_project_id

    No

    String

    Especifica el proyecto de empresa al que pertenece la imagen.

    • Si el valor es 0 o se deja en blanco, la imagen pertenece al proyecto de empresa predeterminado.
    • Si el valor es un UUID, la imagen pertenece al proyecto de empresa correspondiente al UUID.

      Para obtener más información acerca de los proyectos de empresa y cómo obtener los ID de proyecto de empresa, consulte Centro de empresa.

    max_ram

    No

    Integer

    Especifica la memoria máxima de la imagen en la unidad de MB.

    min_ram

    No

    Integer

    Especifica la memoria mínima de la imagen en la unidad de MB. El valor predeterminado es 0, lo que indica que la memoria no está restringida.

    Tabla 1 Descripción de la estructura de datos del campo data_images

    Parámetro

    Obligatorio

    Tipo

    Descripción

    name

    String

    Especifica el nombre de una imagen de disco de datos.

    volume_id

    String

    Especifica el ID del disco de datos.

    description

    No

    String

    Especifica la descripción del disco de datos.

    tags

    No

    Array of strings

    Especifica la etiqueta de imagen del disco de datos.

  • Parámetros para crear una imagen usando un archivo de imagen cargado en el bucket de OBS

    Parámetro

    Obligatorio

    Tipo

    Descripción

    name

    String

    Especifica el nombre de la imagen. Para una descripción detallada, consulte Atributos de imagen.

    description

    No

    String

    Especifica la descripción de la imagen. Para una descripción detallada, consulte Atributos de imagen. El valor contiene un máximo de 1024 caracteres y consta solo de letras y dígitos. No se permiten retornos de carro y corchetes angulares (< >). Este parámetro se deja en blanco por defecto.

    os_type

    No

    String

    Especifica el tipo de sistema operativo.

    El valor puede ser Linux, Windows, o Other.

    os_version

    No

    String

    Especifica la versión del sistema operativo.

    Este parámetro es válido si se utiliza un archivo de imagen externo cargado en el bucket de OBS para crear una imagen. Para su valor, consulte Valores de parámetros relacionados.

    NOTA:

    Si el archivo cargado está en formato ISO, este parámetro es obligatorio.

    Este parámetro es obligatorio cuando el valor de is_quick_import es true, es decir, una imagen de disco del sistema se importa mediante el método de importación rápida.

    image_url

    String

    Especifica la dirección URL del archivo de imagen externo en el bucket OBS.

    Este parámetro es obligatorio si se utiliza un archivo de imagen externo en el bucket OBS para crear una imagen. El formato es OBS bucket name:Image file name.

    • Para obtener un nombre de bucket OBS:
      1. Inicie sesión en la consola de gestión y seleccione Storage > Object Storage Service.

        Todos los buckets de OBS se muestran en la lista.

      2. Filtre los buckets de OBS por región y localice el bucket de destino en la región actual.
    • Para obtener un nombre de archivo de imagen OBS:
      1. Inicie sesión en la consola de gestión y seleccione Storage > Object Storage Service.

        Todos los buckets de OBS se muestran en la lista.

      2. Filtre los buckets de OBS por región y localice el bucket de destino en la región actual.
      3. Haga clic en el nombre del bucket de destino para ir a la página de detalles del bucket.
      4. En el panel de navegación de la izquierda, elija Objects para mostrar objetos en el bucket OBS y, a continuación, busque el archivo de imagen externo utilizado para crear una imagen.
    NOTA:

    La clase de almacenamiento del cucharón OBS debe ser Standard.

    min_disk

    Integer

    Especifica el tamaño mínimo del disco del sistema en la unidad de GB.

    Este parámetro es obligatorio si se utiliza un archivo de imagen externo en el bucket OBS para crear una imagen. El valor varía de 40 GB a 255 GB.

    is_config

    No

    Boolean

    Especifica si la configuración automática está habilitada.

    El valor puede ser true o false.

    Si se requiere una configuración automática, establezca el valor en true. De lo contrario, establezca el valor en false El valor predeterminado es false.

    Para obtener más información sobre la configuración automática, consulte Registro de un archivo de imagen externo como una imagen privada (Linux).

    cmk_id

    No

    String

    Especifica la clave maestra utilizada para cifrar una imagen. Para conocer su valor, consulte la Guía del usuario de Key Management Service.

    tags

    No

    Array of strings

    Especifica las etiquetas de la imagen. El valor se deja en blanco de forma predeterminada.

    Usa tags o image_tags.

    image_tags

    No

    Array of objects

    Especifica las etiquetas de la imagen. Este parámetro se deja en blanco por defecto. Usa tags o image_tags.

    enterprise_project_id

    No

    String

    Especifica el proyecto de empresa al que pertenece la imagen.

    • Si el valor es 0 o se deja en blanco, la imagen pertenece al proyecto de empresa predeterminado.
    • Si el valor es un UUID, la imagen pertenece al proyecto de empresa correspondiente al UUID.

      Para obtener más información acerca de los proyectos de empresa y cómo obtener los ID de proyecto de empresa, consulte Centro de empresa.

    max_ram

    No

    Integer

    Especifica la memoria máxima de la imagen en la unidad de MB.

    min_ram

    No

    Integer

    Especifica la memoria mínima requerida por la imagen en la unidad de MB. El valor predeterminado es 0, lo que indica que la memoria no está restringida.

    data_images

    No

    Array of objects

    Especifica la información del disco de datos que se va a importar.

    Un archivo de imagen externo puede contener un máximo de tres discos de datos. En este caso, se creará un disco del sistema y tres discos de datos.

    Para más detalles, consulte Tabla 2.

    NOTA:
    • Si se utiliza un archivo de imagen de disco de datos para crear una imagen de disco de datos, el tipo de sistema operativo de la imagen de disco de datos debe ser el mismo que el de la imagen de disco de sistema.
    • Si se establecen otros parámetros (como name, description, y tags) en Tabla 2, el sistema utiliza los valores de data_images.

    is_quick_import

    No

    Boolean

    Especifica si se debe utilizar el método de importación rápida para importar una imagen de disco del sistema.

    • Si es así, establezca el valor en true.
    • Si no, establezca el valor en false.

    Para obtener más información sobre las restricciones en la importación rápida de archivos de imagen, consulte Importación rápida de un archivo de imagen.

    Tabla 2 Descripción de la estructura de datos del campo de imágenes

    Parámetro

    Obligatorio

    Tipo

    Descripción

    name

    No

    String

    Especifica el nombre de la imagen.

    Para más detalles, consulte Atributos de imagen.

    description

    No

    String

    Especifica el proyecto de empresa al que pertenece la imagen. El valor se deja en blanco de forma predeterminada.

    El valor contiene un máximo de 1024 caracteres y consta solo de letras y dígitos. No se permiten retornos de carro y corchetes angulares (< >).

    Para más detalles, consulte Atributos de imagen.

    image_url

    String

    Especifica la dirección URL del archivo de imagen externo en el bucket OBS.

    El formato es OBS bucket name:Image file name.

    • Para obtener un nombre de bucket OBS:
      1. Inicie sesión en la consola de gestión y seleccione Storage > Object Storage Service.

        Todos los buckets de OBS se muestran en la lista.

      2. Filtre los buckets de OBS por región y localice el bucket de destino en la región actual.
    • Para obtener un nombre de archivo de imagen OBS:
      1. Inicie sesión en la consola de gestión y seleccione Storage > Object Storage Service.

        Todos los buckets de OBS se muestran en la lista.

      2. Filtre los buckets de OBS por región y localice el bucket de destino en la región actual.
      3. Haga clic en el nombre del bucket de destino para ir a la página de detalles del bucket.
      4. En el panel de navegación de la izquierda, elija Objects para mostrar objetos en el bucket OBS y, a continuación, busque el archivo de imagen externo utilizado para crear una imagen.
    NOTA:

    La clase de almacenamiento del cucharón OBS debe ser Standard.

    min_disk

    Integer

    Especifica el tamaño mínimo del disco de datos.

    Unidad: GB

    Rango de valores: 1–2048

    is_quick_import

    No

    Boolean

    Especifica si un archivo de imagen se importa rápidamente para crear una imagen de disco de datos.

    • Si es así, establezca el valor en true.
    • Si no, establezca el valor en false.

    Para obtener más información sobre las restricciones en la importación rápida de archivos de imagen, consulte Importación rápida de un archivo de imagen.

    tags

    No

    Array of strings

    Especifica las etiquetas de la imagen. El valor se deja en blanco de forma predeterminada.

    Para obtener descripciones detalladas de los parámetros, consulte Formatos de datos de etiquetas de imagen.

    Usa tags o image_tags.

    image_tags

    No

    Array of objects

    Especifica las etiquetas de la imagen. El valor se deja en blanco de forma predeterminada.

    Para obtener descripciones detalladas de los parámetros, consulte Formatos de datos de etiquetas de imagen.

    Usa tags o image_tags.

  • Parámetros para crear una imagen de disco de sistema mediante un disco de datos

    Parámetro

    Obligatorio

    Tipo

    Descripción

    name

    String

    Especifica el nombre de la imagen de disco del sistema.

    Para más detalles, consulte Atributos de imagen.

    volume_id

    String

    Especifica el ID del disco de datos.

    os_version

    String

    Especifica la versión del sistema operativo.

    Establezca el valor del parámetro basado en Valores de parámetros relacionados. De lo contrario, es posible que la imagen de disco del sistema creada no esté disponible.

    Durante la creación de una imagen de disco del sistema, si el sistema operativo puede detectarse desde el disco de datos, se utiliza la versión del sistema operativo en el disco de datos. En este caso, el valor os_version no es válido. Si el sistema operativo se puede detectar desde el disco de datos, se utiliza el valor os_version.

    type

    No

    Sting

    Especifica el tipo de imagen.

    El valor puede ser ECS, BMS, FusionCompute, o Ironic.

    • ECS y FusionCompute indican una ECS imagen.
    • BMS e Ironic: indica una BMS imagen.

    El valor predeterminado es ECS.

    description

    No

    String

    Especifica la descripción de la imagen. Este parámetro se deja en blanco por defecto. Para más detalles, consulte Atributos de imagen.

    La descripción de la imagen debe cumplir los siguientes requisitos:

    • Contiene solo letras y dígitos.
    • No puede contener retornos de carro y corchetes angulares (< >).
    • No puede superar los 1024 caracteres.

    min_ram

    No

    Integer

    Especifica el tamaño mínimo de memoria (MB) necesario para ejecutar la imagen.

    El valor del parámetro depende de las ECS especificaciones. El valor predeterminado es 0.

    max_ram

    No

    Integer

    Especifica el tamaño máximo de memoria (MB) necesario para ejecutar la imagen.

    El valor del parámetro depende de las ECS especificaciones. El valor predeterminado es 0.

    tags

    No

    Array of strings

    Especifica las etiquetas de la imagen. Este parámetro se deja en blanco por defecto.

    Usa tags o image_tags.

    image_tags

    No

    Array of objects

    Especifica las etiquetas de la imagen. Este parámetro se deja en blanco por defecto.

    Usa tags o image_tags.

    enterprise_project_id

    No

    String

    Especifica el proyecto de empresa al que pertenece la imagen.

    • Si el valor es 0 o se deja en blanco, la imagen pertenece al proyecto de empresa predeterminado.
    • Si el valor es un UUID, la imagen pertenece al proyecto de empresa correspondiente al UUID.

      Para obtener más información acerca de los proyectos de empresa y cómo obtener los ID de proyecto de empresa, consulte Centro de empresa.

  • Solicitudes de ejemplo
    • Solicitud de creación de una imagen de disco del sistema con tags de parámetro usando un ECS
      POST https://{Endpoint}/v2/cloudimages/action
      {
          "name": "ims_test",
             "description": "Create a system disk image from an ECS",
          "instance_id": "877a2cda-ba63-4e1e-b95f-e67e48b6129a",
          "tags": [
              "aaa.111",
              "bbb.333",
              "ccc.444"
               ]
      }
    • Solicitud de creación de una imagen de disco de datos con tags de parámetro utilizando el disco de datos de un ECS
      POST https://{Endpoint}/v2/cloudimages/action
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
             "data_images": [{"name": "ims_data_image_test",
             "description": "Create a data disk image from the data disk of an ECS",
             "volume_id": "c5dfbd0c-bf0a-4798-a453-61dc6b54aa30",
             "tags": [
                        "aaa.111",
                        "bbb.333",
                        "ccc.444"
                    ]
             }]
      }
      
    • Solicitud de creación de una imagen con tags de parámetros mediante un archivo de imagen externo cargado en el bucket OBS
      POST https://{Endpoint}/v2/cloudimages/action
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      {
            "name": "ims_test_file",
        "description": "Create an image from a file in the OBS bucket",
            "image_url": "ims-image:centos70.qcow2",
            "os_version": "CentOS 7.0 64bit",
            "is_config_init": true,
            "min_disk": 40,
            "is_config": true,
            "tags": [  
                  "aaa.111",  
                  "bbb.333",  
                  "ccc.444"  
            ]     
      }
      
    • Solicitud de creación de una imagen de disco del sistema con parámetro image_tags usando un ECS
      POST https://{Endpoint}/v2/cloudimages/action
      {
          "name": "ims_test",
          "description": "Create a system disk image from an ECS",
          "instance_id": "877a2cda-ba63-4e1e-b95f-e67e48b6129a",
          "image_tags": [
      {
                  "key": "key2",
                  "value": "value2"
              },
      {
                  "key": "key1",
                  "value": "value1"
      }
               ]
      }
    • Solicitud de creación de una imagen de disco de datos con parámetro image_tags usando el disco de datos de un ECS
      POST /v2/cloudimages/action
      1
      2
      3
      4
      5
      6
      7
      {
             "data_images": [{"name": "ims_data_image_test",
             "description": "Create a data disk image from the data disk of an ECS",
             "volume_id": "c5dfbd0c-bf0a-4798-a453-61dc6b54aa30",
             "image_tags": [{"key":"key2","value":"value2"},{"key":"key1","value":"value1"}]
             }]
      }
      
    • Solicitud de creación de una imagen con parámetro image_tags usando un archivo de imagen externo cargado en el bucket OBS
      POST https://{Endpoint}/v2/cloudimages/action
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      {
             "name": "ims_test_file",
             "description": "Create an image from a file in the OBS bucket",
             "image_url": "ims-image:centos70.qcow2",
             "os_version": "CentOS 7.0 64bit",
             "is_config_init": true,
             "min_disk": 40,
             
             "image_tags": [{"key":"key2","value":"value2"},{"key":"key1","value":"value1"}]    
      }
      
    • Solicitud de creación de una imagen de disco del sistema con tags de parámetros utilizando un disco de datos
      POST https://{Endpoint}/v2/cloudimages/action
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      {
              "name": "ims_test",
              "description": "Create a system disk image from a data disk",
              "volume_id": "877a2cda-ba63-4e1e-b95f-e67e48b6129a",
              "type": "ECS",
              "os_version": "CentOS 7.0 64bit",
              "tags": [
                      "aaa.111",
                      "bbb.333",
                      "ccc.444" 
                 ]
       } 
      
    • Solicitud de creación de una imagen de disco del sistema con parámetro image_tags usando un disco de datos
      POST https://{Endpoint}/v2/cloudimages/action
      1
      2
      3
      4
      5
      6
      7
      8
      {
              "name": "ims_test",
              "description": "Create a system disk image from a data disk",
              "volume_id": "877a2cda-ba63-4e1e-b95f-e67e48b6129a",
              "type": "ECS",
              "os_version": "CentOS 7.0 64bit",
              "image_tags": [{"key":"key2","value":"value2"},{"key":"key1","value":"value1"}] 
       } 
      

Respuesta

  • Parámetros de respuesta

    Parámetro

    Tipo

    Descripción

    job_id

    String

    Especifica el ID de trabajo asincrónico.

    Para más detalles, consulte Consulta de Trabajo Asincrónico.

  • Ejemplo de respuesta
    STATUS CODE 200
    1
    2
    3
    {
        "job_id": "8a12fc664fb4daa3014fb4e581380005"
    }
    

Valores devueltos

  • Normal

    200

  • Anormal

    Valor devuelto

    Descripción

    400 Bad Request

    Error de solicitud. Para obtener más información sobre el código de error devuelto, consulte Códigos de error.

    401 Unauthorized

    Error de autenticación.

    403 Forbidden

    Usted no tiene los derechos para realizar la operación.

    404 Not Found

    No se encontró el recurso solicitado.

    500 Internal Server Error

    Error interno del servicio.

    503 Service Unavailable

    El servicio no está disponible.