Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2023-04-13 GMT+08:00

Creación de un PVC

Función

Esta API se utiliza para crear un PVC (PersistentVolumeClaim) en un espacio de nombres especificado. Un PVC es una solicitud de PersistentVolume (PV). El PV contiene detalles de almacenamiento real en la nube, como discos de EVS, sistemas de archivos de SFS y bucket de OBS.

El formato del URL de la API de gestión de almacenamiento es https://{clusterid}.Endpoint/uri. En el URL, {clusterid} indica el 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, se debe especificar el parámetro X-Cluster-ID en el encabezado de la solicitud.

URI

POST /api/v1/namespaces/{namespace}/cloudpersistentvolumeclaims

Tabla 1 Parámetros de ruta

Parámetro

Obligatorio

Tipo

Descripción

namespace

String

Un espacio de nombres permite organizar recursos y objetos en grupos que no se superponen (por ejemplo, por equipo de proyectos o grupo de usuarios). El valor debe comenzar con una minúscula y no puede finalizar con un guion (-). Solo se permiten dígitos, letras minúsculas y guiones (-).

Restricciones:

  • Espacios de nombres personalizados.
  • El espacio de nombres proporcionado por el sistema es el espacio de nombres default.
  • Los espacios de nombres kube-system y kube-public no se pueden utilizar.

Parámetros de solicitud

Tabla 2 Parámetros de cabecera de solicitud

Parámetro

Obligatorio

Tipo

Descripción

Content-Type

String

Tipo de cuerpo del mensaje (formato).

X-Auth-Token

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, consulte Obtención de un token de usuario.

X-Cluster-ID

No

String

ID de clúster. Este campo es obligatorio cuando se utiliza el formato de URL https://Endpoint/uri. Para obtener más información sobre cómo obtener el valor, consulta Cómo obtener parámetros en el URI de API.

Tabla 3 Parámetros del cuerpo de solicitud

Parámetro

Obligatorio

Tipo

Descripción

apiVersion

String

Versión de la API. El valor se fija en v1.

kind

String

Tipo de la API. El valor se fija en PersistentVolumeClaim.

metadata

Objeto de PersistentVolumeClaimMetadata

Metadatos de objeto de clúster, que es una colección de atributos.

spec

Objeto de PersistentVolumeClaimSpec

Descripción detallada del objeto de clúster. CCE crea o actualiza objetos definiendo o actualizando spec.

status

No

Objeto de PersistentVolumeClaimStatus

Estado de PVC. La solicitud para crear un PVC no necesita llevar este parámetro.

Tabla 4 PersistentVolumeClaimMetadata

Parámetro

Obligatorio

Tipo

Descripción

name

String

Nombre de PVC. 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 PVC deben ser únicos en un espacio de nombres.

labels

No

String

Etiquetas de PVC, en formato de pares de clave y valor.

  • Key: Introduzca de 1 a 63 caracteres, comenzando con una letra o un dígito. Solo se permiten letras, dígitos, guiones (-), guiones bajos (_) y puntos (.). Un subdominio de DNS puede tener un prefijo a una clave y contener un máximo de 253 caracteres. Ejemplo de subdominio de DNS: example.com/my-key
  • Value: El valor puede dejarse en blanco o contener de 1 a 63 caracteres que comienzan con una letra o un dígito. Solo letras, dígitos, guiones (-), guiones bajos (_) y puntos (.) están permitidos en la string de caracteres.
Tabla 5 PersistentVolumeClaimSpec

Parámetro

Obligatorio

Tipo

Descripción

volumeID

String

ID de un volumen de almacenamiento existente.

  • Si se utiliza un volumen de SFS, de EVS o de SFS Turbo, establezca este parámetro en el ID del volumen.
  • Si se utiliza un bucket de OBS, establezca este parámetro en el nombre del bucket de OBS.

storageType

String

Clase de almacenamiento en la nube. Este parámetro se utiliza junto con volumeID. Es decir, deben configurarse volumeID y storageType al mismo tiempo.

  • bs: EVS
  • nfs: SFS
  • obs: OBS
  • efs: SFS Turbo

accessModes

Matriz de strings

Modo de acceso del volumen. Solo es válido el primer valor de todas las opciones seleccionadas.

  • ReadWriteOnce: El volumen puede ser montado como lectura-escritura por un solo nodo.
    NOTA:

    Esta función solo se admite cuando la versión del clúster es v1.13.10 y la versión del controlador de almacenamiento es 1.0.19.

  • ReadOnlyMany (predeterminado): muchos nodos pueden montar el volumen como de solo lectura.
  • ReadWriteMany: El volumen puede ser montado como lectura-escritura por muchos nodos.

storageClassName

No

String

Nombre de clase de almacenamiento del PVC.

volumeName

No

String

Nombre del PV unido al PVC.

resources

No

Objeto de ResourceRequirements

Solicitudes y límites de recursos.

volumeMode

No

String

Tipo de PV especificado por el PVC.

Tabla 6 ResourceRequirements

Parámetro

Obligatorio

Tipo

Descripción

limits

No

Map<String,String>

Límites de recursos. Este parámetro no es válido durante la creación.

requests

No

Map<String,String>

Solicitudes de recursos. Este parámetro no es válido durante la creación.

Tabla 7 PersistentVolumeClaimStatus

Parámetro

Obligatorio

Tipo

Descripción

accessModes

No

Matriz de strings

Modo de acceso del PV.

capacity

No

String

Recursos reales y capacidad del PV.

phase

No

String

Estado actual del PVC.

Parámetros de respuesta

Código de estado: 201

Tabla 8 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

apiVersion

String

Versión de la API. El valor se fija en v1.

kind

String

Tipo de la API. El valor se fija en PersistentVolumeClaim.

metadata

Objeto de PersistentVolumeClaimMetadata

Metadatos de objeto de clúster, que es una colección de atributos.

spec

Objeto de PersistentVolumeClaimSpec

Descripción detallada del objeto de clúster. CCE crea o actualiza objetos definiendo o actualizando spec.

status

Objeto de PersistentVolumeClaimStatus

Estado de PVC. La solicitud para crear un PVC no necesita llevar este parámetro.

Tabla 9 PersistentVolumeClaimMetadata

Parámetro

Tipo

Descripción

name

String

Nombre de PVC. 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 PVC deben ser únicos en un espacio de nombres.

labels

String

Etiquetas de PVC, en formato de pares de clave y valor.

  • Key: Introduzca de 1 a 63 caracteres, comenzando con una letra o un dígito. Solo se permiten letras, dígitos, guiones (-), guiones bajos (_) y puntos (.). Un subdominio de DNS puede tener un prefijo a una clave y contener un máximo de 253 caracteres. Ejemplo de subdominio de DNS: example.com/my-key
  • Value: El valor puede dejarse en blanco o contener de 1 a 63 caracteres que comienzan con una letra o un dígito. Solo letras, dígitos, guiones (-), guiones bajos (_) y puntos (.) están permitidos en la string de caracteres.
Tabla 10 PersistentVolumeClaimSpec

Parámetro

Tipo

Descripción

volumeID

String

ID de un volumen de almacenamiento existente.

  • Si se utiliza un volumen de SFS, de EVS o de SFS Turbo, establezca este parámetro en el ID del volumen.
  • Si se utiliza un bucket de OBS, establezca este parámetro en el nombre del bucket de OBS.

storageType

String

Clase de almacenamiento en la nube. Este parámetro se utiliza junto con volumeID. Es decir, deben configurarse volumeID y storageType al mismo tiempo.

  • bs: EVS
  • nfs: SFS
  • obs: OBS
  • efs: SFS Turbo

accessModes

Matriz de strings

Modo de acceso del volumen. Solo es válido el primer valor de todas las opciones seleccionadas.

  • ReadWriteOnce: El volumen puede ser montado como lectura-escritura por un solo nodo.
    NOTA:

    Esta función solo se admite cuando la versión del clúster es v1.13.10 y la versión del controlador de almacenamiento es 1.0.19.

  • ReadOnlyMany (predeterminado): muchos nodos pueden montar el volumen como de solo lectura.
  • ReadWriteMany: El volumen puede ser montado como lectura-escritura por muchos nodos.

storageClassName

String

Nombre de clase de almacenamiento del PVC.

volumeName

String

Nombre del PV unido al PVC.

resources

Objeto de ResourceRequirements

Solicitudes y límites de recursos.

volumeMode

String

Tipo de PV especificado por el PVC.

Tabla 11 ResourceRequirements

Parámetro

Tipo

Descripción

limits

Map<String,String>

Límites de recursos. Este parámetro no es válido durante la creación.

requests

Map<String,String>

Solicitudes de recursos. Este parámetro no es válido durante la creación.

Tabla 12 PersistentVolumeClaimStatus

Parámetro

Tipo

Descripción

accessModes

Matriz de strings

Modo de acceso del PV.

capacity

String

Recursos reales y capacidad del PV.

phase

String

Estado actual del PVC.

Ejemplo de las solicitudes

Especificación de un ID de volumen de EVS y creación de un PVC

POST /api/v1/namespaces/default/cloudpersistentvolumeclaims

{
  "apiVersion" : "v1",
  "kind" : "PersistentVolumeClaim",
  "metadata" : {
    "name" : "csms-dev-create",
    "namespace" : "default"
  },
  "spec" : {
    "volumeID" : "86b29e16-23db-11e7-9c83-fa163ec08232",
    "storageType" : "bs",
    "accessModes" : [ "ReadWriteMany" ]
  }
}

Ejemplo de las respuestas

Código de estado: 201

El trabajo para crear un PVC se entrega con éxito.

{
  "kind" : "PersistentVolumeClaim",
  "apiVersion" : "v1",
  "metadata" : {
    "name" : " csms-dev-create ",
    "namespace" : "default",
    "selfLink" : "/api/v1/namespaces/default/persistentvolumeclaims/db-mysql-0",
    "uid" : "86b29e16-23db-11e7-9c83-fa163ec08232",
    "resourceVersion" : "1793115",
    "creationTimestamp" : "2017-04-18T02:05:42Z"
  },
  "spec" : {
    "volumeName" : "csms-dev-create ",
    "accessModes" : [ "ReadWriteMany" ],
    "resources" : {
      "requests" : {
        "storage" : "1Gi"
      }
    }
  },
  "status" : {
    "phase" : "Pending",
    "accessModes" : [ "ReadWriteMany" ]
  }
}

Códigos de estado

Código de estado

Descripción

201

El trabajo para crear un PVC se entrega con éxito.

Códigos de error

Consulte Códigos de error.