Criação de uma imagem
Função
Esta API é usada para criar uma imagem privada. Os seguintes métodos são suportados:
- Criar uma imagem de disco do sistema ou de dados a partir de um ECS.
- Crie uma imagem de disco do sistema a partir de um arquivo de imagem externo carregado em um bucket do OBS.
- Crie uma imagem de disco do sistema a partir de um disco de dados.
A API é assíncrona. Se for chamado com sucesso, o sistema de serviço em nuvem recebe a solicitação. No entanto, você precisa usar a API de consulta de job assíncrona para consultar o status de criação da imagem. Para mais detalhes, consulte Consulta dos trabalhos assíncronos.
Restrições
- Criação de uma imagem privada usando um arquivo de imagem externo
Para obter detalhes sobre as restrições de arquivos de imagem externos, consulte Preparação de um arquivo de imagem (Windows) ou Preparação de um arquivo de imagem (Linux).
- Criação de uma imagem de disco do sistema usando um disco de dados
Antes de usar um disco de dados para criar uma imagem de disco do sistema, certifique-se de que um sistema operacional foi instalado no disco de dados e foi otimizado. Para obter detalhes sobre a otimização, consulte Otimização de uma imagem privada do Windows e Otimização de uma imagem privada do Linux.
O sistema não pode verificar se um SO foi instalado no disco de dados. Portanto, certifique-se de que o valor de os_version seja válido ao criar uma imagem de disco do sistema a partir do disco de dados. Para mais detalhes, consulte Valores de parâmetros relacionados.
URI
POST /v2/cloudimages/action
Solicitação
- Parâmetros para a criação de um sistema ou imagem de disco de dados a partir de um ECS
Parâmetro
Obrigatório
Tipo
Descrição
Nome
Sim
Cadeia
Especifica o nome da imagem de disco do sistema. Para uma descrição detalhada, consulte Atributos da imagem.
Descrição
Não
Cadeia
Especifica a descrição da imagem. Para uma descrição detalhada, consulte Atributos da imagem. O valor contém um máximo de 1024 caracteres e consiste apenas em letras e dígitos. Não são permitidos retornos de carro e colchetes angulares (< >). Este parâmetro é deixado em branco por padrão.
id_da_instância
Sim
Cadeia
Especifica o ID do ECS usado para criar a imagem.
Para obter o ID do ECS, execute as seguintes operações:
- Acesse o console de gerenciamento.
- Under Computing, click em Elastic Cloud Server.
- Na lista de ECS, clique no nome do ECS e visualize seu ID.
data_images
Não
Matriz de objetos
Especifica as informações do disco de dados a serem convertidas. Este parâmetro é obrigatório quando o disco de dados de um ECS é usado para criar uma imagem de disco de dados privada. Para mais detalhes, consulte Tabela 1.
Se o disco de dados do ECS não for usado para criar uma imagem de disco de dados, o parâmetro estará vazio por padrão.
NOTA:Quando você cria uma imagem de disco de dados usando um disco de dados, se outros parâmetros (como name, description, e tags) nesta tabela tiverem valores, o sistema usará o valor de data_images. Você não pode especificar instance_id.
Tags
Não
Matriz de strings
Especifica as marcas da imagem. Este parâmetro é deixado em branco por padrão.
Use tags ou image_tags.
image_tags
Não
Matriz de objetos
Especifica as marcas da imagem. Este parâmetro é deixado em branco por padrão.
Use tags ou image_tags.
id_do_projeto_da_empresa
Não
Cadeia
Especifica o projeto empresarial ao qual a imagem pertence.
- Se o valor for 0 ou deixado em branco, a imagem pertence ao projeto corporativo padrão.
- Se o valor for um UUID, a imagem pertence ao projeto empresarial correspondente ao UUID.
Para obter mais informações sobre projetos corporativos e como obter os ID de projeto corporativo, consulte Centro Empresarial
max_ram
Não
número inteiro
Especifica a memória máxima da imagem na unidade de MB.
min_ram
Não
número inteiro
Especifica a memória mínima da imagem na unidade de MB. O valor padrão é 0, indicando que a memória não está restrita.
Tabela 1 Descrição da estrutura de dados do campo data_images Parâmetro
Obrigatório
Tipo
Descrição
Nome
Sim
Cadeia
Especifica o nome de uma imagem de disco de dados.
volume_id
Sim
Cadeia
Especifica o ID do disco de dados.
Descrição
Não
Cadeia
Especifica a descrição do disco de dados.
Tags
Não
Matriz de strings
Especifica a tag de imagem de disco de dados.
- Parâmetros para criar uma imagem usando um arquivo de imagem carregado no intervalo do OBS
Parâmetro
Obrigatório
Tipo
Descrição
Nome
Sim
Cadeia
Especifica o nome de imagem. Para uma descrição detalhada, consulte Atributos da imagem.
Descrição
Não
Cadeia
Especifica a descrição da imagem. Para uma descrição detalhada, consulte Atributos da imagem. O valor contém um máximo de 1024 caracteres e consiste apenas em letras e dígitos. Não são permitidos retornos de carro e colchetes angulares (< >). Este parâmetro é deixado em branco por padrão.
os_type
Não
Cadeia
Especifica o tipo de OS.
O valor pode ser Linux, Windows, ou Other.
os_version
Não
Cadeia
Especifica a versão do SO.
Esse parâmetro é válido se um arquivo de imagem externo carregado no bucket do OBS for usado para criar uma imagem. Para cujo valor, veja Valores de parâmetros relacionados.
NOTA:Se o arquivo carregado estiver no formato ISO, este parâmetro é obrigatório.
Esse parâmetro é obrigatório quando o valor de is_quick_import é true, ou seja, uma imagem de disco do sistema é importada usando o método de importação rápida.
image_url
Sim
Cadeia
Especifica o URL do arquivo de imagem externo no intervalo do OBS.
Esse parâmetro é obrigatório se um arquivo de imagem externo no bucket do OBS for usado para criar uma imagem. O formato é Nome de bucket dd OBS:nome do arquivo de imagem.
- Para obter um nome de bucket do OBS:
- Faça login no console de gerenciamento e escolha Storage > Object Storage Service.
Todos os buckets do OBS são exibidos na lista.
- Filtre os buckets do OBS por região e localize o bucket de destino na região atual.
- Faça login no console de gerenciamento e escolha Storage > Object Storage Service.
- Para obter um nome de arquivo de imagem do OBS:
- Faça login no console de gerenciamento e escolha Storage > Object Storage Service.
Todos os buckets do OBS são exibidos na lista.
- Filtre os buckets do OBS por região e localize o bucket de destino na região atual.
- Clique no nome do bucket de destino para acessar a página de detalhes do bucket.
- No painel de navegação à esquerda, escolha Objects para exibir objetos no intervalo do OBS e, em seguida, localize o arquivo de imagem externo usado para criar uma imagem.
- Faça login no console de gerenciamento e escolha Storage > Object Storage Service.
NOTA:A classe de armazenamento do bucket do OBS deve ser Standard.
disco_mínimo
Sim
número inteiro
Especifica o tamanho mínimo do disco do sistema na unidade de GB.
Esse parâmetro é obrigatório se um arquivo de imagem externo no bucket do OBS for usado para criar uma imagem. O valor varia de 40 GB a 255 GB.
is_config
Não
Booleano
Especifica se a configuração automática está ativada.
O valor pode ser true ou false.
Se a configuração automática for necessária, defina o valor como true Caso contrário, defina o valor como false O valor padrão é false.
Para obter detalhes sobre a configuração automática, consulte Registração de um arquivo de imagem externo como uma imagem privada (Linux).
cmk_id
Não
Cadeia
Especifica a chave mestra usada para encriptar uma imagem. Para obter seu valor, consulte o Guia de usuário do Key Management Service.
Tags
Não
Matriz de strings
Especifica as marcas da imagem. O valor é deixado em branco por padrão.
Use tags ou image_tags.
image_tags
Não
Matriz de objetos
Especifica as marcas da imagem. Este parâmetro é deixado em branco por padrão. Use tags ou image_tags.
id_do_projeto_da_empresa
Não
Cadeia
Especifica o projeto empresarial ao qual a imagem pertence.
- Se o valor for 0 ou deixado em branco, a imagem pertence ao projeto corporativo padrão.
- Se o valor for um UUID, a imagem pertence ao projeto empresarial correspondente ao UUID.
Para obter mais informações sobre projetos corporativos e como obter os ID de projeto corporativo, consulte Centro Empresarial
max_ram
Não
número inteiro
Especifica a memória máxima da imagem na unidade de MB.
min_ram
Não
número inteiro
Especifica a memória mínima exigida pela imagem na unidade de MB. O valor padrão é 0, indicando que a memória não está restrita.
data_images
Não
Matriz de objetos
Especifica as informações do disco de dados a serem importadas.
Um arquivo de imagem externo pode conter no máximo três discos de dados. Neste caso, um disco do sistema e três discos de dados serão criados.
Para mais detalhes, consulte Tabela 2.
NOTA:- Se um arquivo de imagem de disco de dados for usado para criar uma imagem de disco de dados, o tipo de sistema operacional da imagem de disco de dados deve ser o mesmo da imagem de disco do sistema.
- Se outros parâmetros (como name, description, e tags) estiverem definidos em Tabela 2, o sistema usará os valores em data_images.
is_quick_import
Não
Booleano
Especifica se o método de importação rápida deve ser usado para importar uma imagem de disco do sistema.
- Se sim, defina o valor como true.
- Se não, defina o valor como false.
Para obter detalhes sobre as restrições à importação rápida de arquivos de imagem, consulte Importação rápida de um arquivo de imagem.
Tabela 2 Descrição da estrutura de dados do campo links Parâmetro
Obrigatório
Tipo
Descrição
Nome
Não
Cadeia
Especifica o nome de imagem.
Para mais detalhes, veja Atributos da imagem.
Descrição
Não
Cadeia
Especifica o projeto empresarial ao qual a imagem pertence. O valor é deixado em branco por padrão.
O valor contém um máximo de 1024 caracteres e consiste apenas em letras e dígitos. Não são permitidos retornos de carro e colchetes angulares (< >).
Para mais detalhes, veja Atributos da imagem.
image_url
Sim
Cadeia
Especifica o URL do arquivo de imagem externo no intervalo do OBS.
O formato é nome de bucket dd OBS:nome do arquivo de imagem.
- Para obter um nome de bucket do OBS:
- Faça login no console de gerenciamento e escolha Storage > Object Storage Service.
Todos os buckets do OBS são exibidos na lista.
- Filtre os buckets do OBS por região e localize o bucket de destino na região atual.
- Faça login no console de gerenciamento e escolha Storage > Object Storage Service.
- Para obter um nome de arquivo de imagem do OBS:
- Faça login no console de gerenciamento e escolha Storage > Object Storage Service.
Todos os buckets do OBS são exibidos na lista.
- Filtre os buckets do OBS por região e localize o bucket de destino na região atual.
- Clique no nome do bucket de destino para acessar a página de detalhes do bucket.
- No painel de navegação à esquerda, escolha Objects para exibir objetos no intervalo do OBS e, em seguida, localize o arquivo de imagem externo usado para criar uma imagem.
- Faça login no console de gerenciamento e escolha Storage > Object Storage Service.
NOTA:A classe de armazenamento do bucket do OBS deve ser Standard.
disco_mínimo
Sim
número inteiro
Especifica o tamanho mínimo do disco de dados.
Unidade: GB
Faixa de valor: 1–2048
is_quick_import
Não
Booleano
Especifica se um arquivo de imagem é importado rapidamente para criar uma imagem de disco de dados.
- Se sim, defina o valor como true..
- Se não, defina o valor como false.
Para obter detalhes sobre as restrições à importação rápida de arquivos de imagem, consulte Importação rápida de um arquivo de imagem.
Tags
Não
Matriz de strings
Especifica as marcas da imagem. O valor é deixado em branco por padrão.
Para obter descrições detalhadas dos parâmetros, consulte Formatos de dados da tag de imagem.
Use tags ou image_tags.
image_tags
Não
Matriz de objetos
Especifica as marcas da imagem. O valor é deixado em branco por padrão.
Para obter descrições detalhadas dos parâmetros, consulte Formatos de dados da tag de imagem.
Use tags ou image_tags.
- Para obter um nome de bucket do OBS:
- Parâmetros para criar uma imagem de disco do sistema usando um disco de dados
Parâmetro
Obrigatório
Tipo
Descrição
Nome
Sim
Cadeia
Especifica o nome da imagem de disco do sistema.
Para mais detalhes, veja Atributos da imagem.
volume_id
Sim
Cadeia
Especifica o ID do disco de dados.
os_version
Sim
Cadeia
Especifica a versão do SO.
Defina o valor do parâmetro com base em Valores de parâmetros relacionados. Caso contrário, a imagem de disco do sistema criada poderá não estar disponível.
Durante a criação de uma imagem de disco do sistema, se o sistema operacional pode ser detectado a partir do disco de dados, a versão do sistema operacional no disco de dados é usado. Neste caso, o valor de os_version é inválido. Se o sistema operacional pode ser detectado a partir do disco de dados, o valor de os_version é usado.
Tipo
Não
Sting
Especifica o tipo de imagem.
O valor pode ser ECS, BMS, FusionCompute, ou Ironic.
- ECS e FusionCompute: indica uma imagem do ECS.
- BMS e Ironic: indica uma imagem do BMS.
O valor padrão é ECS.
Descrição
Não
Cadeia
Especifica a descrição da imagem. Este parâmetro é deixado em branco por padrão. Para mais detalhes, consulte Atributos da imagem.
A descrição da imagem deve atender aos seguintes requisitos:
- Contém apenas letras e dígitos.
- Não pode conter retornos de carro e colchetes angulares (< >).
- Não pode exceder 1024 caracteres.
min_ram
Não
número inteiro
Especifica o tamanho mínimo de memória (MB) necessário para executar a imagem.
O valor do parâmetro depende das especificações do ECS. O valor padrão é 0.
max_ram
No
número inteiro
Especifica o tamanho máximo de memória (MB) necessário para executar a imagem.
O valor do parâmetro depende das especificações do ECS. O valor padrão é 0.
Tags
No
Matriz de strings
Especifica as marcas da imagem. Este parâmetro é deixado em branco por padrão.
Use tags ou image_tags.
image_tags
Não
Matriz de objetos
Especifica as tags da imagem. Este parâmetro é deixado em branco por padrão.
Use tags ou image_tags.
id_do_projeto_da_empresa
Não
Cadeia
Especifica o projeto empresarial ao qual a imagem pertence.
- Se o valor for 0 ou deixado em branco, a imagem pertence ao projeto corporativo padrão.
- Se o valor for um UUID, a imagem pertence ao projeto empresarial correspondente ao UUID.
Para obter mais informações sobre projetos corporativos e como obter os ID de projeto corporativo, consulte Centro Empresarial
- Exemplo de solicitações
- Solicitação para criar uma imagem de disco do sistema com tags de parâmetro usando um 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" ] }
- Solicitação para criar uma imagem de disco de dados com tags de parâmetro usando o disco de dados de um ECS
POST https://{Endpoint}/v2/cloudimages/action
1 2 3 4 5 6 7 8 9 10 11
{ "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" ] }] }
- Solicitação para criar uma imagem com tags de parâmetro usando um arquivo de imagem externo carregado no intervalo do 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" ] }
- Solicitação para criar uma imagem de disco do sistema com o parâmetro image_tags usando um 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" } ] }
- Pedido para criar uma imagem de disco de dados com parâmetro image_tags usando o disco de dados de um 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"}] }] }
- Solicitação para criar uma imagem com o parâmetro image_tags usando um arquivo de imagem externo carregado no intervalo do 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"}] }
- Solicitação para criar uma imagem de disco do sistema com tags de parâmetro usando um disco de dados
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" ] }
- Solicitação para criar uma imagem de disco do sistema com o parâmetro image_tags usando um disco de dados
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"}] }
- Solicitação para criar uma imagem de disco do sistema com tags de parâmetro usando um ECS
Resposta
- Parâmetros de resposta
Parâmetro
Tipo
Descrição
trabalho_id
Cadeia
Especifica o ID do trabalho assíncrono.
Para mais detalhes, consulte Consulta dos trabalhos assíncronos.
- Exemplo de resposta
CÓDIGO DE STATUS 200
1 2 3
{ "job_id": "8a12fc664fb4daa3014fb4e581380005" }
Valores retornados
- Normal
- Anormal
Valor retornado
Descrição
400 Solicitação inválida
Erro na solicitação. Para obter detalhes sobre o código de erro retornado, consulte Códigos de erro.
401 Não autorizado
Autenticação falhou.
403 Proibido
Você não tem os direitos para realizar a operação.
404 Não encontrado
O recurso solicitado não foi encontrado.
500 Erro de servidor interno
Erro do serviço interno.
503 Serviço indisponível
Serviço não está disponível.