创建PVC(待废弃)
功能介绍
该API用于在指定的Namespace下通过云存储服务中的云存储(EVS、SFS、OBS)去创建PVC(PersistentVolumeClaim)。该API待废弃,请使用Kubernetes PVC相关接口。
存储管理的URL格式为:https://{clusterid}.Endpoint/uri。其中{clusterid}为集群ID,uri为资源路径,也即API访问的路径。如果使用https://Endpoint/uri,则必须指定请求header中的X-Cluster-ID参数。
URI
POST /api/v1/namespaces/{namespace}/cloudpersistentvolumeclaims
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| namespace | 是 | String | 指定PersistentVolumeClaim所在的命名空间。 使用namespace有如下约束:
|
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| Content-Type | 是 | String | 消息体的类型(格式) |
| X-Auth-Token | 是 | String | 调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值,获取方式请参见获取token。 |
| X-Cluster-ID | 否 | String | 集群ID,使用https://Endpoint/uri这种URL格式时必须指定此参数。获取方式请参见如何获取接口URI中参数。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| apiVersion | 是 | String | API版本,固定值v1 |
| kind | 是 | String | API类型,固定值PersistentVolumeClaim |
| metadata | 是 | metadata是集群对象的元数据定义,是集合类的元素类型,包含一组由不同名称定义的属性。 | |
| spec | 是 | PersistentVolumeClaimSpec object | spec是集合类的元素类型,用户对需要管理的集群对象进行详细描述的主体部分都在spec中给出。系统通过spec的描述来创建或更新对象。 |
| status | 否 | PersistentVolumeClaimStatus object | status是当前PersistentVolumeClaim的状态信息,创建时不需要添加status参数。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| name | 是 | String | PersistentVolumeClaim名称,可以包含小写字母、数字、连字符和点,开头和结尾必须是字母或数字,最长253个字符,同一namespace下name不能重复。 |
| labels | 否 | String | PersistentVolumeClaim标签,key/value对格式。
|
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| volumeID | 是 | String | 资源需为已经存在的存储资源
|
| storageType | 是 | String | 云存储的类型,和volumeID搭配使用。即volumeID和storageType必须同时被配置。
|
| accessModes | 是 | Array of strings | 指定volume应该具有的访问模式,列表中仅第一个配置参数有效。
|
| storageClassName | 否 | String | PVC的StorageClass名称 |
| volumeName | 否 | String | PVC绑定的PV名称 |
| resources | 否 | ResourceRequirements object | 资源需求和限制 |
| volumeMode | 否 | String | PVC指定的PV类型 |
响应参数
状态码: 201
| 参数 | 参数类型 | 描述 |
|---|---|---|
| apiVersion | String | API版本,固定值v1 |
| kind | String | API类型,固定值PersistentVolumeClaim |
| metadata | metadata是集群对象的元数据定义,是集合类的元素类型,包含一组由不同名称定义的属性。 | |
| spec | PersistentVolumeClaimSpec object | spec是集合类的元素类型,用户对需要管理的集群对象进行详细描述的主体部分都在spec中给出。系统通过spec的描述来创建或更新对象。 |
| status | PersistentVolumeClaimStatus object | status是当前PersistentVolumeClaim的状态信息,创建时不需要添加status参数。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| name | String | PersistentVolumeClaim名称,可以包含小写字母、数字、连字符和点,开头和结尾必须是字母或数字,最长253个字符,同一namespace下name不能重复。 |
| labels | String | PersistentVolumeClaim标签,key/value对格式。
|
| 参数 | 参数类型 | 描述 |
|---|---|---|
| volumeID | String | 资源需为已经存在的存储资源
|
| storageType | String | 云存储的类型,和volumeID搭配使用。即volumeID和storageType必须同时被配置。
|
| accessModes | Array of strings | 指定volume应该具有的访问模式,列表中仅第一个配置参数有效。
|
| storageClassName | String | PVC的StorageClass名称 |
| volumeName | String | PVC绑定的PV名称 |
| resources | ResourceRequirements object | 资源需求和限制 |
| volumeMode | String | PVC指定的PV类型 |
请求示例
指定EVS云硬盘ID创建PersistentVolumeClaim
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" ]
}
} 响应示例
状态码: 201
创建PersistentVolumeClaim作业下发成功。
{
"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" ]
}
} 状态码
| 状态码 | 描述 |
|---|---|
| 201 | 创建PersistentVolumeClaim作业下发成功。 |
错误码
请参见错误码。