Consulta de detalles sobre un disco de EVS
Función
Esta API se utiliza para consultar detalles sobre un solo disco de EVS. Se admite la autorización de proyectos empresariales.
Método de invocación
Para obtener más información, consulte Invocación de las API.
Información de autorización
Si está utilizando la autorización basada en políticas de identidad, no se requiere ningún permiso basado en políticas de identidad para invocar esta API.
- Si está utilizando la autorización basada en roles/políticas, consulte Políticas de permisos y acciones admitidas para obtener más información sobre los permisos requeridos.
- Si está utilizando la autorización basada en políticas de identidad, no se requiere ningún permiso basado en políticas de identidad para invocar esta API.
URI
GET /v2/{project_id}/cloudvolumes/{volume_id}
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| project_id | Sí | String | Definición El ID del proyecto. Para obtener más información, consulte Obtención de un ID de proyecto. Restricciones N/D Rango N/D Valor predeterminado N/D |
| volume_id | Sí | String | Definición El ID del disco. Puede invocar la API Consulta de detalles sobre todos los discos de EVS para obtener el ID del disco. Restricciones N/D Rango N/D Valor predeterminado N/D |
Parámetros de solicitud
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| X-Auth-Token | Sí | String | Definición El token de usuario. Puede obtenerlo invocando la API de IAM. El valor de X-Subject-Token en el encabezado de respuesta es el token de usuario. Restricciones N/D Rango N/D Valor predeterminado N/D |
Parámetros de respuesta
Código de estado: 200
| Parámetro | Tipo | Descripción |
|---|---|---|
| volume | VolumeDetail object | Definición Los detalles del disco. Rango N/D |
| Parámetro | Tipo | Descripción |
|---|---|---|
| id | String | Definición El ID del disco. Rango N/D |
| links | Array of Link objects | Definición El URI del disco. Rango N/D |
| name | String | Definición El nombre del disco. Rango N/D |
| status | String | Definición El estado del disco. Rango Para obtener más información, consulte Estado del disco de EVS. |
| attachments | Array of Attachment objects | Definición La información de la conexión del disco. Rango N/D |
| availability_zone | String | Definición La AZ a la que pertenece el disco. Rango N/D |
| os-vol-host-attr:host | String | Definición El campo reservado. Rango N/D |
| source_volid | String | Definición El ID del disco de origen. Este parámetro tiene un valor si el disco se crea a partir de un disco de origen. Actualmente, este campo no se admite. Rango N/D |
| snapshot_id | String | Definición El ID de la instantánea. Este parámetro tiene un valor si el disco se crea a partir de una instantánea. Rango N/D |
| description | String | Definición La descripción del disco. Rango N/D |
| created_at | String | Definición La hora en que se creó el disco. Rango Formato de tiempo: UTC AAAA-MM-DDTHH:MM:SS.XXXXXX |
| os-vol-tenant-attr:tenant_id | String | Definición ID del inquilino al que pertenece el disco. El ID del tenant es el mismo que el ID del proyecto. Rango N/D |
| volume_image_metadata | Map<String,Object> | Definición Los metadatos de la imagen del disco. Para obtener más información sobre el campo volume_image_metadata, consulte Consulta de detalles de imágenes (API nativa de OpenStack). Rango N/D |
| volume_type | String | Definición El tipo de disco. Rango El valor puede ser SATA, SAS, GPSSD, SSD, ESSD o GPSSD2. |
| size | Integer | Definición La capacidad del disco, en GiB. Rango N/D |
| consistencygroup_id | String | Definición El campo reservado. Rango N/D |
| bootable | String | Definición Si el disco es arrancable. Rango true: El disco es arrancable. false: El disco no es arrancable. |
| metadata | Map<String,Object> | Definición La información de metadatos del disco. Los invocadores pueden agregar o eliminar la información de metadatos. Rango Las claves de este parámetro utilizadas en EVS se describen a continuación:
Para obtener más información sobre cómo obtener el ID de clave, consulte Consulta de la lista de claves. |
| updated_at | String | Definición La hora en que se actualizó el disco. Rango Formato de tiempo: UTC AAAA-MM-DDTHH:MM:SS.XXXXXX |
| encrypted | Boolean | Definición Actualmente, este campo no se admite. Rango N/D |
| replication_status | String | Definición El campo reservado. Rango N/D |
| os-volume-replication:extended_status | String | Definición El campo reservado. Rango N/D |
| os-vol-mig-status-attr:migstat | String | Definición El campo reservado. Rango N/D |
| os-vol-mig-status-attr:name_id | String | Definición El campo reservado. Rango N/D |
| shareable | String | Definición Si el disco es compartible. El valor puede ser true (se puede compartir) o false (no se puede compartir). Este campo ha sido obsoleto. Utilice multiattach. Rango N/D |
| user_id | String | Definición El campo reservado. Rango N/D |
| service_type | String | Definición El tipo de servicio. Restricciones N/D Rango Valor predeterminado N/D |
| multiattach | Boolean | Definición Si el disco es compartible. Rango N/D |
| dedicated_storage_id | String | Definición El ID del grupo de almacenamiento dedicado que aloja el disco. Rango N/D |
| dedicated_storage_name | String | Definición El nombre del grupo de almacenamiento dedicado que aloja el disco. Rango N/D |
| tags | Map<String,String> | Definición Las etiquetas del disco. Este campo tiene valores si el disco tiene etiquetas. O bien, se deja vacío. Rango N/D |
| wwn | String | Definición El identificador único utilizado al conectar el disco. Rango N/D |
| enterprise_project_id | String | Definición El ID del proyecto empresarial al que se ha agregado el disco. Para obtener más información sobre los proyectos empresariales y cómo obtener los ID de proyecto empresarial, consulte Guía del usuario de Enterprise Management. Rango N/D |
| serial_number | String | Definición El número de serie del disco. Este campo solo se devuelve para discos de SCSI que no son HyperMetro y se utiliza para el mapeo de discos en la VM. Rango N/D |
| iops | iops object | Definición La información de IOPS del disco. Este parámetro solo está disponible para discos SSD V2 de uso general. Rango N/D |
| throughput | throughput object | Definición La información del throughput del disco. Este parámetro solo aparece para discos SSD V2 de uso general. Rango N/D |
| root_resource_type | String | Definición El tipo de recurso raíz. Rango N/D |
| root_resource_id | String | Definición El ID del recurso raíz. Rango N/D |
| parent_resource_type | String | Definición El tipo de recurso principal. Rango N/D |
| parent_resource_id | String | Definición El ID del recurso principal. Rango N/D |
| snapshot_policy_id | String | Definición El ID de la política de instantáneas automáticas aplicada al disco. Rango N/D |
| Parámetro | Tipo | Descripción |
|---|---|---|
| href | String | Definición El enlace de acceso directo correspondiente. Rango N/D |
| rel | String | Definición El nombre del marcador del enlace de acceso directo. Rango N/D |
| Parámetro | Tipo | Descripción |
|---|---|---|
| attached_at | String | Definición La hora en que se conectó el disco. Rango Formato de tiempo: UTC AAAA-MM-DDTHH:MM:SS.XXXXXX |
| attachment_id | String | Definición El ID del adjunto. Rango N/D |
| device | String | Definición El nombre del dispositivo. Rango N/D |
| host_name | String | Definición El nombre del host físico que aloja el servidor en la nube al que está conectado el disco. Rango N/D |
| id | String | Definición El ID del disco conectado. Rango N/D |
| server_id | String | Definición El ID del servidor al que está conectado el disco. Rango N/D |
| volume_id | String | Definición El ID del disco. Rango N/D |
| Parámetro | Tipo | Descripción |
|---|---|---|
| frozened | Boolean | Definición La etiqueta congelada. Rango N/D |
| id | String | Definición El ID de las IOPS del disco. Rango N/D |
| total_val | Integer | Definición Las IOPS. Rango N/D |
| Parámetro | Tipo | Descripción |
|---|---|---|
| frozened | Boolean | Definición La etiqueta congelada. Rango N/D |
| id | String | Definición El ID del throughput. Rango N/D |
| total_val | Integer | Definición El throughput. Rango N/D |
Código de estado: 400
| Parámetro | Tipo | Descripción |
|---|---|---|
| error | Error object | Definición El código de error devuelto si se produce un error. Para obtener más información sobre el código de error, consulte Códigos de error. Rango N/D |
| Parámetro | Tipo | Descripción |
|---|---|---|
| code | String | Definición El código de error devuelto si se produce un error. Rango Para obtener más información sobre el código de error, consulte Códigos de error. |
| message | String | Definición El mensaje de error devuelto si se produce un error. Rango N/D |
Ejemplos de solicitudes
GET https://{endpoint}/v2/{project_id}/cloudvolumes/{volume_id} Ejemplos de respuestas
Código de estado: 200
OK
{
"volume" : {
"attachments" : [ ],
"links" : [ {
"href" : "https://volume.az0.dc1.domainname.com/v2/40acc331ac784f34842ba4f08ff2be48/volumes/591ac654-26d8-41be-bb77-4f90699d2d41",
"rel" : "self"
}, {
"href" : "https://volume.az0.dc1.domainname.com/40acc331ac784f34842ba4f08ff2be48/volumes/591ac654-26d8-41be-bb77-4f90699d2d41",
"rel" : "bookmark"
} ],
"availability_zone" : "az-dc-1",
"os-vol-host-attr:host" : "az-dc-1#SSD",
"multiattach" : true,
"updated_at" : "2016-02-03T02:19:29.895237",
"replication_status" : "disabled",
"id" : "591ac654-26d8-41be-bb77-4f90699d2d41",
"size" : 40,
"user_id" : "fd03ee73295e45478d88e15263d2ee4e",
"os-vol-tenant-attr:tenant_id" : "40acc331ac784f34842ba4f08ff2be48",
"metadata" : { },
"tags" : {
"key1" : "value1",
"key2" : "value2"
},
"status" : "available",
"description" : "auto-created_from_restore_from_backup",
"name" : "restore_backup_0115efb3-678c-4a9e-bff6-d3cd278238b9",
"bootable" : "false",
"created_at" : "2016-02-03T02:19:11.723797",
"service_type" : "EVS",
"wwn" : " 688860300000d136fa16f48f05992360"
}
} Código de estado: 400
Bad Request
{
"error" : {
"message" : "XXXX",
"code" : "XXX"
}
} Código de ejemplo del SDK
El código de ejemplo del SDK es el siguiente.
Java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.evs.v2.region.EvsRegion; import com.huaweicloud.sdk.evs.v2.*; import com.huaweicloud.sdk.evs.v2.model.*; public class ShowVolumeSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); EvsClient client = EvsClient.newBuilder() .withCredential(auth) .withRegion(EvsRegion.valueOf("<YOUR REGION>")) .build(); ShowVolumeRequest request = new ShowVolumeRequest(); request.withVolumeId("{volume_id}"); try { ShowVolumeResponse response = client.showVolume(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } } |
Python
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | # coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkevs.v2.region.evs_region import EvsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkevs.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = EvsClient.new_builder() \ .with_credentials(credentials) \ .with_region(EvsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ShowVolumeRequest() request.volume_id = "{volume_id}" response = client.show_volume(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
Go
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" evs "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/evs/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/evs/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/evs/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := evs.NewEvsClient( evs.EvsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ShowVolumeRequest{} request.VolumeId = "{volume_id}" response, err := client.ShowVolume(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
Más
Para obtener el código de ejemplo de SDK de más lenguajes de programación, consulte la pestaña Código de ejemplo en Explorador de API. El código de ejemplo del SDK se puede generar automáticamente.
Códigos de estado
| Código de estado | Descripción |
|---|---|
| 200 | OK |
| 400 | Bad Request |
Códigos de error
Consulte Códigos de error.