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 2023-04-26 GMT+08:00

Criação de um cofre

Função

Esta API é usada para criar um cofre.

URI

POST /v3/{project_id}/vaults

Tabela 1 Parâmetros de caminho

Parâmetro

Obrigatório

Tipo

Descrição

project_id

Sim

String

ID do projeto

Parâmetros de solicitação

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

Parâmetro

Obrigatório

Tipo

Descrição

X-Auth-Token

Sim

String

Token de usuário. O token 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 de corpo de solicitação

Parâmetro

Obrigatório

Tipo

Descrição

vault

Sim

VaultCreate object

Parâmetros para criar um cofre

Tabela 4 VaultCreate

Parâmetro

Obrigatório

Tipo

Descrição

backup_policy_id

Não

String

ID da política de backup. Se o valor deste parâmetro for nulo, o backup automático não será realizado.

billing

Sim

BillingCreate object

Informações de parâmetro para criação

description

Não

String

Descrição do cofre definida pelo usuário

Mínimo: 0

Máximo: 64

name

Sim

String

Nome do cofre

Mínimo: 1

Máximo: 64

resources

Sim

Array of ResourceCreate objects

Recursos associados. Defina este parâmetro como [] se nenhum recurso estiver associado ao criar um cofre.

tags

Não

Array of Tag objects

Lista de tags. Esta lista não pode ser uma lista vazia. A lista pode conter até 10 chaves. As chaves nesta lista devem ser exclusivas.

enterprise_project_id

Não

String

ID do projeto empresarial

auto_bind

Não

Boolean

Se a associação automática é suportada

bind_rules

Não

VaultBindRules object

Regras para associação automática

auto_expand

Não

Boolean

Se ativar a expansão de capacidade automática para o cofre. Somente os cofres do pagamento por uso suportam a autoexpansão da capacidade.

Tabela 5 BillingCreate

Parâmetro

Obrigatório

Tipo

Descrição

cloud_type

Não

String

Tipo de nuvem, que pode ser public ou hybrid

consistent_level

Sim

String

Especificação do cofre, que pode ser crash_consistent (backup consistente com falhas) ou app_consistent (backup consistente com a aplicação)

object_type

Sim

String

Tipo de objeto, que pode ser server, disk, turbo ou workspace

protect_type

Sim

String

Tipo de proteção, que pode ser backup ou replication

size

Sim

Integer

Capacidade, em GB

Mínimo: 10

Máximo: 10485760

charging_mode

Não

String

Modo de cobrança, que pode ser post_paid (pagamento por uso) ou pre_paid (anual/mensal). O valor padrão é post_paid.

Padrão: post_paid

period_type

Não

String

Tipo de pacote. Este parâmetro é obrigatório se charging_mode estiver definido como pre_paid. Os valores possíveis são year (anual) ou month (mensal).

Valores de enumeração:

  • year
  • month

period_num

Não

Integer

Duração necessária para o pacote. Este parâmetro é obrigatório se charging_mode estiver definido como pre_paid.

is_auto_renew

Não

Boolean

Se renovar automaticamente a assinatura após a expiração. Por padrão, não é renovado.

Padrão: false

is_auto_pay

Não

Boolean

Se a taxa é automaticamente deduzida do saldo da conta do cliente após o envio de um pedido. O modo de pagamento não automático é usado por padrão.

Padrão: false

console_url

Não

String

URL de redirecionamento

Mínimo: 1

Máximo: 255

extra_info

Não

BillbingCreateExtraInfo object

Informações estendidas para criar um cofre

Tabela 6 BillbingCreateExtraInfo

Parâmetro

Obrigatório

Tipo

Descrição

combined_order_id

Não

String

ID da solicitação para criar cofres em combinação. Este parâmetro é obrigatório ao criar cofres em combinação.

combined_order_ecs_num

Não

Integer

Número de itens na solicitação para criar cofres no modo de combinação. Este parâmetro é obrigatório ao criar cofres no modo de combinação.

Tabela 7 ResourceCreate

Parâmetro

Obrigatório

Tipo

Descrição

extra_info

Não

ResourceExtraInfo object

Informações adicionais do recurso

id

Sim

String

ID do recurso a ser copiado

type

Sim

String

Tipo do recurso a ser copiado, que pode ser OS::Nova::Server, OS::Cinder::Volume, OS::Ironic::BareMetalServer, OS::Native::Server, OS::Sfs::Turbo ou OS::Workspace::DesktopV2

name

Não

String

Nome do recurso

Mínimo: 0

Máximo: 255

Tabela 8 ResourceExtraInfo

Parâmetro

Obrigatório

Tipo

Descrição

exclude_volumes

Não

Array of strings

IDs dos discos dos quais não será feito backup. Este parâmetro é usado quando os servidores são adicionados a um cofre, que inclui todos os discos do servidor. Mas alguns discos não precisam ser copiados. Ou no caso de um servidor ter sido adicionado anteriormente e alguns discos neste servidor não precisarem ser copiados.

Tabela 9 Tag

Parâmetro

Obrigatório

Tipo

Descrição

key

Sim

String

Chave

Pode conter no máximo 36 caracteres.

Não pode ser uma cadeia vazia.

Espaços antes e depois de uma chave serão descartados.

Não pode conter os seguintes caracteres: ASCII (0-31), sinais de igual (=), asteriscos (*), parênteses angulares esquerdos (<), parênteses angulares direitos (>), barras invertidas (), vírgulas (,), barras verticais (|) e barras (/).

Pode conter apenas caracteres chineses, letras, dígitos, hifens (-) e sublinhados (_).

value

Não

String

Valor

É obrigatório quando uma tag é adicionada e opcional quando uma tag é excluída.

Pode conter no máximo 43 caracteres.

Pode ser uma cadeia vazia.

Espaços antes e depois de um valor serão descartados.

Não pode conter os seguintes caracteres: ASCII (0-31), sinais de igual (=), asteriscos (*), parênteses angulares esquerdos (<), parênteses angulares direitos (>), barras invertidas (), vírgulas (,), barras verticais (|) e barras (/).

Pode conter apenas caracteres chineses, letras, dígitos, hifens (-), sublinhados (_), e pontos (.).

Tabela 10 VaultBindRules

Parâmetro

Obrigatório

Tipo

Descrição

tags

Não

Array of BindRulesTags objects

Filtra recursos associados automaticamente por tag.

Tabela 11 BindRulesTags

Parâmetro

Obrigatório

Tipo

Descrição

key

Sim

String

A chave não pode conter caracteres ASCII não imprimíveis (0–31) ou os seguintes caracteres: =*<>,|/

A chave pode conter apenas letras, dígitos, hifens (-) e sublinhados (_).

value

Sim

String

O valor não pode conter caracteres ASCII não imprimíveis (0–31) ou os seguintes caracteres: =*<>,|/

O valor pode conter apenas letras, dígitos, hifens (-) e sublinhados (_).

Parâmetros de resposta

Código de status: 200

Tabela 12 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

vault

VaultCreateResource object

Objetos retornados após uma consulta do cofre

Tabela 13 VaultCreateResource

Parâmetro

Tipo

Descrição

billing

Billing object

Informações de operações

description

String

Descrição do cofre definida pelo usuário

Mínimo: 0

Máximo: 255

id

String

ID do cofre

name

String

Nome do cofre

Mínimo: 1

Máximo: 64

project_id

String

ID do projeto

provider_id

String

ID do tipo de recurso do cofre

resources

Array of ResourceResp objects

Recursos do cofre

tags

Array of Tag objects

Tags do cofre

enterprise_project_id

String

ID do projeto empresarial. O valor padrão é 0.

auto_bind

Boolean

Se deve ativar a associação automática. Seu valor padrão é false (não ativado).

bind_rules

VaultBindRules object

Regras de associação

user_id

String

ID do usuário

created_at

String

Tempo de criação, por exemplo, 2020-02-05T10:38:34.209782

auto_expand

Boolean

Se ativar a expansão de capacidade automática para o cofre. Somente os cofres do pagamento por uso suportam a autoexpansão da capacidade.

smn_notify

Boolean

Notificação de exceção

Padrão: true

threshold

Integer

Limite de capacidade do cofre. Se o uso da capacidade do cofre excede este limite, uma notificação de exceção é enviada.

Mínimo: 1

Máximo: 100

Padrão: 80

Tabela 14 Billing

Parâmetro

Tipo

Descrição

allocated

Integer

Capacidade alocada, em GB.

charging_mode

String

Modo de cobrança, que pode ser post_paid (pagamento por uso) ou pre_paid (anual/mensal). O valor padrão é post_paid.

cloud_type

String

Tipo de nuvem, que pode ser public ou hybrid

consistent_level

String

Especificação do cofre, que pode ser crash_consistent (backup consistente com falhas) ou app_consistent (backup consistente com a aplicação)

object_type

String

Tipo de objeto, que pode ser server, disk, turbo ou workspace

order_id

String

ID do pedido

product_id

String

ID do produto

protect_type

String

Tipo de proteção, que pode ser backup ou replication

size

Integer

Capacidade, em GB

Mínimo: 1

Máximo: 10485760

spec_code

String

Código de especificação. Cofre de backup do servidor: vault.backup.server.normal; Cofre de backup em disco: vault.backup.volume.normal; Cofre de backup do sistema de arquivos: vault.backup.turbo.normal

status

String

Estado do cofre

Valores de enumeração:

  • available
  • lock
  • frozen
  • deleting
  • error

storage_unit

String

Nome do bucket para o cofre

used

Integer

Capacidade utilizada, em MB.

frozen_scene

String

Cenário quando uma conta é congelada

Tabela 15 ResourceResp

Parâmetro

Tipo

Descrição

extra_info

ResourceExtraInfo object

Informações adicionais do recurso

id

String

ID do recurso a ser copiado

name

String

Nome do recurso a ser copiado

Mínimo: 0

Máximo: 255

protect_status

String

Status da proteção

Valores de enumeração:

  • available
  • error
  • protecting
  • restoring
  • removing

size

Integer

Capacidade alocada para os recursos associados, em GB

type

String

Tipo do recurso a ser copiado, que pode ser OS::Nova::Server, OS::Cinder::Volume, OS::Ironic::BareMetalServer, OS::Native::Server, OS::Sfs::Turbo ou OS::Workspace::DesktopV2

backup_size

Integer

Tamanho do backup

backup_count

Integer

Número de backups

Tabela 16 ResourceExtraInfo

Parâmetro

Tipo

Descrição

exclude_volumes

Array of strings

IDs dos discos dos quais não será feito backup. Este parâmetro é usado quando os servidores são adicionados a um cofre, que inclui todos os discos do servidor. Mas alguns discos não precisam ser copiados. Ou no caso de um servidor ter sido adicionado anteriormente e alguns discos neste servidor não precisarem ser copiados.

Tabela 17 Tag

Parâmetro

Tipo

Descrição

key

String

Chave

Pode conter no máximo 36 caracteres.

Não pode ser uma cadeia vazia.

Espaços antes e depois de uma chave serão descartados.

Não pode conter os seguintes caracteres: ASCII (0-31), sinais de igual (=), asteriscos (*), parênteses angulares esquerdos (<), parênteses angulares direitos (>), barras invertidas (), vírgulas (,), barras verticais (|) e barras (/).

Pode conter apenas caracteres chineses, letras, dígitos, hifens (-) e sublinhados (_).

value

String

Valor

É obrigatório quando uma tag é adicionada e opcional quando uma tag é excluída.

Pode conter no máximo 43 caracteres.

Pode ser uma cadeia vazia.

Espaços antes e depois de um valor serão descartados.

Não pode conter os seguintes caracteres: ASCII (0-31), sinais de igual (=), asteriscos (*), parênteses angulares esquerdos (<), parênteses angulares direitos (>), barras invertidas (), vírgulas (,), barras verticais (|) e barras (/).

Pode conter apenas caracteres chineses, letras, dígitos, hifens (-), sublinhados (_), e pontos (.).

Tabela 18 VaultBindRules

Parâmetro

Tipo

Descrição

tags

Array of BindRulesTags objects

Filtra recursos associados automaticamente por tag.

Tabela 19 BindRulesTags

Parâmetro

Tipo

Descrição

key

String

A chave não pode conter caracteres ASCII não imprimíveis (0–31) ou os seguintes caracteres: =*<>,|/

A chave pode conter apenas letras, dígitos, hifens (-) e sublinhados (_).

value

String

O valor não pode conter caracteres ASCII não imprimíveis (0–31) ou os seguintes caracteres: =*<>,|/

O valor pode conter apenas letras, dígitos, hifens (-) e sublinhados (_).

Código de status: 400

Tabela 20 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Para obter detalhes, consulte Códigos de erro.

error_msg

String

Mensagem de erro

Exemplo de solicitações

  • Criar um compartimento de backup em disco (somente com parâmetros obrigatórios)
     POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults
    
    {
      "vault" : {
        "billing" : {
          "consistent_level" : "crash_consistent",
          "object_type" : "disk",
          "protect_type" : "backup",
          "size" : 40,
          "charging_mode" : "post_paid",
          "is_auto_renew" : false,
          "is_auto_pay" : false
        },
        "name" : "test",
        "resources" : [ ]
      }
    }
  • Criar um cofre de backup do servidor, associando recursos e adicionando tags
    POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults
    
    {
      "vault" : {
        "backup_policy_id" : "6dd81d7d-a4cb-443e-b8ed-1af0bd3a261b",
        "billing" : {
          "cloud_type" : "public",
          "consistent_level" : "crash_consistent",
          "object_type" : "server",
          "protect_type" : "backup",
          "size" : 100,
          "charging_mode" : "post_paid",
          "is_auto_renew" : false,
          "is_auto_pay" : false,
          "console_url" : "https://console.demo.com/cbr/?agencyId=97fcd896b7914cb98f553a087232e243&region=testregion/cbr/manager/csbs/vaultList"
        },
        "description" : "vault_description",
        "name" : "vault_name",
        "resources" : [ {
          "extra_info" : {
            "exclude_volumes" : [ "43a320a5-3efd-4568-b1aa-8dd9183cc64b" ]
          },
          "id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c",
          "type" : "OS::Nova::Server"
        } ],
        "tags" : [ {
          "key" : "key01",
          "value" : "value01"
        } ],
        "enterprise_project_id" : "0"
      }
    }

Exemplo de respostas

Código de status: 200

OK

{
  "vault" : {
    "provider_id" : "0daac4c5-6707-4851-97ba-169e36266b66",
    "description" : "vault_description",
    "tags" : [ {
      "value" : "value01",
      "key" : "key01"
    } ],
    "enterprise_project_id" : "0",
    "auto_bind" : false,
    "id" : "ad7627ae-5b0b-492e-b6bd-cd809b745197",
    "user_id" : "38d65be2ecd840d19046e239e841a734",
    "name" : "vault_name",
    "billing" : {
      "status" : "available",
      "used" : 0,
      "protect_type" : "backup",
      "order_id" : null,
      "object_type" : "server",
      "allocated" : 40,
      "spec_code" : "vault.backup.server.normal",
      "size" : 100,
      "cloud_type" : "public",
      "product_id" : null,
      "consistent_level" : "crash_consistent",
      "storage_unit" : null,
      "charging_mode" : "post_paid"
    },
    "created_at" : "2019-05-23T12:51:10.071232",
    "project_id" : "fc347bc64ccd4589ae52e4f44b7433c7",
    "resources" : [ {
      "name" : "ecs-b977-0002",
      "backup_size" : 0,
      "protect_status" : "available",
      "backup_count" : 0,
      "extra_info" : {
        "include_volumes" : [ {
          "os_version" : "CentOS 7.6 64bit",
          "id" : "73ee8446-bce7-4371-9650-b440b5f4c1d0"
        } ]
      },
      "type" : "OS::Nova::Server",
      "id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c",
      "size" : 40
    } ]
  }
}

Códigos de status

Código de status

Descrição

200

OK

400

Bad Request

Códigos de erro

Consulte Códigos de erro.