Creación de un almacén
Función
Esta API se utiliza para crear un almacén.
URI
POST /v3/{project_id}/vaults
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| project_id | Sí | String | ID de proyecto |
Parámetros de solicitud
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| X-Auth-Token | Sí | String | Token de usuario. El token se puede obtener llamando a la API de IAM utilizada para obtener un token de usuario. El valor de X-Subject-Token en el encabezado de respuesta es el token de usuario. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| vault | Sí | VaultCreate object | Parámetros para crear un almacén |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| backup_policy_id | No | String | ID de política de copia de respaldo. Si el valor de este parámetro es nulo, no se realiza una copia de respaldo automática. |
| billing | Sí | BillingCreate object | Información de parámetros para la creación |
| description | No | String | Descripción del almacén definido por el usuario Mínimo: 0 Máximo: 64 |
| name | Sí | String | Nombre de almacén Mínimo: 1 Máximo: 64 |
| resources | Sí | Array of ResourceCreate objects | Recursos asociados. Establezca este parámetro en [] si no hay recursos asociados al crear un almacén. |
| tags | No | Array of Tag objects | Lista de etiquetas. Esta lista no puede ser una lista vacía. La lista puede contener hasta 10 claves. Las claves de esta lista deben ser únicas. |
| enterprise_project_id | No | String | ID del proyecto empresarial |
| auto_bind | No | Boolean | Si se admite la asociación automática |
| bind_rules | No | VaultBindRules object | Reglas para la asociación automática |
| auto_expand | No | Boolean | Si se activa la ampliación automática de la capacidad para el almacén. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| cloud_type | No | String | Tipo de nube, que es el public |
| consistent_level | Sí | String | Especificación de almacén, que es crash_consistent de forma predeterminada (crash consistent backup) |
| object_type | Sí | String | Tipo de objeto, que puede ser server, disk, o turbo |
| protect_type | Sí | String | Tipo de protección, que es de backup |
| size | Sí | Integer | Capacidad, en GB Mínimo: 1 Máximo: 10485760 |
| charging_mode | No | String | Modo de facturación, que es el post_paid Predeterminado: post_paid |
| period_type | No | String | Tipo de paquete. Este parámetro es obligatorio si charging_mode se establece en pre_paid. Los valores posibles son year (anual) o month (mensual). Valores de enumeración:
|
| period_num | No | Integer | Duración requerida para el paquete. Este parámetro es obligatorio si charging_mode se establece en pre_paid. |
| is_auto_renew | No | Boolean | Si desea renovar automáticamente la suscripción después de la expiración. Por defecto, no se renueva. Predeterminado: false |
| is_auto_pay | No | Boolean | Si la tarifa se deduce automáticamente del saldo de la cuenta del cliente después de enviar un pedido. El modo de pago no automático se utiliza por defecto. Predeterminado: false |
| console_url | No | String | URL de redireccionamiento Mínimo: 1 Máximo: 255 |
| extra_info | No | BillbingCreateExtraInfo object | Información extendida para crear un almacén |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| combined_order_id | No | String | ID de la aplicación para crear depósitos combinados. Este parámetro es obligatorio cuando se crean depósitos combinados. |
| combined_order_ecs_num | No | Integer | Número de elementos en la aplicación para crear depósitos en el modo de combinación. Este parámetro es obligatorio cuando se crean depósitos en el modo de combinación. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| extra_info | No | ResourceExtraInfo object | Información adicional del recurso |
| id | Sí | String | ID del recurso al que se va a realizar una copia de seguridad |
| type | Sí | String | Tipo del recurso que se va a hacer una copia de seguridad, que puede ser OS::Nova::Server, OS::Cinder::Volume, o OS::Sfs::Turbo |
| name | No | String | Nombre de recurso Mínimo: 0 Máximo: 255 |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| exclude_volumes | No | Array of strings | ID de los discos de los que no se realizará una copia de seguridad. Este parámetro se utiliza cuando se agregan servidores a un almacén, que incluye todos los discos de servidor. Pero algunos discos no necesitan ser respaldados. O en caso de que se haya agregado un servidor previamente y no sea necesario realizar copias de seguridad de algunos discos de este servidor. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| tags | No | Array of Tag objects | Filtra los recursos asociados automáticamente por etiqueta. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| key | Sí | String | Clave Puede contener un máximo de 36 caracteres. No puede ser una cadena vacía. Los espacios antes y después de una clave serán descartados. No puede contener los siguientes caracteres: ASCII (0-31), signos iguales (=), asteriscos (*), corchetes angulares izquierdos (<), corchetes angulares rectos (>), barras invertidas (), comas (,), barras verticales (|), y barras inclinadas (/) Puede contener solo letras, dígitos, guiones (-) y guiones bajos (_). |
| value | No | String | Valor Es obligatorio cuando se agrega una etiqueta y opcional cuando se elimina una etiqueta. Puede contener un máximo de 43 caracteres. Puede ser una cadena vacía. Los espacios antes y después de un valor serán descartados. No puede contener los siguientes caracteres: ASCII (0-31), signos iguales (=), asteriscos (*), corchetes angulares izquierdos (<), corchetes angulares rectos (>), barras invertidas (), comas (,), barras verticales (|), y barras inclinadas (/) Puede contener solo letras, dígitos, guiones (-) y guiones bajos (_). |
Parámetros de respuesta
Código de estado: 200
| Parámetro | Tipo | Descripción |
|---|---|---|
| vault | VaultCreateResource object | Objetos devueltos después de una consulta de almacén |
| Parámetro | Tipo | Descripción |
|---|---|---|
| billing | Billing object | Información de operaciones |
| description | String | Descripción del almacén definido por el usuario Mínimo: 0 Máximo: 255 |
| id | String | ID de almacén |
| name | String | Nombre de almacén Mínimo: 1 Máximo: 64 |
| project_id | String | ID de proyecto |
| provider_id | String | ID del tipo de recurso de almacén |
| resources | Array of ResourceResp objects | Recursos de almacén |
| tags | Array of Tag objects | Etiquetas de almacén |
| enterprise_project_id | String | ID de proyecto de empresa. Su valor predeterminado es 0. |
| auto_bind | Boolean | Si se debe habilitar la asociación automática. Su valor predeterminado es false (no habilitar). |
| bind_rules | VaultBindRules object | Reglas de asociación |
| user_id | String | ID de usuario |
| created_at | String | Tiempo de creación, por ejemplo, 2020-02-05T10:38:34.209782 |
| auto_expand | Boolean | Si se activa la ampliación automática de la capacidad para el almacén. |
| smn_notify | Boolean | Notificación de excepción Predeterminado: true |
| threshold | Integer | Umbral de capacidad del almacén. Si el uso de la capacidad del almacén supera este umbral, se envía una notificación de excepción. Mínimo: 1 Máximo: 100 Predeterminado: 80 |
| Parámetro | Tipo | Descripción |
|---|---|---|
| allocated | Integer | Capacidad asignada, en GB. |
| charging_mode | String | Modo de facturación, que es el post_paid |
| cloud_type | String | Tipo de nube, que es el public |
| consistent_level | String | Especificación de almacén, que es crash_consistent de forma predeterminada (crash consistent backup) |
| object_type | String | Tipo de objeto, que puede ser server, disk, o turbo |
| order_id | String | ID del pedido |
| product_id | String | ID del producto |
| protect_type | String | Tipo de protección, que es de backup |
| size | Integer | Capacidad, en GB Mínimo: 1 Máximo: 10485760 |
| spec_code | String | Almacén de copia de respaldo del servidor: vault.backup.server.normal; Almacén de copia de respaldo del disco: vault.backup.volume.normal; Almacén de copia de respaldo del sistema de archivos: vault.backup.turbo.normal |
| status | String | Estado del almacén Valores de enumeración:
|
| storage_unit | String | Nombre del bucket del almacén |
| used | Integer | Capacidad utilizada, en MB. |
| frozen_scene | String | Escenario cuando una cuenta está congelada |
| Parámetro | Tipo | Descripción |
|---|---|---|
| extra_info | ResourceExtraInfo object | Información adicional del recurso |
| id | String | ID del recurso al que se va a realizar una copia de seguridad |
| name | String | Nombre del recurso al que se va a hacer una copia de seguridad Mínimo: 0 Máximo: 255 |
| protect_status | String | Estado de protección Valores de enumeración:
|
| size | Integer | Capacidad asignada para los recursos asociados, en GB |
| type | String | Tipo del recurso que se va a hacer una copia de seguridad, que puede ser OS::Nova::Server, OS::Cinder::Volume, o OS::Sfs::Turbo |
| backup_size | Integer | Tamaño de copia de respaldo |
| backup_count | Integer | Cantidad de copias de respaldo |
| Parámetro | Tipo | Descripción |
|---|---|---|
| exclude_volumes | Array of strings | ID de los discos de los que no se realizará una copia de seguridad. Este parámetro se utiliza cuando se agregan servidores a un almacén, que incluye todos los discos de servidor. Pero algunos discos no necesitan ser respaldados. O en caso de que se haya agregado un servidor previamente y no sea necesario realizar copias de seguridad de algunos discos de este servidor. |
| Parámetro | Tipo | Descripción |
|---|---|---|
| tags | Array of Tag objects | Filtra los recursos asociados automáticamente por etiqueta. |
| Parámetro | Tipo | Descripción |
|---|---|---|
| key | String | Clave Puede contener un máximo de 36 caracteres. No puede ser una cadena vacía. Los espacios antes y después de una clave serán descartados. No puede contener los siguientes caracteres: ASCII (0-31), signos iguales (=), asteriscos (*), corchetes angulares izquierdos (<), corchetes angulares rectos (>), barras invertidas (), comas (,), barras verticales (|), y barras inclinadas (/) Puede contener solo letras, dígitos, guiones (-) y guiones bajos (_). |
| value | String | Valor Es obligatorio cuando se agrega una etiqueta y opcional cuando se elimina una etiqueta. Puede contener un máximo de 43 caracteres. Puede ser una cadena vacía. Los espacios antes y después de un valor serán descartados. No puede contener los siguientes caracteres: ASCII (0-31), signos iguales (=), asteriscos (*), corchetes angulares izquierdos (<), corchetes angulares rectos (>), barras invertidas (), comas (,), barras verticales (|), y barras inclinadas (/) Puede contener solo letras, dígitos, guiones (-) y guiones bajos (_). |
Código de estado: 400
| Parámetro | Tipo | Descripción |
|---|---|---|
| error_code | String | Para obtener más información, consulte Códigos de error. |
| error_msg | String | Mensaje de error |
Solicitudes de ejemplo
- Creación de un almacén de copias de seguridad del servidor, asociación de recursos y adición de etiquetas
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®ion=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" } } - Creación de un almacén de copias de seguridad en disco (solo con parámetros obligatorios)
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" : [ ] } }
Ejemplo de respuestas
Código de estado: 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 estado
| Código de estado | Descripción |
|---|---|
| 200 | OK |
| 400 | Bad Request |
Códigos de error
Consulte Códigos de error.