Creación de un PersistentVolume
Función
Esta API se utiliza para crear un PersistentVolume asociado con el almacenamiento en la nube (por ejemplo, EVS, SFS y OBS). Esta API ha sido obsoleta. Utilice la API de PV de Kubernetes correspondiente en su lugar.
El formato del URL de gestión de almacenamiento es https://{clusterid}.Endpoint/uri. En el URL, {clusterid} indica un ID del clúster y uri indica la ruta de acceso al recurso, es decir, la ruta de acceso a la API. Si se utiliza https://Endpoint/uri, el parámetro X-Cluster-ID debe especificarse en el encabezado de solicitud.
URI
POST /api/v1/cloudpersistentvolumes
Solicitud
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| Content-Type | Sí | String | Tipo de cuerpo del mensaje (formato). Valores posibles:
|
| X-Auth-Token | Sí | String | Las solicitudes para invocar a una API pueden autenticarse usando un token o AK/SK. Si se utiliza la autenticación basada en token, este parámetro es obligatorio y se debe establecer en un token de usuario. Para obtener más información sobre cómo obtener un token de usuario, consulte Autenticación. Longitud máxima: 16,384 caracteres |
| X-Cluster-ID | No | String | ID del clúster. Este parámetro es obligatorio cuando se utiliza el formato de URL https://Endpoint/uri. Para obtener más información sobre cómo obtener el valor, consulte Cómo obtener parámetros en el URI de la API. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| apiVersion | Sí | String | Versión de la API. El valor se fija a v1. Valor predeterminado: v1 |
| kind | Sí | String | Tipo de la API. El valor se fija a PersistentVolume. Valor predeterminado: PersistentVolume |
| metadata | Sí | Objeto de PersistentVolumeMetadata | Información de metadatos de PersistentVolume. |
| spec | Sí | Objeto de PersistentVolumeSpec | Especificaciones de PersistentVolume. |
| status | No | Objeto de PersistentVolumeStatus | Información de estado de PersistentVolume. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| name | Sí | String | Nombre del PV. Escriba de 1 a 253 caracteres que comiencen y terminen con una letra o un dígito. Solo se permiten letras minúsculas, dígitos, guiones (-) y puntos (.). Los nombres de PV deben ser únicos en un espacio de nombres. |
| labels | No | Map<String,String> | Etiquetas de PV, en formato de pares de clave y valor.
Etiqueta de ejemplo: "foo": "bar" |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| flexVolume | Sí | FlexVolume object | Complemento de FlexVolume de almacenamiento de Kubernetes. |
| persistentVolumeReclaimPolicy | No | String | Política de recuperación de PV. Valores posibles:
|
| accessModes | Sí | Matriz de strings | Modo de acceso del PersistentVolume.
|
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| driver | Sí | String | Nombre del complemento de almacenamiento de FlexVolume. Establezca este parámetro en función del tipo de volumen de almacenamiento.
|
| fsType | Sí | String | Tipo del sistema de archivos. Establezca este parámetro en función del tipo de volumen de almacenamiento.
|
| options | Sí | Objeto de Options | Elementos de configuración de FlexVolume. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| fsType | Sí | String | Tipo del sistema de archivos. Establezca este parámetro en función del tipo de volumen de almacenamiento.
|
| region | Sí | String | Región donde se encuentra el almacenamiento en la nube. |
| volumeID | Sí | String | UUID del almacenamiento en la nube. Si el almacenamiento en la nube es un bucket de OBS, establezca este parámetro en el nombre del bucket. |
| storageType | Sí | String | Tipo de volumen de almacenamiento en la nube.
|
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| accessModes | No | Matriz de strings | Modo de acceso del PersistentVolume. |
| phase | No | String | Estado de PV. Valores posibles:
|
Respuesta
Código de estado: 201
| Parámetro | Tipo | Descripción |
|---|---|---|
| apiVersion | String | Versión de la API. El valor se fija a v1. Valor predeterminado: v1 |
| kind | String | Tipo de la API. El valor se fija a PersistentVolume. Valor predeterminado: PersistentVolume |
| metadata | Objeto de PersistentVolumeMetadata | Información de metadatos de PersistentVolume. |
| spec | Objeto de PersistentVolumeSpec | Especificaciones de PersistentVolume. |
| status | Objeto de PersistentVolumeStatus | Información de estado de PersistentVolume. |
| Parámetro | Tipo | Descripción |
|---|---|---|
| name | String | Nombre del PV. Escriba de 1 a 253 caracteres que comiencen y terminen con una letra o un dígito. Solo se permiten letras minúsculas, dígitos, guiones (-) y puntos (.). Los nombres de PV deben ser únicos en un espacio de nombres. |
| labels | Map<String,String> | Etiquetas de PV, en formato de pares de clave y valor.
Etiqueta de ejemplo: "foo": "bar" |
| Parámetro | Tipo | Descripción |
|---|---|---|
| flexVolume | Objeto de FlexVolume | Complemento de FlexVolume de almacenamiento de Kubernetes. |
| persistentVolumeReclaimPolicy | String | Política de recuperación de PV. Valores posibles:
|
| accessModes | Matriz de strings | Modo de acceso del PersistentVolume.
|
| Parámetro | Tipo | Descripción |
|---|---|---|
| driver | String | Nombre del complemento de almacenamiento de FlexVolume. Establezca este parámetro en función del tipo de volumen de almacenamiento.
|
| fsType | String | Tipo del sistema de archivos. Establezca este parámetro en función del tipo de volumen de almacenamiento.
|
| options | Objeto de Options | Elementos de configuración de FlexVolume. |
| Parámetro | Tipo | Descripción |
|---|---|---|
| fsType | String | Tipo del sistema de archivos. Establezca este parámetro en función del tipo de volumen de almacenamiento.
|
| region | String | Región donde se encuentra el almacenamiento en la nube. |
| volumeID | String | UUID del almacenamiento en la nube. Si el almacenamiento en la nube es un bucket de OBS, establezca este parámetro en el nombre del bucket. |
| storageType | String | Tipo de volumen de almacenamiento en la nube.
|
| Parámetro | Tipo | Descripción |
|---|---|---|
| accessModes | Matriz de strings | Modo de acceso del PersistentVolume. |
| phase | String | Estado de PV. Valores posibles:
|
Ejemplo de solicitud
- Especificar un ID de volumen de EVS y crear un PersistentVolume:
{ "apiVersion" : "v1", "kind" : "PersistentVolume", "metadata" : { "labels" : { "name" : "pv-test" }, "name" : "pv-test" }, "spec" : { "accessModes" : [ "ReadWriteMany" ], "flexVolume" : { "driver" : "huawei.com/fuxivol", "fsType" : "ext4", "options" : { "fsType" : "ext4", "kubernetes.io/namespace" : "default", "region" : "southchina", "volumeID" : "76e01b29-08b9-11e8-9ca5-1051722006ec", "storageType" : "bs" } }, "persistentVolumeReclaimPolicy" : "Delete" } } -
{ "apiVersion" : "v1", "kind" : "PersistentVolume", "metadata" : { "labels" : { "name" : "pv-test" }, "name" : "pv-test" }, "spec" : { "accessModes" : [ "ReadWriteMany" ], "flexVolume" : { "driver" : "huawei.com/fuxivol", "fsType" : "ext4", "options" : { "fsType" : "ext4", "region" : "southchina", "volumeID" : "76e01b29-08b9-11e8-9ca5-1051722006ec", "storageType" : "bs" } }, "persistentVolumeReclaimPolicy" : "Delete" } }
Ejemplo de la respuesta
Código de estado: 201
El trabajo para crear un PersistentVolume se entrega con éxito.
{
"kind" : "PersistentVolume",
"apiVersion" : "v1",
"metadata" : {
"name" : "pv-test",
"namespace" : "default",
"selfLink" : "/api/v1/namespaces/default/persistentvolumes/pv-test",
"uid" : "e174188f-ff21-11e7-855b-fa163eaf5675",
"resourceVersion" : "174229",
"creationTimestamp" : "2018-01-22T03:11:03Z",
"labels" : {
"name" : "pv-test"
},
"enable" : true
},
"spec" : {
"capacity" : {
"storage" : "1Gi"
},
"accessModes" : [ "ReadWriteMany" ],
"flexVolume" : {
"driver" : "huawei.com/fuxivol",
"fsType" : "ext4",
"options" : {
"fsType" : "ext4",
"kubernetes.io/namespace" : "default",
"volumeID" : "0781b22f-4d89-4e9c-b026-80e545cea16c"
}
},
"persistentVolumeReclaimPolicy" : "Delete"
},
"status" : {
"phase" : "Pending"
}
} Código de estado
| Código de estado | Descripción |
|---|---|
| 201 | El trabajo para crear un PersistentVolume se entrega con éxito. |
Códigos de error
Para obtener más información, véase Códigos de error.