Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2024-09-25 GMT+08:00

Criação de discos EVS

Função

Essa API é usada para criar discos EVS.

Método de chamada

Para obter detalhes, consulte Chamada de APIs.

URI

POST /v2/{project_id}/volumes

Tabela 1 Parâmetros de caminho

Parâmetro

Obrigatório

Tipo

Descrição

project_id

Sim

String

O ID do projeto.

Para obter detalhes sobre como obter o ID de projeto, consulte Obtenção de um ID de projeto.

Parâmetros de solicitação

Tabela 2 Parâmetros de cabeçalho de solicitação

Parâmetro

Obrigatório

Tipo

Descrição

X-Auth-Token

Sim

String

O token do usuário. Ele pode ser obtido chamando a API do IAM usada para obter um token de usuário. O valor de X-Subject-Token no cabeçalho da resposta é o token do usuário.

Tabela 3 Parâmetros do corpo da solicitação

Parâmetro

Obrigatório

Tipo

Descrição

volume

Sim

CinderCreateVolumeOption object

As informações do disco a ser criado. Observação: a especificação de dois dos campos source_volid, snapshot_id e imageRef não é suportada.

OS-SCH-HNT:scheduler_hints

Não

CinderCreateVolumeSchedulerHints object

O parâmetro de agendamento. O campo dedicated_storage_id é suportado, indicando que os discos podem ser criados em pools de armazenamento do DSS.

Tabela 4 CinderCreateVolumeOption

Parâmetro

Obrigatório

Tipo

Descrição

availability_zone

Sim

String

A AZ onde você deseja criar o disco. Se a AZ especificada não existir ou for diferente da AZ à qual o backup pertence, o disco falhará ao ser criado.

consistencygroup_id

Não

String

O ID do grupo de consistência. Se esse parâmetro for especificado, o disco pertence a esse grupo de consistência. Esta função não está disponível no momento.

description

Não

String

A descrição do disco. Você pode inserir até 85 caracteres.

imageRef

Não

String

O ID da imagem. Se este parâmetro for especificado, o disco será criado a partir de uma imagem.

NOTA:

Discos do sistema do Bare Metal Server (BMS) não podem ser criados a partir de imagens do BMS. Para obter detalhes sobre como obter o ID de imagem, veja Consulta de imagens.

metadata

Não

VolumeMetadata object

Os metadados do disco. O comprimento de key e value em metadata não pode conter mais de 255 bytes.

O campo metadata mostra apenas alguns parâmetros. Você pode especificar outros parâmetros com base em seus requisitos.

value de um par de chave-valor em metadata não pode ser nulo.

multiattach

Não

Boolean

Se o disco é compartilhável. O valor padrão é false.

verdadeiro: o disco é compartilhável.

falso: o disco não pode ser compartilhado.

Para obter detalhes, consulte

Discos compartilhados EVS e instruções de uso.

name

Não

String

O nome do disco. Você pode inserir até 64 caracteres.

size

Não

Integer

O tamanho do disco, em GiB. As restrições são as seguintes: Disco do sistema: 1 GiB a 1.024 GiB Disco de dados: 10 GiB a 32.768 GiB Este parâmetro é obrigatório quando você cria um disco vazio.

Se você criar o disco a partir de um snapshot, esse parâmetro será obrigatório e o tamanho do disco deverá ser maior ou igual ao tamanho do snapshot.

Se você criar o disco a partir de uma imagem, esse parâmetro será obrigatório e o tamanho do disco deverá ser maior ou igual à capacidade mínima exigida pelo atributo de imagem min_disk.

snapshot_id

Não

String

O ID do snapshot. Se esse parâmetro for especificado, o disco será criado a partir de um snapshot.

source_replica

Não

String

Este parâmetro indica que o disco foi clonado de outro disco. Esta função não está disponível no momento.

source_volid

Não

String

O ID do disco de origem. Se este parâmetro for especificado, o disco será clonado a partir de um disco existente. Esta função não é suportada no momento.

volume_type

Sim

String

O tipo de disco.

O valor pode ser SATA, SAS, GPSSD, SSD, ESSD, GPSSD2 ou ESSD2.

  • SATA: o tipo de I/O comum

  • SAS: o tipo de I/O alta

  • GPSSD: o tipo de SSD de uso geral

  • SSD: o tipo de I/O ultra-alta

  • ESSD: o tipo de SSD extremo

  • GPSSD2: o tipo de SSD V2 de uso geral

  • ESSD2: o tipo de SSD V2 extremo. Se o tipo de disco especificado não estiver disponível na AZ, o disco não será criado.

NOTA:

Ao criar um disco a partir de um snapshot, verifique se o tipo de disco do novo disco é consistente com o do disco de origem do snapshot. Para obter detalhes sobre os tipos de disco, consulte

Tipos e desempenho de disco.

Valores de enumeração:

  • ESSD2

  • GPSSD2

  • ESSD

  • SSD

  • GPSSD

  • SAS

  • SATA

iops

Não

Integer

O IOPS configurado. Este parâmetro é obrigatório apenas quando um SSD de uso geral V2 ou um disco SSD extremo V2 é criado.

NOTA:
  • Para saber os intervalos de IOPS de discos SSD V2 de uso geral e SSD V2 extremo, consulte a tabela dados de desempenho do EVS em Tipos de disco e desempenho.

  • Apenas a cobrança paga por uso é suportada.

throughput

Não

Integer

A taxa de transferência configurada, na unidade de MiB/s. Este parâmetro é obrigatório somente quando um disco SSD V2 de uso geral é criado.

NOTA:

- Para saber a faixa de taxa de transferência de discos SSD V2 de uso geral, consulte a tabela de dados de desempenho do EVS em Tipos e desempenho de disco.

  • Apenas a cobrança paga por uso é suportada.

Tabela 5 VolumeMetadata

Parâmetro

Obrigatório

Tipo

Descrição

__system__cmkid

Não

String

O ID da CMK de encriptação em metadata. Este parâmetro é utilizado em conjunto com __system__encrypted para encriptação. O comprimento do cmkid é fixado em 36 bytes.

NOTA:

Use uma solicitação HTTPS para obter o ID da chave. Para obter detalhes, consulte Consulta da lista de chaves.

__system__encrypted

Não

String

O campo de encriptação nos metadata. O valor pode ser 0 (não criptografado) ou 1 (criptografado). Se esse parâmetro não aparecer, o disco não será criptografado.

full_clone

Não

String

Se o disco for criado a partir de um snapshot e a clonagem vinculada precisar ser usada, defina esse parâmetro como 0.

hw:passthrough

Não

String

Se esse parâmetro for definido como true, o tipo de dispositivo de disco será SCSI, o que permite que os SOs do ECS acessem diretamente a mídia de armazenamento subjacente. Os comandos de reserva SCSI são suportados.

Se esse parâmetro for definido como false, o tipo de dispositivo de disco será VBD, que também é o tipo padrão. O VBD suporta apenas comandos simples de leitura/gravação de SCSI.

Se esse parâmetro não estiver disponível, o tipo de dispositivo de disco será VBD.

Tabela 6 CinderCreateVolumeSchedulerHints

Parâmetro

Obrigatório

Tipo

Descrição

dedicated_storage_id

Não

String

O ID do pool de armazenamento dedicado.

Parâmetros de resposta

Código de status: 202

Tabela 7 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

volume

CreateVolumeDetail object

As informações de disco criadas.

Tabela 8 CreateVolumeDetail

Parâmetro

Tipo

Descrição

id

String

O ID do disco.

links

Array of Link objects

O URI do disco.

name

String

O nome do disco.

status

String

O status do disco. Para obter detalhes, consulte Status do disco EVS.

attachments

Array of VolumeAttachment objects

As informações do anexo.

availability_zone

String

A AZ à qual o disco pertence.

bootable

String

Se o disco é inicializável. true: o disco é inicializável. false: o disco não é inicializável.

encrypted

Boolean

Este campo não é suportado no momento.

created_at

String

A hora em que o disco foi criado.

Formato da hora: UTC AAAA-MM-DDTHH:MM:SS.XXXXXX

description

String

A descrição do disco.

volume_type

String

O tipo de disco.

O valor pode ser SATA, SAS, GPSSD, SSD, ESSD, GPSSD2 ou ESSD2.

  • SATA: o tipo de I/O comum

  • SAS: o tipo de I/O alta

  • GPSSD: o tipo de SSD de uso geral

  • SSD: o tipo de I/O ultra-alta

  • ESSD: o tipo de SSD extremo

  • GPSSD2: o tipo de SSD V2 de uso geral

  • ESSD2: o tipo de SSD V2 extremo. Se o tipo de disco especificado não estiver disponível na AZ, o disco não será criado.

replication_status

String

O campo reservado.

consistencygroup_id

String

O ID do grupo de consistência ao qual o disco pertence.

source_volid

String

O ID do disco de origem.

Este campo não é suportado no momento.

snapshot_id

String

O ID do snapshot.

metadata

VolumeMetadata object

Os metadados.

size

Integer

O tamanho do disco, em GiB.

user_id

String

O ID do usuário que usa o disco.

updated_at

String

A hora em que o disco foi atualizado.

shareable

Boolean

Se o disco é compartilhável. Observação: este campo foi preterido. Use multiattach.

multiattach

Boolean

Se o disco é compartilhável. true: o disco é compartilhável. false: o disco não pode ser compartilhado.

storage_cluster_id

String

O campo reservado.

Tabela 10 VolumeAttachment

Parâmetro

Tipo

Descrição

attached_at

String

A hora em que o disco foi anexado.

Formato da hora: UTC AAAA-MM-DDTHH:MM:SS.XXXXXX

attachment_id

String

O ID do anexo.

device

String

O nome do dispositivo.

host_name

String

O nome do host físico que hospeda o servidor de nuvem ao qual o disco está anexado.

id

String

O ID do disco anexado.

server_id

String

O ID do servidor ao qual o disco está anexado.

volume_id

String

O ID do disco.

Tabela 11 VolumeMetadata

Parâmetro

Tipo

Descrição

__system__cmkid

String

O ID da CMK de encriptação em metadata. Este parâmetro é utilizado em conjunto com __system__encrypted para encriptação. O comprimento do cmkid é fixado em 36 bytes.

NOTA:

Use uma solicitação HTTPS para obter o ID da chave. Para obter detalhes, consulte Consulta da lista de chaves.

__system__encrypted

String

O campo de encriptação em metadata. O valor pode ser 0 (não criptografado) ou 1 (criptografado). Se esse parâmetro não aparecer, o disco não será criptografado.

full_clone

String

Se o disco for criado a partir de um snapshot e a clonagem vinculada precisar ser usada, defina esse parâmetro como 0.

hw:passthrough

String

Se esse parâmetro for definido como true, o tipo de dispositivo de disco será SCSI, o que permite que os SOs do ECS acessem diretamente a mídia de armazenamento subjacente. Os comandos de reserva SCSI são suportados.

Se esse parâmetro for definido como false, o tipo de dispositivo de disco será VBD, que também é o tipo padrão. O VBD suporta apenas comandos simples de leitura/gravação de SCSI.

Se esse parâmetro não estiver disponível, o tipo de dispositivo de disco será VBD.

Código de status: 400

Tabela 12 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error

Error object

A mensagem de erro retornada se ocorrer um erro.

Tabela 13 Error

Parâmetro

Tipo

Descrição

code

String

O código de erro retornado se ocorrer um erro.

Para obter detalhes sobre códigos de erro e seus significados, consulte Códigos de erro.

message

String

A mensagem de erro retornada se ocorrer um erro.

Exemplo de solicitações

Criar um disco EVS (use uma imagem para criar um disco EVS não compartilhado no pool de armazenamento DSS. Defina o tipo de disco como I/O comum, o tipo de dispositivo como SCSI e o tamanho do disco como 40 GiB.)

POST https://{endpoint}/v2/{project_id}/volumes

{
  "volume" : {
    "name" : "openapi_vol01",
    "imageRef" : "027cf713-45a6-45f0-ac1b-0ccc57ac12e2",
    "availability_zone" : "xxx",
    "description" : "create for api test",
    "volume_type" : "SATA",
    "metadata" : {
      "hw:passthrough" : "true"
    },
    "consistencygroup_id" : null,
    "source_volid" : null,
    "snapshot_id" : null,
    "multiattach" : false,
    "source_replica" : null,
    "size" : 40
  },
  "OS-SCH-HNT:scheduler_hints" : {
    "dedicated_storage_id" : "eddc1a3e-4145-45be-98d7-bf6f65af9767"
  }
}

Exemplo de respostas

Código de status: 202

Accepted

{
  "volume" : {
    "attachments" : [ ],
    "availability_zone" : "xxx",
    "bootable" : "false",
    "created_at" : "2016-05-25T02:38:40.392463",
    "description" : "create for api test",
    "encrypted" : false,
    "id" : "8dd7c486-8e9f-49fe-bceb-26aa7e312b66",
    "links" : [ {
      "href" : "https://volume.localdomain.com:8776/v2/5dd0b0056f3d47b6ab4121667d35621a/volumes/8dd7c486-8e9f-49fe-bceb-26aa7e312b66",
      "rel" : "self"
    }, {
      "href" : "https://volume.localdomain.com:8776/5dd0b0056f3d47b6ab4121667d35621a/volumes/8dd7c486-8e9f-49fe-bceb-26aa7e312b66",
      "rel" : "bookmark"
    } ],
    "metadata" : {
      "__system__encrypted" : 0
    },
    "name" : "openapi_vol01",
    "replication_status" : "disabled",
    "multiattach" : false,
    "size" : 40,
    "status" : "creating",
    "user_id" : "39f6696ae23740708d0f358a253c2637",
    "volume_type" : "SATA"
  }
}

Código de status: 400

Bad Request

{
  "error" : {
    "message" : "XXXX",
    "code" : "XXX"
  }
}

Códigos de status

Código de status

Descrição

202

Accepted

400

Bad Request

Códigos de erro

Consulte Códigos de erro.