存储 API


OpenShift Container Platform 4.16

存储 API 的参考指南

Red Hat OpenShift Documentation Team

摘要

本文档描述了 OpenShift Container Platform 存储 API 对象及其详细规格。

第 1 章 存储 API

1.1. CSIDriver [storage.k8s.io/v1]

描述
CSIDriver 捕获集群中部署的 Container Storage Interface (CSI)卷驱动程序的信息。Kubernetes attach detach controller 使用这个对象来决定是否需要附加。kubelet 使用此对象来确定是否需要在挂载中传递 pod 信息。CSIDriver 对象没有命名空间。
类型
object

1.2. CSINode [storage.k8s.io/v1]

描述
CSINode 包含有关节点上安装的所有 CSI 驱动程序的信息。CSI 驱动程序不需要直接创建 CSINode 对象。只要使用 node-driver-registrar sidecar 容器,kubelet 将自动为 CSI 驱动程序填充 CSINode 对象,作为 kubelet 插件注册的一部分。CSINode 的名称与节点相同。如果缺少对象,这意味着节点上没有 CSI Drivers,或者 Kubelet 版本较低,它并没有创建此对象。CSINode 有一个 OwnerReference,它指向对应的节点对象。
类型
object

1.3. CSIStorageCapacity [storage.k8s.io/v1]

描述

CSIStorageCapacity 存储一个 CSI GetCapacity 调用的结果。对于给定的 StorageClass,这描述了特定拓扑片段中的可用容量。在考虑在什么位置来实例化新的 PersistentVolume 时,可以使用它。

例如,这可表达类似: - StorageClass "standard" 在 "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" 中可用的 "10 GiB" 带有 "kubernetes.io/hostname=knode-abc123"

以下三种情况都表示,没有容量可用于特定的组合: - 没有合适的拓扑和存储类名称的对象 - 这种对象存在,但容量未设置 - 此类对象存在,但存在容量为零。

这些对象的生成者可以决定哪个方法更合适。

当 CSI 驱动程序选择使用 CSIDriverSpec.StorageCapacity 进行容量感知调度时,kube-scheduler 会消耗它们。调度程序将 MaximumVolumeSize 与请求的待处理卷的大小进行比较,以过滤掉不适合的节点。如果未设置 MaximumVolumeSize,它会回退到与不太精确容量的比较。如果也未设置,调度程序会假定容量不足,并尝试某些其他节点。

类型
object

1.4. PersistentVolume [v1]

描述
PersistentVolume (PV)是管理员置备的存储资源。类似于节点。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes
类型
object

1.5. PersistentVolumeClaim [v1]

描述
PersistentVolumeClaim 是用户对持久性卷的请求并声明
类型
object

1.6. StorageClass [storage.k8s.io/v1]

描述

StorageClass 描述了可以动态置备 PersistentVolume 的存储类的参数。

StorageClasses 是没有命名空间的;根据 etcd 的存储类的名称位于 ObjectMeta.Name 中。

类型
object

1.7. StorageState [migration.k8s.io/v1alpha1]

描述
特定资源的存储状态。
类型
object

1.8. StorageVersionMigration [migration.k8s.io/v1alpha1]

描述
StorageVersionMigration 代表将数据迁移到最新的存储版本。
类型
object

1.9. VolumeAttachment [storage.k8s.io/v1]

描述

VolumeAttachment 捕获将指定卷附加到指定节点或从指定节点分离的意图。

VolumeAttachment 对象没有命名空间。

类型
object

1.10. VolumeSnapshot [snapshot.storage.k8s.io/v1]

描述
VolumeSnapshot 是用户创建持久性卷时点快照或绑定到预先存在的快照的请求。
类型
object

1.11. VolumeSnapshotClass [snapshot.storage.k8s.io/v1]

描述
VolumeSnapshotClass 指定创建卷快照时使用的底层存储系统的参数。通过在 VolumeSnapshot 对象中指定其名称来使用特定的 VolumeSnapshotClass。VolumeSnapshotClasses are non-namespaced
类型
object

1.12. VolumeSnapshotContent [snapshot.storage.k8s.io/v1]

描述
VolumeSnapshotContent 代表底层存储系统中的实际 "on-disk" 快照对象
类型
object

第 2 章 CSIDriver [storage.k8s.io/v1]

描述
CSIDriver 捕获集群中部署的 Container Storage Interface (CSI)卷驱动程序的信息。Kubernetes attach detach controller 使用这个对象来决定是否需要附加。kubelet 使用此对象来确定是否需要在挂载中传递 pod 信息。CSIDriver 对象没有命名空间。
类型
object
必填
  • spec

2.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象 metadata. metadata.Name 表示此对象引用的 CSI 驱动程序的名称 ; 必须为该驱动程序返回的 CSI GetPluginName ()调用名称相同。驱动程序名称必须是 63 个字符或更少,以字母数字字符([a-z0-9A-Z])开头和结尾,并带有短划线(-)、句点(.)和字母数字。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

CSIDriverSpec 是 CSIDriver 的规格。

2.1.1. .spec

描述
CSIDriverSpec 是 CSIDriver 的规格。
类型
object
属性类型描述

attachRequired

布尔值

attachRequired 表示这个 CSI 卷驱动程序需要一个 attach 操作(因为它实现了 CSI ControllerPublishVolume ()方法),并且 Kubernetes attach detach 控制器应该调用 attach 卷接口来检查 volumeattachment 状态并等待卷附加等待,直到卷被附加。CSI external-attacher 与 CSI 卷驱动程序协调,并在 attach 操作完成后更新 volumeattachment 状态。如果启用了 CSIDriverRegistry 功能门,并将值指定为 false,则会跳过 attach 操作。否则,将调用 attach 操作。

此字段不可变。

fsGroupPolicy

string

fsGroupPolicy 定义底层卷是否支持在挂载前更改卷的所有权和权限。如需了解更多详细信息,请参阅特定的 FSGroupPolicy 值。

此字段不可变。

默认为 ReadWriteOnceWithFSType,它将检查每个卷来确定 Kubernetes 是否应该修改卷的所有权和权限。使用默认策略时,只有在定义了 fstype 且卷的访问模式包含 ReadWriteOnce 时,才会应用定义的 fsGroup。

podInfoOnMount

布尔值

podInfoOnMount 表示这个 CSI 卷驱动程序在挂载操作过程中需要额外的 pod 信息(如 podName、podUID 等)。如果设置为 false,则不会在挂载时传递 pod 信息。默认为 false。

CSI 驱动程序将 podInfoOnMount 指定为驱动程序部署的一部分。如果为 true,Kubelet 会在 CSI NodePublishVolume ()调用中将 pod 信息作为 VolumeContext 传递。CSI 驱动程序负责解析和验证作为 VolumeContext 传递的信息。

如果 podInfoOnMount 设为 true,则会传递以下 VolumeContext。这个列表可能会增大,但前缀将会被使用。"csi.storage.k8s.io/pod.name": pod.Name "csi.storage.k8s.io/pod.namespace": pod.Namespace "csi.storage.k8s.io/pod.uid": string (pod.UID) "csi.storage.k8s.io/ephemeral": "true" (如果卷是一个内联卷),否则为 "pod.UID ": "csi.storage.k8s.io/ephemeral": "true"

"CSI.storage.k8s.io/ephemeral"是 Kubernetes 1.16 中的一项新功能。只有支持"Persistent"和"Ephemeral" VolumeLifecycleMode 的驱动程序才需要它。其他驱动程序可以禁用 pod 信息和/或忽略此字段。因为 Kubernetes 1.15 不支持此字段,所以当这样的集群中部署时,驱动程序只能支持一个模式,部署会决定哪个模式,例如通过驱动程序的命令行参数。

此字段不可变。

requiresRepublish

布尔值

requiresRepublish 表示 CSI 驱动程序需要定期调用 NodePublishVolume,以反映挂载卷中的任何可能的更改。此字段默认为 false。

注: 在成功调用 NodePublishVolume 后,对 NodePublishVolume 的后续调用应该只更新卷的内容。正在运行的容器不会看到新的挂载点。

seLinuxMount

布尔值

seLinuxMount 指定 CSI 驱动程序是否支持 "-o context" 挂载选项。

当 "true" 时,CSI 驱动程序必须确保使用这个 CSI 驱动程序提供的所有卷都可以使用不同的 上下文 选项单独挂载。这通常适用于将卷作为文件系统在块设备或独立共享卷中提供的存储后端。当挂载一个明确设置了 SELinux 上下文的 ReadWriteOncePod 卷时,Kubernetes 将调用 NodeStage / NodePublish with "-o context=xyz" 挂载选项。以后可能会扩展到其他 volume AccessModes。在任何情况下,Kubernetes 将确保仅用单个 SELinux 上下文挂载该卷。

当 "false" 时,Kubernetes 不会将任何特殊的 SELinux 挂载选项传递给驱动程序。这通常用于代表更大共享文件系统的子目录的卷。

默认为 "false"。

storageCapacity

布尔值

StorageCapacity 表示 CSI 卷驱动程序希望 pod 调度来考虑驱动程序部署通过创建具有容量信息的 CSIStorageCapacity 对象来报告(如果设为 true)。

部署驱动程序时,可以立即启用检查。在这种情况下,置备带有后绑定的新卷将暂停,直到驱动程序部署发布了一些合适的 CSIStorageCapacity 对象。

或者,驱动程序可以使用字段 unset 或 false 进行部署,并稍后在发布存储容量信息时中断。

此字段在 Kubernetes swig 1.22 中是不可变的,现在是可变的。

tokenRequests

数组

tokenRequests 表示 CSI 驱动程序需要 pod 的服务帐户令牌,它会挂载卷以进行必要的身份验证。kubelet 将传递 CSI NodePublishVolume 调用中的 VolumeContext 中的令牌。CSI 驱动程序应解析并验证以下 VolumeContext: "csi.storage.k8s.io/serviceAccount.tokens": { "<audience>": { "token": <token>, "expirationTimestamp": <expiration timestamp in RFC3339>, }, …​ }

注: 每个 TokenRequest 中的 Audience 应该不同,大多数令牌都是空字符串。要在到期后接收新令牌,RequiresRepublish 可用于定期触发 NodePublishVolume。

tokenRequests[]

object

TokenRequest 包含服务帐户令牌的参数。

volumeLifecycleModes

数组(字符串)

VolumeLifecycleModes 定义这个 CSI 卷驱动程序支持的卷类型。如果列表为空为 "Persistent",这是 CSI 规格定义的使用量,并通过常见的 PV/PVC 机制在 Kubernetes 中实施。

另一个模式是"Ephemeral"。在这个模式中,卷通过 CSIVolumeSource 在 pod 规格中内联定义,它们的生命周期与该 pod 的生命周期相关联。驱动程序必须了解这一点,因为它只会获得此类卷的 NodePublishVolume 调用。

有关实现这个模式的更多信息,请参阅 https://kubernetes-csi.github.io/docs/ephemeral-local-volumes.html A 驱动程序可以支持一个或多个这些模式,以后可能会添加更多模式。

该字段为 beta。此字段不可变。

2.1.2. .spec.tokenRequests

描述

tokenRequests 表示 CSI 驱动程序需要 pod 的服务帐户令牌,它会挂载卷以进行必要的身份验证。kubelet 将传递 CSI NodePublishVolume 调用中的 VolumeContext 中的令牌。CSI 驱动程序应解析并验证以下 VolumeContext: "csi.storage.k8s.io/serviceAccount.tokens": { "<audience>": { "token": <token>, "expirationTimestamp": <expiration timestamp in RFC3339>, }, …​ }

注: 每个 TokenRequest 中的 Audience 应该不同,大多数令牌都是空字符串。要在到期后接收新令牌,RequiresRepublish 可用于定期触发 NodePublishVolume。

类型
数组

2.1.3. .spec.tokenRequests[]

描述
TokenRequest 包含服务帐户令牌的参数。
类型
object
必填
  • 受众
属性类型描述

受众

string

audience 是 "TokenRequestSpec" 中令牌的预期使用者。它将默认为 kube apiserver 的 audiences。

expirationSeconds

整数

expirationSeconds 是 "TokenRequestSpec" 中令牌的有效性持续时间。它在 "TokenRequestSpec" 中具有相同的默认值 "ExpirationSeconds"。

2.2. API 端点

可用的 API 端点如下:

  • /apis/storage.k8s.io/v1/csidrivers

    • DELETE: 删除 CSIDriver 集合
    • GET: 列出或监视类型为 CSIDriver 的对象
    • POST :创建一个 CSIDriver
  • /apis/storage.k8s.io/v1/watch/csidrivers

    • GET: 观察单个对 CSIDriver 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
  • /apis/storage.k8s.io/v1/csidrivers/{name}

    • DELETE :删除 CSIDriver
    • GET :读取指定的 CSIDriver
    • PATCH: 部分更新指定的 CSIDriver
    • PUT :替换指定的 CSIDriver
  • /apis/storage.k8s.io/v1/watch/csidrivers/{name}

    • GET: 观察对类型为 CSIDriver 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤为带有 'fieldSelector' 参数的单个项目。

2.2.1. /apis/storage.k8s.io/v1/csidrivers

HTTP 方法
DELETE
描述
删除 CSIDriver 集合
表 2.1. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 2.2. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出或监视类型为 CSIDriver 的对象
表 2.3. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIDriverList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建一个 CSIDriver
表 2.4. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 2.5. 主体参数
参数类型描述

正文(body)

CSIDriver 模式

 
表 2.6. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIDriver 模式

201 - Created

CSIDriver 模式

202 - Accepted

CSIDriver 模式

401 - Unauthorized

2.2.2. /apis/storage.k8s.io/v1/watch/csidrivers

HTTP 方法
GET
描述
观察单个对 CSIDriver 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
表 2.7. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

2.2.3. /apis/storage.k8s.io/v1/csidrivers/{name}

表 2.8. 全局路径参数
参数类型描述

name

string

CSIDriver 的名称

HTTP 方法
DELETE
描述
删除 CSIDriver
表 2.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 2.10. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIDriver 模式

202 - Accepted

CSIDriver 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 CSIDriver
表 2.11. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIDriver 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 CSIDriver
表 2.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 2.13. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIDriver 模式

201 - Created

CSIDriver 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 CSIDriver
表 2.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 2.15. 主体参数
参数类型描述

正文(body)

CSIDriver 模式

 
表 2.16. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIDriver 模式

201 - Created

CSIDriver 模式

401 - Unauthorized

2.2.4. /apis/storage.k8s.io/v1/watch/csidrivers/{name}

表 2.17. 全局路径参数
参数类型描述

name

string

CSIDriver 的名称

HTTP 方法
GET
描述
观察对类型为 CSIDriver 的对象的更改。已弃用:使用带列表操作的 'watch' 参数,而是过滤成一个带有 'fieldSelector' 参数的单个项目。
表 2.18. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

第 3 章 CSINode [storage.k8s.io/v1]

描述
CSINode 包含有关节点上安装的所有 CSI 驱动程序的信息。CSI 驱动程序不需要直接创建 CSINode 对象。只要使用 node-driver-registrar sidecar 容器,kubelet 将自动为 CSI 驱动程序填充 CSINode 对象,作为 kubelet 插件注册的一部分。CSINode 的名称与节点相同。如果缺少对象,这意味着节点上没有 CSI Drivers,或者 Kubelet 版本较低,它并没有创建此对象。CSINode 有一个 OwnerReference,它指向对应的节点对象。
类型
object
必填
  • spec

3.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象的 metadata. metadata.name 必须是 Kubernetes 节点名称。

spec

object

CSINodeSpec 包含有关节点上安装的所有 CSI 驱动程序规格的信息

3.1.1. .spec

描述
CSINodeSpec 包含有关节点上安装的所有 CSI 驱动程序规格的信息
类型
object
必填
  • 驱动程序
属性类型描述

驱动程序

数组

驱动程序是节点上所有现有 CSI 驱动程序的信息列表。如果卸载列表中的所有驱动程序,这可能会为空。

drivers[]

object

CSINodeDriver 包含有关节点上安装的一个 CSI 驱动程序规格的信息

3.1.2. .spec.drivers

描述
驱动程序是节点上所有现有 CSI 驱动程序的信息列表。如果卸载列表中的所有驱动程序,这可能会为空。
类型
数组

3.1.3. .spec.drivers[]

描述
CSINodeDriver 包含有关节点上安装的一个 CSI 驱动程序规格的信息
类型
object
必填
  • 名称
  • nodeID
属性类型描述

allocatable

object

VolumeNodeResources 是一组用于调度卷的资源限值。

名称

string

name 代表此对象引用的 CSI 驱动程序名称。这必须与该驱动程序的 CSI GetPluginName ()调用返回的名称相同。

nodeID

string

从驱动程序视图的 nodeid。此字段可让 Kubernetes 与不为节点共享相同的命名的存储系统进行通信。例如,Kubernetes 可能会将给定节点称为 "node1",但存储系统可能会引用与"nodeA"相同的节点。当 Kubernetes 向存储系统发送命令以将卷附加到特定节点时,可以使用此字段使用存储系统可识别的 ID 来引用节点名称,如 "nodeA" 而不是 "node1"。此字段是必需的。

topologyKeys

数组(字符串)

topologyKeys 是驱动程序支持的键列表。在集群中初始化驱动程序时,它会提供一组拓扑键,如 "company.com/zone", "company.com/region")。当在节点上初始化驱动程序时,它提供相同的拓扑键以及值。kubelet 将将这些拓扑键作为标签在自己的节点对象上公开。当 Kubernetes 进行拓扑感知置备时,它可以使用此列表来确定它应该从节点对象检索哪些标签,并返回到驱动程序。不同的节点可能会使用不同的拓扑键。如果驱动程序不支持拓扑,这可能为空。

3.1.4. .spec.drivers[].allocatable

描述
VolumeNodeResources 是一组用于调度卷的资源限值。
类型
object
属性类型描述

数量

整数

count 表示节点上可以使用的唯一卷的最大数量。在节点上连接并挂载的卷被视为使用一次,而不是两次。相同的规则适用于在同一节点上多个 pod 共享的唯一卷。如果没有指定此字段,则此节点上支持的卷数量会被绑定。

3.2. API 端点

可用的 API 端点如下:

  • /apis/storage.k8s.io/v1/csinodes

    • DELETE: 删除 CSINode 集合
    • GET: 列出或监视类型为 CSINode 的对象
    • POST :创建一个 CSINode
  • /apis/storage.k8s.io/v1/watch/csinodes

    • GET: 观察单个对 CSINode 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
  • /apis/storage.k8s.io/v1/csinodes/{name}

    • DELETE :删除 CSINode
    • GET :读取指定的 CSINode
    • PATCH: 部分更新指定的 CSINode
    • PUT :替换指定的 CSINode
  • /apis/storage.k8s.io/v1/watch/csinodes/{name}

    • GET: 观察对类型为 CSINode 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤为带有 'fieldSelector' 参数的单个项目。

3.2.1. /apis/storage.k8s.io/v1/csinodes

HTTP 方法
DELETE
描述
删除 CSINode 集合
表 3.1. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 3.2. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出或监视类型为 CSINode 的对象
表 3.3. HTTP 响应
HTTP 代码响应正文

200 - OK

CSINodeList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建一个 CSINode
表 3.4. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 3.5. 主体参数
参数类型描述

正文(body)

CSINode 模式

 
表 3.6. HTTP 响应
HTTP 代码响应正文

200 - OK

CSINode 模式

201 - Created

CSINode 模式

202 - Accepted

CSINode 模式

401 - Unauthorized

3.2.2. /apis/storage.k8s.io/v1/watch/csinodes

HTTP 方法
GET
描述
观察单个对 CSINode 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
表 3.7. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

3.2.3. /apis/storage.k8s.io/v1/csinodes/{name}

表 3.8. 全局路径参数
参数类型描述

name

string

CSINode 的名称

HTTP 方法
DELETE
描述
删除 CSINode
表 3.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 3.10. HTTP 响应
HTTP 代码响应正文

200 - OK

CSINode 模式

202 - Accepted

CSINode 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 CSINode
表 3.11. HTTP 响应
HTTP 代码响应正文

200 - OK

CSINode 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 CSINode
表 3.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 3.13. HTTP 响应
HTTP 代码响应正文

200 - OK

CSINode 模式

201 - Created

CSINode 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 CSINode
表 3.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 3.15. 主体参数
参数类型描述

正文(body)

CSINode 模式

 
表 3.16. HTTP 响应
HTTP 代码响应正文

200 - OK

CSINode 模式

201 - Created

CSINode 模式

401 - Unauthorized

3.2.4. /apis/storage.k8s.io/v1/watch/csinodes/{name}

表 3.17. 全局路径参数
参数类型描述

name

string

CSINode 的名称

HTTP 方法
GET
描述
观察对类型为 CSINode 的对象的更改。已弃用:使用带有列表操作的 'watch' 参数,而是过滤成一个带有 'fieldSelector' 参数的单个项目。
表 3.18. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

第 4 章 CSIStorageCapacity [storage.k8s.io/v1]

描述

CSIStorageCapacity 存储一个 CSI GetCapacity 调用的结果。对于给定的 StorageClass,这描述了特定拓扑片段中的可用容量。在考虑在什么位置来实例化新的 PersistentVolume 时,可以使用它。

例如,这可表达类似: - StorageClass "standard" 在 "topology.kubernetes.io/zone=us-east1" - StorageClass "localssd" 中可用的 "10 GiB" 带有 "kubernetes.io/hostname=knode-abc123"

以下三种情况都表示,没有容量可用于特定的组合: - 没有合适的拓扑和存储类名称的对象 - 这种对象存在,但容量未设置 - 此类对象存在,但存在容量为零。

这些对象的生成者可以决定哪个方法更合适。

当 CSI 驱动程序选择使用 CSIDriverSpec.StorageCapacity 进行容量感知调度时,kube-scheduler 会消耗它们。调度程序将 MaximumVolumeSize 与请求的待处理卷的大小进行比较,以过滤掉不适合的节点。如果未设置 MaximumVolumeSize,它会回退到与不太精确容量的比较。如果也未设置,调度程序会假定容量不足,并尝试某些其他节点。

类型
object
必填
  • storageClassName

4.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

capacity

数量

capacity 是 CSI 驱动程序为其 GetCapacityRequest 中报告的值,其带有与上一字段匹配的 topology 和 parameters。

目前,语义(CSI spec 1.2)定义为:可用于置备卷的存储的可用容量(以字节为单位)。如果没有设置,则信息当前不可用。

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

maximumVolumeSize

数量

maximumVolumeSize 是 CSI 驱动程序在 GetCapacityResponse 中报告的值,用于带有与上一字段匹配的 GetCapacityRequest 和参数。

这是定义,因为 CSI spec 1.4.0 是可在 CreateVolumeRequest.capacity_range.required_bytes 字段中使用的最大大小来创建与 GetCapacityRequest 中参数相同的卷。Kubernetes API 中对应的值为 ResourceRequirements.Requests 在卷声明中。

metadata

ObjectMeta

标准对象元数据。名称没有特定含义。它必须是 DNS 子域(允许 253 个字符)。为确保集群中没有与其他 CSI 驱动程序冲突,建议使用 csisc-<uuid>、生成的名称或以唯一 CSI 驱动程序名称结尾的反向域名。

对象是 namespaced。

更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

nodeTopology

LabelSelector

NodeTopology 定义哪些节点有权访问报告容量的存储。如果没有设置,则无法从集群中的任何节点访问存储。如果为空,可从所有节点访问存储。此字段不可变。

storageClassName

string

storageClassName 代表所报告容量应用到的 StorageClass 名称。它必须满足与 StorageClass 对象的名称相同的要求(非空,DNS 子域)。如果该对象不再存在,CSIStorageCapacity 对象已过时,应该通过其创建者删除。此字段不可变。

4.2. API 端点

可用的 API 端点如下:

  • /apis/storage.k8s.io/v1/csistoragecapacities

    • GET: 列出或监视类型为 CSIStorageCapacity 的对象
  • /apis/storage.k8s.io/v1/watch/csistoragecapacities

    • GET: 观察单个对 CSIStorageCapacity 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
  • /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities

    • DELETE: 删除 CSIStorageCapacity 集合
    • GET: 列出或监视类型为 CSIStorageCapacity 的对象
    • POST :创建一个 CSIStorageCapacity
  • /apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities

    • GET: 观察单个对 CSIStorageCapacity 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
  • /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}

    • DELETE: 删除 CSIStorageCapacity
    • GET :读取指定的 CSIStorageCapacity
    • PATCH: 部分更新指定的 CSIStorageCapacity
    • PUT :替换指定的 CSIStorageCapacity
  • /apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities/{name}

    • GET: 观察对类型为 CSIStorageCapacity 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤为带有 'fieldSelector' 参数的单个项目。

4.2.1. /apis/storage.k8s.io/v1/csistoragecapacities

HTTP 方法
GET
描述
列出或监视类型为 CSIStorageCapacity 的对象
表 4.1. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIStorageCapacityList schema

401 - Unauthorized

4.2.2. /apis/storage.k8s.io/v1/watch/csistoragecapacities

HTTP 方法
GET
描述
观察单个对 CSIStorageCapacity 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
表 4.2. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

4.2.3. /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities

HTTP 方法
DELETE
描述
删除 CSIStorageCapacity 集合
表 4.3. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 4.4. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出或监视类型为 CSIStorageCapacity 的对象
表 4.5. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIStorageCapacityList schema

401 - Unauthorized

HTTP 方法
POST
描述
创建一个 CSIStorageCapacity
表 4.6. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 4.7. 主体参数
参数类型描述

正文(body)

CSIStorageCapacity schema

 
表 4.8. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIStorageCapacity schema

201 - Created

CSIStorageCapacity schema

202 - Accepted

CSIStorageCapacity schema

401 - Unauthorized

4.2.4. /apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities

HTTP 方法
GET
描述
观察单个对 CSIStorageCapacity 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
表 4.9. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

4.2.5. /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name}

表 4.10. 全局路径参数
参数类型描述

name

string

CSIStorageCapacity 的名称

HTTP 方法
DELETE
描述
delete a CSIStorageCapacity
表 4.11. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 4.12. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 CSIStorageCapacity
表 4.13. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIStorageCapacity schema

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 CSIStorageCapacity
表 4.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 4.15. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIStorageCapacity schema

201 - Created

CSIStorageCapacity schema

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 CSIStorageCapacity
表 4.16. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 4.17. 主体参数
参数类型描述

正文(body)

CSIStorageCapacity schema

 
表 4.18. HTTP 响应
HTTP 代码响应正文

200 - OK

CSIStorageCapacity schema

201 - Created

CSIStorageCapacity schema

401 - Unauthorized

4.2.6. /apis/storage.k8s.io/v1/watch/namespaces/{namespace}/csistoragecapacities/{name}

表 4.19. 全局路径参数
参数类型描述

name

string

CSIStorageCapacity 的名称

HTTP 方法
GET
描述
观察对类型为 CSIStorageCapacity 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤成带有 'fieldSelector' 参数的单个项目。
表 4.20. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

第 5 章 PersistentVolume [v1]

描述
PersistentVolume (PV)是管理员置备的存储资源。类似于节点。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes
类型
对象

5.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

PersistentVolumeSpec 是持久性卷的规格。

status

object

PersistentVolumeStatus 是持久性卷的当前状态。

5.1.1. .spec

描述
PersistentVolumeSpec 是持久性卷的规格。
类型
object
属性类型描述

accessModes

数组(字符串)

accessModes 包含可以挂载卷的所有方法。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes

awsElasticBlockStore

object

代表 AWS 中的持久磁盘资源。

在挂载到容器前,必须存在 AWS EBS 磁盘。磁盘也必须与 kubelet 位于同一个 AWS 区中。AWS EBS 磁盘只能挂载为读/写一次。AWS EBS 卷支持所有权管理和 SELinux 重新标记。

azureDisk

对象

azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。

azureFile

对象

azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。

capacity

对象(数量)

capacity 是持久性卷资源和容量的描述。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#capacity

cephfs

object

代表持续 pod Cephfs 卷生命周期的 Ceph 文件系统挂载不支持所有权管理或 SELinux 重新标记。

cinder

object

代表 Openstack 中的 Cinder 卷资源。挂载到容器之前,必须存在 Cinder 卷。卷也必须与 kubelet 位于同一个区域。Cinder 卷支持所有权管理和 SELinux 重新标记。

claimRef

object

ObjectReference 包含足够信息供您检查或修改引用的对象。

csi

object

代表由外部 CSI 卷驱动程序管理的存储(Beta 功能)

fc

object

代表光纤通道卷。Fibre Channel 卷只能挂载为读/写一次。Fibre Channel 卷支持所有权管理和 SELinux 重新标记。

flexVolume

object

FlexPersistentVolumeSource 代表一个通用持久性卷资源,它使用基于 exec 的插件来置备/附加。

flocker

object

代表 Flocker 代理挂载的 Flocker 卷。应该设置一个 datasetName 和 datasetUUID 之一。flocker 卷不支持所有权管理或 SELinux 重新标记。

gcePersistentDisk

object

代表 Google Compute Engine 中的 Persistent Disk 资源。

挂载到容器前,GCE PD 必须存在。磁盘还必须位于与 kubelet 相同的 GCE 项目和区中。GCE PD 只能挂载为读/写一次或多次只读。GCE PDs 支持所有权管理和 SELinux 重新标记。

glusterfs

object

代表持续 pod 生命周期的 Glusterfs 挂载。GlusterFS 卷不支持所有权管理或 SELinux 重新标记。

hostPath

object

代表映射到 pod 的主机路径。主机路径卷不支持所有权管理或 SELinux 重新标记。

iscsi

object

ISCSIPersistentVolumeSource 代表 ISCSI 磁盘。ISCSI 卷只能挂载为读/写一次。ISCSI 卷支持所有权管理和 SELinux 重新标记。

local

object

Local 代表带有节点关联性的直接附加存储(Beta 功能)

mountOptions

数组(字符串)

mountOptions 是挂载选项的列表,如 ["ro", "soft"]。未验证 - 如果挂载无效,则挂载将失败。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#mount-options

nfs

object

代表持续 pod 生命周期的 NFS 挂载。NFS 卷不支持所有权管理或 SELinux 重新标记。

nodeAffinity

object

VolumeNodeAffinity 定义限制来限制此卷可以被访问的节点。

persistentVolumeReclaimPolicy

string

persistentVolumeReclaimPolicy 定义从声明中释放持久性卷时会发生什么。有效选项为 Retain (手动创建 PersistentVolume 的默认设置)、Delete (动态置备的 PersistentVolume 的默认)和 Recycle (已弃用)。Recycle 必须由此 PersistentVolume 的卷插件支持。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#reclaiming

可能枚举值: - "Delete" 表示该卷将从声明发行版中从 Kubernetes 版本中删除。卷插件必须支持 Deletion. - "Recycle" 意味着该卷将从声明中回收回未绑定持久性卷的池。卷插件必须支持 Recycling。- "Retain" 表示卷将保留在当前阶段(Released),供管理员手动重新声明。默认策略为 Retain。

photonPersistentDisk

object

代表 Photon Controller 持久磁盘资源。

portworxVolume

object

PortworxVolumeSource 代表 Portworx 卷资源。

quobyte

object

代表持续 pod 生命周期的 Quobyte 挂载。quobyte 卷不支持所有权管理或 SELinux 重新标记。

rbd

object

代表持续 pod 生命周期的 Rados 块设备挂载。RBD 卷支持所有权管理和 SELinux 重新标记。

scaleIO

object

ScaleIOPersistentVolumeSource 代表持久的 ScaleIO 卷

storageClassName

string

storageClassName 是此持久性卷所属的 StorageClass 的名称。空值表示这个卷不属于任何 StorageClass。

storageos

object

代表 StorageOS 持久性卷资源。

volumeAttributesClassName

string

此持久性卷所属的 VolumeAttributesClass 的名称。不允许为空值。如果没有设置此字段,这表示此卷不属于任何 VolumeAttributesClass。此字段是可变的,可在卷成功更新为新类后由 CSI 驱动程序更改。对于 unbound PersistentVolume,volumeAttributesClassName 将在绑定过程中与 unbound PersistentVolumeClaims 匹配。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。

volumeMode

字符串

volumeMode 定义卷是否要与格式化的文件系统一起使用,或者保持在原始块状态。当没有包含在 spec 中时,文件系统的值会被表示。

可能枚举值: - "Block" 表示卷不会格式化为文件系统,并保留原始块设备。- "Filesystem" 表示卷将被格式化为文件系统或使用文件系统格式化。

vsphereVolume

object

代表 vSphere 卷资源。

5.1.2. .spec.awsElasticBlockStore

描述

代表 AWS 中的持久磁盘资源。

在挂载到容器前,必须存在 AWS EBS 磁盘。磁盘也必须与 kubelet 位于同一个 AWS 区中。AWS EBS 磁盘只能挂载为读/写一次。AWS EBS 卷支持所有权管理和 SELinux 重新标记。

类型
object
必填
  • volumeID
属性类型描述

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

分区

整数

partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。

readOnly

布尔值

readonly 值 true 将强制 VolumeMount 中的 readOnly 设置。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

volumeID

string

VolumeId 是 AWS (Amazon EBS 卷)中持久磁盘资源的唯一 ID。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

5.1.3. .spec.azureDisk

描述
azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。
类型
object
必填
  • diskName
  • diskURI
属性类型描述

cachingMode

string

cachingMode 是主机缓存模式: None、Read Only、Read Write。

可能枚举值: - "None" - "ReadOnly" - "ReadWrite"

diskName

string

diskname 是 blob 存储中的数据磁盘的 Name

diskURI

string

diskURI 是 blob 存储中的数据磁盘的 URI

fsType

string

fstype 是要挂载的 Filesystem 类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

kind

string

kind 预期值为 Shared: 每个存储帐户 Dedicated 有多个 blob 磁盘:每个存储帐户 Managed: azure managed data disk (only on managed availability set). 默认为 shared

可能枚举值: - "Dedicated" - "Managed" - "Shared"

readOnly

布尔值

readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

5.1.4. .spec.azureFile

描述
azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。
类型
object
必填
  • secretName
  • shareName
属性类型描述

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretName

string

secretName 是包含 Azure Storage Account Name 和 Key 的 secret 名称

secretNamespace

string

secretNamespace 是包含 Azure Storage Account Name 和 Key default 的 secret 的命名空间与 Pod 相同

shareName

string

sharename 是 azure Share Name

5.1.5. .spec.cephfs

描述
代表持续 pod Cephfs 卷生命周期的 Ceph 文件系统挂载不支持所有权管理或 SELinux 重新标记。
类型
object
必填
  • monitor
属性类型描述

monitor

数组(字符串)

monitor 是必需的: monitor 是 Ceph 监视器更多信息的集合: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

path

string

路径为可选:作为挂载的 root 使用,而不是完整的 Ceph 树,默认为 /

readOnly

布尔值

readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

secretFile

string

secretfile 为 Optional: SecretFile 是用户密钥环的路径,默认为 /etc/ceph/user.secret 更多信息 :https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

secretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

user

string

用户是可选的:用户是 rados 用户名,默认为 admin 更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

5.1.6. .spec.cephfs.secretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.7. .spec.cinder

描述
代表 Openstack 中的 Cinder 卷资源。挂载到容器之前,必须存在 Cinder 卷。卷也必须与 kubelet 位于同一个区域。Cinder 卷支持所有权管理和 SELinux 重新标记。
类型
object
必填
  • volumeID
属性类型描述

fsType

string

要挂载的 fstype Filesystem 类型。必须是主机操作系统支持的文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

readOnly

布尔值

readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

secretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

volumeID

string

用于识别 cinder 中的卷的 VolumeId。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

5.1.8. .spec.cinder.secretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.9. .spec.claimRef

描述
ObjectReference 包含足够信息供您检查或修改引用的对象。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

5.1.10. .spec.csi

描述
代表由外部 CSI 卷驱动程序管理的存储(Beta 功能)
类型
object
必填
  • driver
  • volumeHandle
属性类型描述

controllerExpandSecretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

controllerPublishSecretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

driver

string

driver 是用于此卷的驱动程序的名称。必需。

fsType

string

要挂载的 fstype。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".

nodeExpandSecretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

nodePublishSecretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

nodeStageSecretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

readOnly

布尔值

传递给 ControllerPublishVolumeRequest 的 readonly 值。默认为 false (读/写)。

volumeAttributes

对象(字符串)

要发布的卷的 volumeAttributes。

volumeHandle

string

volumeHandle 是 CSI 卷插件的 CreateVolume 返回的唯一卷名称,以便在所有后续调用中引用卷。必需。

5.1.11. .spec.csi.controllerExpandSecretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.12. .spec.csi.controllerPublishSecretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.13. .spec.csi.nodeExpandSecretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.14. .spec.csi.nodePublishSecretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.15. .spec.csi.nodeStageSecretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.16. .spec.fc

描述
代表光纤通道卷。Fibre Channel 卷只能挂载为读/写一次。Fibre Channel 卷支持所有权管理和 SELinux 重新标记。
类型
object
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

lun

整数

LUN 是可选的:FC 目标 lun 号

readOnly

布尔值

readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

targetWWNs

数组(字符串)

targetWWNs 是可选:FC 目标全球名称(WWN)

wwids

数组(字符串)

wwids 可选:FC 卷全局范围标识符(wwids) Either wwids 或 targetWWN 和 lun 的组合必须被设置,但不能同时设置。

5.1.17. .spec.flexVolume

描述
FlexPersistentVolumeSource 代表一个通用持久性卷资源,它使用基于 exec 的插件来置备/附加。
类型
object
必填
  • driver
属性类型描述

driver

string

driver 是用于此卷的驱动程序的名称。

fsType

string

fstype 是要挂载的 Filesystem 类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认文件系统依赖于 FlexVolume 脚本。

options

对象(字符串)

选项为 Optional:此字段包含额外的命令选项(若有)。

readOnly

布尔值

readonly 为 Optional: 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

5.1.18. .spec.flexVolume.secretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.19. .spec.flocker

描述
代表 Flocker 代理挂载的 Flocker 卷。应该设置一个 datasetName 和 datasetUUID 之一。flocker 卷不支持所有权管理或 SELinux 重新标记。
类型
object
属性类型描述

datasetName

string

datasetName 是数据存储为 Flocker dataset 上的 metadata → name 的 Name,应被视为已弃用

datasetUUID

string

datasetUUID 是 dataset 的 UUID。这是 Flocker 数据集的唯一标识符

5.1.20. .spec.gcePersistentDisk

描述

代表 Google Compute Engine 中的 Persistent Disk 资源。

挂载到容器前,GCE PD 必须存在。磁盘还必须位于与 kubelet 相同的 GCE 项目和区中。GCE PD 只能挂载为读/写一次或多次只读。GCE PDs 支持所有权管理和 SELinux 重新标记。

类型
object
必填
  • pdName
属性类型描述

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

分区

整数

partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

pdName

string

pdName 是 GCE 中的 PD 资源的唯一名称。用于识别 GCE 中的磁盘。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

5.1.21. .spec.glusterfs

描述
代表持续 pod 生命周期的 Glusterfs 挂载。GlusterFS 卷不支持所有权管理或 SELinux 重新标记。
类型
object
必填
  • 端点
  • path
属性类型描述

端点

string

Endpoints 是 Glusterfs 拓扑的详细信息的端点名称。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

endpointsNamespace

string

endpointNamespace 是包含 Glusterfs 端点的命名空间。如果此字段为空,则 EndpointNamespace 默认为与绑定 PVC 相同的命名空间。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

path

string

path 是 Glusterfs 卷路径。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

readOnly

布尔值

此处的 readonly 将强制 Glusterfs 卷以只读权限挂载。默认为false。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

5.1.22. .spec.hostPath

描述
代表映射到 pod 的主机路径。主机路径卷不支持所有权管理或 SELinux 重新标记。
类型
object
必填
  • path
属性类型描述

path

string

主机上目录的路径。如果路径是符号链接,它将遵循指向实际路径的链接。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath

type

string

HostPath Volume 默认为 "" 更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath

可能枚举值:- "" 用于向后兼容,如果给定路径上不存在 "BlockDevice" A 块设备,则必须存在于给定路径 - "Directory" A 字符设备,则给定路径 - "Directory" A 目录必须存在于给定路径中 - "DirectoryOrCreate " (如果给定路径中不存在),则会根据需要创建空目录,并带有文件模式 0755,使用 Kubelet 相同的组和所有权。- "File " A file must the given path - "FileOrCreate " 如果给定路径中没有,则会根据需要创建一个空文件,且文件模式为 0644,具有与 Kubelet 相同的组和所有权。- "Socket " A UNIX socket 必须存在于给定路径中

5.1.23. .spec.iscsi

描述
ISCSIPersistentVolumeSource 代表 ISCSI 磁盘。ISCSI 卷只能挂载为读/写一次。ISCSI 卷支持所有权管理和 SELinux 重新标记。
类型
object
必填
  • targetPortal
  • iqn
  • lun
属性类型描述

chapAuthDiscovery

布尔值

chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证

chapAuthSession

布尔值

chapAuthSession 定义是否支持 iSCSI 会话 CHAP 身份验证

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#iscsi

initiatorName

string

initiatorname 是自定义 iSCSI 启动器名称。如果同时使用 iscsiInterface 指定 initiatorName,则会为连接创建新的 iSCSI 接口 <target portal>:<volume name>。

iqn

string

IQN 是目标 iSCSI 限定名称。

iscsiInterface

string

iscsiInterface 是使用 iSCSI 传输的接口名称。默认为 'default'(tcp)。

lun

整数

LUN 是 iSCSI 目标号。

门户

数组(字符串)

门户是 iSCSI 目标门户列表。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。

secretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

targetPortal

string

targetPortal 是 iSCSI 目标门户。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。

5.1.24. .spec.iscsi.secretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.25. .spec.local

描述
Local 代表带有节点关联性的直接附加存储(Beta 功能)
类型
object
必填
  • path
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。只有在 Path 是块设备时才适用。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则默认值为自动选择文件系统。

path

string

到节点上卷的完整路径的路径。它可以是目录或块设备(disk, partition, …​)。

5.1.26. .spec.nfs

描述
代表持续 pod 生命周期的 NFS 挂载。NFS 卷不支持所有权管理或 SELinux 重新标记。
类型
object
必填
  • server
  • path
属性类型描述

path

string

NFS 服务器导出的路径。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

readOnly

布尔值

此处的只读将强制使用只读权限挂载 NFS 导出。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

server

string

server 是 NFS 服务器的主机名或 IP 地址。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

5.1.27. .spec.nodeAffinity

描述
VolumeNodeAffinity 定义限制来限制此卷可以被访问的节点。
类型
object
属性类型描述

required

object

节点选择器代表一组节点上一个或多个标签查询的结果的 union;即,它代表节点选择器术语所代表的选择器或选择器。

5.1.28. .spec.nodeAffinity.required

描述
节点选择器代表一组节点上一个或多个标签查询的结果的 union;即,它代表节点选择器术语所代表的选择器或选择器。
类型
object
必填
  • nodeSelectorTerms
属性类型描述

nodeSelectorTerms

array

必需。节点选择器术语列表。术语为 ORed。

nodeSelectorTerms[]

对象

null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。

5.1.29. .spec.nodeAffinity.required.nodeSelectorTerms

描述
必需。节点选择器术语列表。术语为 ORed。
类型
数组

5.1.30. .spec.nodeAffinity.required.nodeSelectorTerms[]

描述
null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。
类型
object
属性类型描述

matchExpressions

array

按节点标签划分的节点选择器要求列表。

matchExpressions[]

对象

节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。

matchFields

array

按节点字段划分的节点选择器要求列表。

matchFields[]

对象

节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。

5.1.31. .spec.nodeAffinity.required.nodeSelectorTerms[].matchExpressions

描述
按节点标签划分的节点选择器要求列表。
类型
数组

5.1.32. .spec.nodeAffinity.required.nodeSelectorTerms[].matchExpressions[]

描述
节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
类型
object
必填
  • key
  • operator
属性类型描述

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

可能枚举值: - "DoesNotExist" - "Exists" - "Gt" - "In" - "Lt" - "NotIn"

values

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

5.1.33. .spec.nodeAffinity.required.nodeSelectorTerms[].matchFields

描述
按节点字段划分的节点选择器要求列表。
类型
数组

5.1.34. .spec.nodeAffinity.required.nodeSelectorTerms[].matchFields[]

描述
节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
类型
object
必填
  • key
  • operator
属性类型描述

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

可能枚举值: - "DoesNotExist" - "Exists" - "Gt" - "In" - "Lt" - "NotIn"

values

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

5.1.35. .spec.photonPersistentDisk

描述
代表 Photon Controller 持久磁盘资源。
类型
object
必填
  • pdID
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

pdID

string

pdID 是标识 Photon Controller 持久磁盘的 ID

5.1.36. .spec.portworxVolume

描述
PortworxVolumeSource 代表 Portworx 卷资源。
类型
object
必填
  • volumeID
属性类型描述

fsType

string

fstype 代表要挂载的文件系统类型必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs".如果未指定,则隐式推断为 "ext4"。

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

volumeID

string

VolumeId 唯一标识 Portworx 卷

5.1.37. .spec.quobyte

描述
代表持续 pod 生命周期的 Quobyte 挂载。quobyte 卷不支持所有权管理或 SELinux 重新标记。
类型
object
必填
  • registry
属性类型描述

group

string

将卷访问映射到 Default 的组没有组

readOnly

布尔值

此处的 readonly 将强制使用只读权限挂载 Quobyte 卷。默认为false。

registry

string

registry 代表单个或多个 Quobyte Registry 服务,它指定为 host:port 对(多个条目用逗号分开),它充当卷的中央 registry

tenant

string

在带有动态置备 Quobyte 卷的后端使用中拥有给定 Quobyte 卷的租户,由插件设置

user

string

用户,将卷访问权限映射到 Defaults 到 serivceaccount 用户

string

volume 是按名称引用已创建 Quobyte 卷的字符串。

5.1.38. .spec.rbd

描述
代表持续 pod 生命周期的 Rados 块设备挂载。RBD 卷支持所有权管理和 SELinux 重新标记。
类型
object
必填
  • monitor
  • image
属性类型描述

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#rbd

image

string

image 是 rados 镜像名称。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

keyring

string

keyring 是 RBDUser 的密钥环路径。默认为 /etc/ceph/keyring。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

monitor

数组(字符串)

monitor 是 Ceph 监视器的集合。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

pool

string

pool 是 rados 池名称。默认为 rbd。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

secretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

user

string

user 是 rados 用户名。默认为 admin。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

5.1.39. .spec.rbd.secretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.40. .spec.scaleIO

描述
ScaleIOPersistentVolumeSource 代表持久的 ScaleIO 卷
类型
object
必填
  • gateway
  • system
  • secretRef
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认为 "xfs"

gateway

string

gateway 是 ScaleIO API 网关的主机地址。

protectionDomain

string

protectionDomain 是配置存储的 ScaleIO 保护域的名称。

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret

sslEnabled

布尔值

sslEnabled 是启用/禁用与网关的 SSL 通信的标志,默认为 false

storageMode

string

storageMode 指示卷的存储是否应 ThickProvisioned 或 ThinProvisioned。默认为 ThinProvisioned。

storagePool

string

StoragePool 是与保护域关联的 ScaleIO 存储池。

system

string

system 是 ScaleIO 中配置的存储系统的名称。

volumeName

string

volumeName 是在与这个卷源关联的 ScaleIO 系统中创建的卷的名称。

5.1.41. .spec.scaleIO.secretRef

描述
secretReference 代表 Secret 引用。它有足够的信息来检索任何命名空间中的 secret
类型
object
属性类型描述

name

string

name 在命名空间中是唯一的,用于引用 secret 资源。

namespace

string

namespace 定义 secret 名称必须是唯一的的空间。

5.1.42. .spec.storageos

描述
代表 StorageOS 持久性卷资源。
类型
object
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

ObjectReference 包含足够信息供您检查或修改引用的对象。

volumeName

string

volumeName 是 StorageOS 卷的人类可读名称。卷名称仅在命名空间中唯一。

volumeNamespace

string

volumeNamespace 指定 StorageOS 中的卷范围。如果没有指定命名空间,则使用 Pod 的命名空间。这允许在 StorageOS 中镜像 Kubernetes 名称进行更紧密的集成。将 VolumeName 设置为任何名称,以覆盖默认的行为。如果没有在 StorageOS 中使用命名空间,则设置为 "default"。将创建在 StorageOS 中没有预先存在的命名空间。

5.1.43. .spec.storageos.secretRef

描述
ObjectReference 包含足够信息供您检查或修改引用的对象。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

5.1.44. .spec.vsphereVolume

描述
代表 vSphere 卷资源。
类型
object
必填
  • volumePath
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

storagePolicyID

string

storagePolicyID 是与 StoragePolicyName 关联的存储策略 Based Management (SPBM)配置集 ID。

storagePolicyName

string

StoragePolicyName 是存储基于策略的管理(SPBM)配置集名称。

volumePath

string

volumePath 是标识 vSphere 卷 vmdk 的路径

5.1.45. .status

描述
PersistentVolumeStatus 是持久性卷的当前状态。
类型
object
属性类型描述

lastPhaseTransitionTime

时间

lastPhaseTransitionTime 是阶段从一个到另一个的时间,并在每次卷阶段转换时自动重置为当前的时间。这是一个 beta 字段,需要启用 PersistentVolumeLastPhaseTransitionTime 功能(默认启用)。

message

string

Message 是人类可读的消息,指示卷处于此状态的详细信息。

phase

string

阶段表示卷是否可用,绑定到声明,或由声明发布。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#phase

可能枚举值: - 用于尚未绑定可用卷的 PersistentVolume 的 "Available" 由 binder 保留并匹配 PersistentVolumeClaims - "Bound" 用于绑定的 PersistentVolume - "Failed" 用于在从声明释放后正确回收或删除的 PersistentVolume - "Pending" 用于 PersistentVolume 这不可用 - 用于删除绑定 PersistentVolumeClaim 的 PersistentVolume 的 "Released ",在使用这个阶段再次可用前需要回收卷才可以被持久性卷声明绑定程序向另一个进程回收资源以回收资源

reason

string

reason 是一个简短的 CamelCase 字符串,用于描述任何故障,用于 CLI 中的机器解析和波动显示。

5.2. API 端点

可用的 API 端点如下:

  • /api/v1/persistentvolumes

    • DELETE: 删除 PersistentVolume 集合
    • GET: 列出或监视类型为 PersistentVolume 的对象
    • POST :创建 PersistentVolume
  • /api/v1/watch/persistentvolumes

    • GET: 观察单个对 PersistentVolume 列表的更改。已弃用:改为使用 'watch' 参数及列表操作。
  • /api/v1/persistentvolumes/{name}

    • DELETE :删除 PersistentVolume
    • GET :读取指定的 PersistentVolume
    • PATCH: 部分更新指定的 PersistentVolume
    • PUT :替换指定的 PersistentVolume
  • /api/v1/watch/persistentvolumes/{name}

    • GET: 观察对类型为 PersistentVolume 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤为带有 'fieldSelector' 参数的单个项目。
  • /api/v1/persistentvolumes/{name}/status

    • GET :指定 PersistentVolume 的读取状态
    • PATCH: 部分更新指定 PersistentVolume 的状态
    • PUT :替换指定 PersistentVolume 的状态

5.2.1. /api/v1/persistentvolumes

HTTP 方法
DELETE
描述
删除 PersistentVolume 集合
表 5.1. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 5.2. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出或监视类型为 PersistentVolume 的对象
表 5.3. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeList 模式

401 - 未授权

HTTP 方法
POST
描述
创建 PersistentVolume
表 5.4. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 5.5. 主体参数
参数类型描述

正文(body)

PersistentVolume 模式

 
表 5.6. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolume 模式

201 - Created

PersistentVolume 模式

202 - Accepted

PersistentVolume 模式

401 - 未授权

5.2.2. /api/v1/watch/persistentvolumes

HTTP 方法
GET
描述
观察单个对 PersistentVolume 列表的更改。已弃用:改为使用 'watch' 参数以及列表操作。
表 5.7. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

5.2.3. /api/v1/persistentvolumes/{name}

表 5.8. 全局路径参数
参数类型描述

name

string

PersistentVolume 的名称

HTTP 方法
DELETE
描述
删除 PersistentVolume
表 5.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 5.10. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolume 模式

202 - Accepted

PersistentVolume 模式

401 - 未授权

HTTP 方法
GET
描述
读取指定的 PersistentVolume
表 5.11. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolume 模式

401 - 未授权

HTTP 方法
PATCH
描述
部分更新指定的 PersistentVolume
表 5.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 5.13. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolume 模式

201 - Created

PersistentVolume 模式

401 - 未授权

HTTP 方法
PUT
描述
替换指定的 PersistentVolume
表 5.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 5.15. 主体参数
参数类型描述

正文(body)

PersistentVolume 模式

 
表 5.16. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolume 模式

201 - Created

PersistentVolume 模式

401 - 未授权

5.2.4. /api/v1/watch/persistentvolumes/{name}

表 5.17. 全局路径参数
参数类型描述

name

string

PersistentVolume 的名称

HTTP 方法
GET
描述
观察对类型为 PersistentVolume 的对象的更改。已弃用:使用带列表操作的 'watch' 参数,而是过滤成带有 'fieldSelector' 参数的单个项目。
表 5.18. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

5.2.5. /api/v1/persistentvolumes/{name}/status

表 5.19. 全局路径参数
参数类型描述

name

string

PersistentVolume 的名称

HTTP 方法
GET
描述
指定 PersistentVolume 的读取状态
表 5.20. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolume 模式

401 - 未授权

HTTP 方法
PATCH
描述
部分更新指定 PersistentVolume 的状态
表 5.21. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 5.22. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolume 模式

201 - Created

PersistentVolume 模式

401 - 未授权

HTTP 方法
PUT
描述
替换指定 PersistentVolume 的状态
表 5.23. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 5.24. 主体参数
参数类型描述

正文(body)

PersistentVolume 模式

 
表 5.25. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolume 模式

201 - Created

PersistentVolume 模式

401 - 未授权

第 6 章 PersistentVolumeClaim [v1]

描述
PersistentVolumeClaim 是用户对持久性卷的请求并声明
类型
对象

6.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

对象

PersistentVolumeClaimSpec 描述了存储设备的通用属性,并允许 Source 用于特定于供应商的属性

status

对象

PersistentVolumeClaimStatus 是持久性卷声明的当前状态。

6.1.1. .spec

描述
PersistentVolumeClaimSpec 描述了存储设备的通用属性,并允许 Source 用于特定于供应商的属性
类型
object
属性类型描述

accessModes

数组(字符串)

accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1

dataSource

对象

TypedLocalObjectReference 包含足够信息,以便您在同一命名空间中找到类型引用的对象。

dataSourceRef

object

如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。

resources

object

VolumeResourceRequirements 描述了卷的存储资源要求。

selector

LabelSelector

selector 是要考虑绑定的卷的标签查询。

storageClassName

string

storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1

volumeAttributesClassName

string

volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#volumeattributesclass (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。

volumeMode

字符串

volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。

可能枚举值: - "Block" 表示卷不会格式化为文件系统,并保留原始块设备。- "Filesystem" 表示卷将被格式化为文件系统或使用文件系统格式化。

volumeName

string

volumeName 是对此声明支持的 PersistentVolume 的绑定引用。

6.1.2. .spec.dataSource

描述
TypedLocalObjectReference 包含足够信息,以便您在同一命名空间中找到类型引用的对象。
类型
object
必填
  • kind
  • name
属性类型描述

apiGroup

字符串

APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。

kind

字符串

kind 是被引用的资源类型

name

字符串

name 是被引用的资源的名称

6.1.3. .spec.dataSourceRef

描述
如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
类型
object
必填
  • kind
  • name
属性类型描述

apiGroup

字符串

APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。

kind

字符串

kind 是被引用的资源类型

name

字符串

name 是被引用的资源的名称

namespace

string

命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。

6.1.4. .spec.resources

描述
VolumeResourceRequirements 描述了卷的存储资源要求。
类型
object
属性类型描述

limits

对象(数量)

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

对象(数量)

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

6.1.5. .status

描述
PersistentVolumeClaimStatus 是持久性卷声明的当前状态。
类型
object
属性类型描述

accessModes

数组(字符串)

accessModes 包含 PVC 支持的卷的实际访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1

allocatedResourceStatuses

对象(字符串)

allocatedResourceStatuses 存储给定 PVC 的大小的资源状态。键名称遵循标准 Kubernetes 标签语法。有效值为:* Un-prefixed 键: - storage - 卷的容量。* 自定义资源必须使用定义实现的前缀前缀名称,如 "example.com/my-custom-resource" 除以上值外 - 未前缀或具有 kubernetes.io 前缀的密钥被视为保留,因此可能无法使用。

ClaimResourceStatus 可以处于以下状态: - ControllerResizeInProgress: 当重新定义 control-plane 大小调整卷大小时 State set。- ControllerResizeFailed: 在重新定义控制器大小失败时,State set 会失败,并显示终端错误。- NodeResizePending: 当重新定义控制器调整卷的大小时 State 设置,但节点上需要进一步重新定义卷大小。- NodeResizeInProgress: 当 kubelet 开始重新定义卷的大小时设置 State。- NodeResizeFailed: 当 kubelet 中调整大小失败并显示终端错误时,State 设置。临时错误没有设置 NodeResizeFailed。例如:如果为更多容量扩展 PVC - 此字段可以是以下状态之一: - pvc.status.allocatedResourceStatus['storage'] = "ControllerResizeInProgress" - pvc.status.allocatedResourceStatus['storage'] = "ControllerResizeFailed" - pvc.status.allocatedResourceStatus['storage'] = "NodeResizePending" - pvc.status.allocatedResourceStatus['storage'] = "NodeResizeInProgress" - pvc.status.allocatedResourceStatus['storage'] = "NodeResizeFailed" When this field is not set, 这意味着,给定 PVC 没有调整大小的操作。

接收之前未知 resourceName 或 ClaimResourceStatus 的 PVC 更新的控制器应忽略其设计的用途的更新。例如 - 仅负责重新定义卷大小调整容量的控制器,应忽略更改与 PVC 相关的其他有效资源的 PVC 更新。

这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。

allocatedResources

对象(数量)

allocatedResources 跟踪分配给 PVC 的资源,包括其容量。键名称遵循标准 Kubernetes 标签语法。有效值为:* Un-prefixed 键: - storage - 卷的容量。* 自定义资源必须使用定义实现的前缀前缀名称,如 "example.com/my-custom-resource" 除以上值外 - 未前缀或具有 kubernetes.io 前缀的密钥被视为保留,因此可能无法使用。

当请求卷扩展操作时,此处报告的容量可能大于实际容量。对于存储配额,使用来自 allocatedResources 和 PVC.spec.resources 的值。如果没有设置 allocatedResources,则单独使用 PVC.spec.resources 进行配额计算。如果卷扩展容量请求较低,则只有当实际卷容量相等或低于请求的容量时,才会降低 allocatedResources。

接收之前未知 resourceName 的 PVC 更新的控制器应忽略其目的的更新。例如 - 仅负责重新定义卷大小调整容量的控制器,应忽略更改与 PVC 相关的其他有效资源的 PVC 更新。

这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。

capacity

对象(数量)

capacity 代表底层卷的实际资源。

conditions

数组

条件是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'ResizeStarted'。

conditions[]

object

PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息

currentVolumeAttributesClassName

string

currentVolumeAttributesClassName 是 PVC 正在使用的 VolumeAttributesClass 的当前名称。当取消设置时,没有应用到此 PersistentVolumeClaim 的 VolumeAttributeClass。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。

modifyVolumeStatus

object

ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象

phase

string

phase 代表 PersistentVolumeClaim 的当前阶段。

可能枚举值: - 用于绑定的 PersistentVolumeClaim 的 "Bound " - 用于丢失其底层 PersistentVolume 的 PersistentVolumeClaim。这个声明绑定到 PersistentVolume,这个卷不再存在,并会丢失它的所有数据。- 用于尚未绑定的 PersistentVolumeClaim 的 "Pending"

6.1.6. .status.conditions

描述
条件是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'ResizeStarted'。
类型
array

6.1.7. .status.conditions[]

描述
PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息
类型
object
必填
  • type
  • status
属性类型描述

lastProbeTime

时间

lastProbeTime 是我们探测到条件的时间。

lastTransitionTime

时间

lastTransitionTime 是条件从一个状态转换到另一个状态的时间。

message

string

Message 是人类可读的消息,指示最后一次转换的详细信息。

reason

string

原因是唯一的,这应该是一个简短的机器理解字符串,给出了条件最后一次转换的原因。如果报告"ResizeStarted",则表示已调整底层持久性卷的大小。

status

字符串

 

type

string

 

6.1.8. .status.modifyVolumeStatus

描述
ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象
类型
object
必填
  • status
属性类型描述

status

string

status 是 ControllerModifyVolume 操作的状态。它可以处于以下状态: - Pending Pending 表示因为未处理的要求(如指定的 VolumeAttributesClass 不存在)- InProgress InProgress 表示卷被修改。- 不可联邦表示请求已被修改为无效的 CSI 驱动程序。要解决错误,需要指定一个有效的 VolumeAttributesClass。注: 以后可以添加新状态。消费者应检查未知状态并正确失败。

可能枚举值: - "InProgress" InProgress 表示卷正在被修改 - "Infeasible" Infeasible 表示请求已被 CSI 驱动程序无效。要解决错误,需要指定有效的 VolumeAttributesClass - "Pending" Pending 表示因为未处理的要求(如指定的 VolumeAttributesClass 不存在)无法修改 PersistentVolumeClaim,如指定的 VolumeAttributesClass

targetVolumeAttributesClassName

string

targetVolumeAttributesClassName 是当前被协调的 PVC 的 VolumeAttributesClass 的名称

6.2. API 端点

可用的 API 端点如下:

  • /api/v1/persistentvolumeclaims

    • GET: 列出或监视类型为 PersistentVolumeClaim 的对象
  • /api/v1/watch/persistentvolumeclaims

    • GET: 观察单个对 PersistentVolumeClaim 列表的更改。已弃用:改为使用 'watch' 参数及列表操作。
  • /api/v1/namespaces/{namespace}/persistentvolumeclaims

    • DELETE: 删除 PersistentVolumeClaim 集合
    • GET: 列出或监视类型为 PersistentVolumeClaim 的对象
    • POST :创建 PersistentVolumeClaim
  • /api/v1/watch/namespaces/{namespace}/persistentvolumeclaims

    • GET: 观察单个对 PersistentVolumeClaim 列表的更改。已弃用:改为使用 'watch' 参数及列表操作。
  • /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}

    • DELETE :删除 PersistentVolumeClaim
    • GET :读取指定的 PersistentVolumeClaim
    • PATCH: 部分更新指定的 PersistentVolumeClaim
    • PUT :替换指定的 PersistentVolumeClaim
  • /api/v1/watch/namespaces/{namespace}/persistentvolumeclaims/{name}

    • GET: 观察对类型为 PersistentVolumeClaim 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤为带有 'fieldSelector' 参数的单个项目。
  • /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status

    • GET :指定 PersistentVolumeClaim 的读取状态
    • PATCH: 部分更新指定 PersistentVolumeClaim 的状态
    • PUT :替换指定 PersistentVolumeClaim 的状态

6.2.1. /api/v1/persistentvolumeclaims

HTTP 方法
GET
描述
列出或监视类型为 PersistentVolumeClaim 的对象
表 6.1. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaimList 模式

401 - Unauthorized

6.2.2. /api/v1/watch/persistentvolumeclaims

HTTP 方法
GET
描述
观察单个对 PersistentVolumeClaim 列表的更改。已弃用:改为使用 'watch' 参数及列表操作。
表 6.2. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

6.2.3. /api/v1/namespaces/{namespace}/persistentvolumeclaims

HTTP 方法
DELETE
描述
删除 PersistentVolumeClaim 集合
表 6.3. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 6.4. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出或监视类型为 PersistentVolumeClaim 的对象
表 6.5. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaimList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 PersistentVolumeClaim
表 6.6. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 6.7. 主体参数
参数类型描述

正文(body)

PersistentVolumeClaim 模式

 
表 6.8. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaim 模式

201 - Created

PersistentVolumeClaim 模式

202 - Accepted

PersistentVolumeClaim 模式

401 - Unauthorized

6.2.4. /api/v1/watch/namespaces/{namespace}/persistentvolumeclaims

HTTP 方法
GET
描述
观察单个对 PersistentVolumeClaim 列表的更改。已弃用:改为使用 'watch' 参数及列表操作。
表 6.9. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

6.2.5. /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}

表 6.10. 全局路径参数
参数类型描述

name

string

PersistentVolumeClaim 的名称

HTTP 方法
DELETE
描述
delete a PersistentVolumeClaim
表 6.11. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 6.12. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaim 模式

202 - Accepted

PersistentVolumeClaim 模式

401 - Unauthorized

HTTP 方法
GET
描述
读取指定的 PersistentVolumeClaim
表 6.13. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaim 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 PersistentVolumeClaim
表 6.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 6.15. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaim 模式

201 - Created

PersistentVolumeClaim 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 PersistentVolumeClaim
表 6.16. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 6.17. 主体参数
参数类型描述

正文(body)

PersistentVolumeClaim 模式

 
表 6.18. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaim 模式

201 - Created

PersistentVolumeClaim 模式

401 - Unauthorized

6.2.6. /api/v1/watch/namespaces/{namespace}/persistentvolumeclaims/{name}

表 6.19. 全局路径参数
参数类型描述

name

string

PersistentVolumeClaim 的名称

HTTP 方法
GET
描述
观察对类型为 PersistentVolumeClaim 的对象的更改。已弃用:使用带列表操作的 'watch' 参数,而是过滤成带有 'fieldSelector' 参数的单个项目。
表 6.20. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

6.2.7. /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status

表 6.21. 全局路径参数
参数类型描述

name

string

PersistentVolumeClaim 的名称

HTTP 方法
GET
描述
指定 PersistentVolumeClaim 的读取状态
表 6.22. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaim 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 PersistentVolumeClaim 的状态
表 6.23. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 6.24. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaim 模式

201 - Created

PersistentVolumeClaim 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 PersistentVolumeClaim 的状态
表 6.25. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 6.26. 主体参数
参数类型描述

正文(body)

PersistentVolumeClaim 模式

 
表 6.27. HTTP 响应
HTTP 代码响应正文

200 - OK

PersistentVolumeClaim 模式

201 - Created

PersistentVolumeClaim 模式

401 - Unauthorized

第 7 章 StorageClass [storage.k8s.io/v1]

描述

StorageClass 描述了可以动态置备 PersistentVolume 的存储类的参数。

StorageClasses 是没有命名空间的;根据 etcd 的存储类的名称位于 ObjectMeta.Name 中。

类型
object
必填
  • Provisioner

7.1. 规格

属性类型描述

allowVolumeExpansion

布尔值

allowVolumeExpansion 显示存储类是否允许卷扩展。

allowedTopologies

数组(TopologySelectorTerm)

allowedTopologies 限制可以动态置备卷的节点拓扑。每个卷插件定义自己的支持的拓扑规格。空 TopologySelectorTerm 列表表示没有拓扑限制。此字段仅被启用 VolumeScheduling 功能的服务器实现。

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

mountOptions

数组(字符串)

mountOptions 控制此存储类动态置备的 PersistentVolume 的 mountOptions。例如 ["ro", "soft"]。未验证 - 如果 PV 的挂载无效,则简单失败。

parameters

对象(字符串)

参数包含置备程序的参数,应该创建此存储类的卷。

Provisioner

string

provisioner 表示置备程序的类型。

reclaimPolicy

string

reclaimPolicy 控制此存储类动态置备的 PersistentVolume 的 reclaimPolicy。默认为 Delete。

可能枚举值: - "Delete" 表示该卷将从声明发行版中从 Kubernetes 版本中删除。卷插件必须支持 Deletion. - "Recycle" 意味着该卷将从声明中回收回未绑定持久性卷的池。卷插件必须支持 Recycling。- "Retain" 表示卷将保留在当前阶段(Released),供管理员手动重新声明。默认策略为 Retain。

volumeBindingMode

string

volumeBindingMode 表示应如何置备和绑定 PersistentVolumeClaim。如果未设置,则使用 VolumeBindingImmediate。此字段仅被启用 VolumeScheduling 功能的服务器实现。

可能枚举值:- "Immediate" 表示 PersistentVolumeClaims 应立即置备和绑定。这是默认模式。- "WaitForFirstConsumer" 表示在第一个 Pod 被引用 PeristentVolumeClaim 前,不应置备和绑定 PersistentVolumeClaim。卷置备和绑定将在 Pod scheduing 过程中发生。

7.2. API 端点

可用的 API 端点如下:

  • /apis/storage.k8s.io/v1/storageclasses

    • DELETE :删除 StorageClass 集合
    • GET: 列出或监视类型为 StorageClass 的对象
    • POST :创建一个 StorageClass
  • /apis/storage.k8s.io/v1/watch/storageclasses

    • GET: 观察单个对 StorageClass 列表的更改。已弃用:使用带有 list 操作的 'watch' 参数。
  • /apis/storage.k8s.io/v1/storageclasses/{name}

    • DELETE :删除 StorageClass
    • GET :读取指定的 StorageClass
    • PATCH: 部分更新指定的 StorageClass
    • PUT :替换指定的 StorageClass
  • /apis/storage.k8s.io/v1/watch/storageclasses/{name}

    • GET: 观察对类型为 StorageClass 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤成带有 'fieldSelector' 参数的单个项目。

7.2.1. /apis/storage.k8s.io/v1/storageclasses

HTTP 方法
DELETE
描述
删除 StorageClass 集合
表 7.1. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 7.2. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出或监视类型为 StorageClass 的对象
表 7.3. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageClassList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 StorageClass
表 7.4. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 7.5. 主体参数
参数类型描述

正文(body)

StorageClass 模式

 
表 7.6. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageClass 模式

201 - Created

StorageClass 模式

202 - Accepted

StorageClass 模式

401 - Unauthorized

7.2.2. /apis/storage.k8s.io/v1/watch/storageclasses

HTTP 方法
GET
描述
观察单个对 StorageClass 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
表 7.7. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

7.2.3. /apis/storage.k8s.io/v1/storageclasses/{name}

表 7.8. 全局路径参数
参数类型描述

name

string

StorageClass 的名称

HTTP 方法
DELETE
描述
删除 StorageClass
表 7.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 7.10. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageClass 模式

202 - Accepted

StorageClass 模式

401 - Unauthorized

HTTP 方法
GET
描述
读取指定的 StorageClass
表 7.11. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageClass 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 StorageClass
表 7.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 7.13. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageClass 模式

201 - Created

StorageClass 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 StorageClass
表 7.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 7.15. 主体参数
参数类型描述

正文(body)

StorageClass 模式

 
表 7.16. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageClass 模式

201 - Created

StorageClass 模式

401 - Unauthorized

7.2.4. /apis/storage.k8s.io/v1/watch/storageclasses/{name}

表 7.17. 全局路径参数
参数类型描述

name

string

StorageClass 的名称

HTTP 方法
GET
描述
观察对类型为 StorageClass 的对象的更改。已弃用:使用带列表操作的 'watch' 参数,而是过滤成带有 'fieldSelector' 参数的单个项目。
表 7.18. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

第 8 章 StorageState [migration.k8s.io/v1alpha1]

描述
特定资源的存储状态。
类型
对象

8.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

存储状态规格。

status

object

存储状态。

8.1.1. .spec

描述
存储状态规格。
类型
object
属性类型描述

resource

object

此 storageState 所在的资源。

8.1.2. .spec.resource

描述
此 storageState 所在的资源。
类型
object
属性类型描述

group

string

组的名称。

resource

string

资源名称。

8.1.3. .status

描述
存储状态。
类型
object
属性类型描述

currentStorageVersionHash

string

当前存储版本的哈希值,如 API 服务器提供的发现文档中所示。Storage Version 是在保留前将对象转换为的版本。

lastHeartbeatTime

string

LastHeartbeatTime 是存储迁移触发控制器在发现文档中检查此资源的存储版本哈希最后一次的时间,并更新此字段。

persistedStorageVersionHashes

数组(字符串)

保留 spec.resource 实例的存储版本的哈希值可能仍然被编码。"未知"是列表中的有效值,是默认值。升级或降级到不支持此字段中列出的所有版本的 apiserver 二进制文件是不安全的,或者列出了 "Unknown"。完成此资源的存储版本迁移后,此字段的值将优化为仅包含 currentStorageVersionHash。当 apiserver 更改存储版本后,新的存储版本会附加到列表中。

8.2. API 端点

可用的 API 端点如下:

  • /apis/migration.k8s.io/v1alpha1/storagestates

    • DELETE :删除 StorageState 集合
    • GET: 列出类型为 StorageState 的对象
    • POST :创建 StorageState
  • /apis/migration.k8s.io/v1alpha1/storagestates/{name}

    • DELETE :删除 StorageState
    • GET :读取指定的 StorageState
    • PATCH: 部分更新指定的 StorageState
    • PUT :替换指定的 StorageState
  • /apis/migration.k8s.io/v1alpha1/storagestates/{name}/status

    • GET :指定 StorageState 的读取状态
    • PATCH: 部分更新指定 StorageState 的状态
    • PUT :替换指定 StorageState 的状态

8.2.1. /apis/migration.k8s.io/v1alpha1/storagestates

HTTP 方法
DELETE
描述
删除 StorageState 集合
表 8.1. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 StorageState 类型的对象
表 8.2. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageStateList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 StorageState
表 8.3. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 8.4. 主体参数
参数类型描述

正文(body)

StorageState 模式

 
表 8.5. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageState 模式

201 - Created

StorageState 模式

202 - Accepted

StorageState 模式

401 - Unauthorized

8.2.2. /apis/migration.k8s.io/v1alpha1/storagestates/{name}

表 8.6. 全局路径参数
参数类型描述

name

string

StorageState 的名称

HTTP 方法
DELETE
描述
delete a StorageState
表 8.7. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 8.8. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
读取指定的 StorageState
表 8.9. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageState 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 StorageState
表 8.10. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 8.11. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageState 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 StorageState
表 8.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 8.13. 主体参数
参数类型描述

正文(body)

StorageState 模式

 
表 8.14. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageState 模式

201 - Created

StorageState 模式

401 - Unauthorized

8.2.3. /apis/migration.k8s.io/v1alpha1/storagestates/{name}/status

表 8.15. 全局路径参数
参数类型描述

name

string

StorageState 的名称

HTTP 方法
GET
描述
指定 StorageState 的读取状态
表 8.16. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageState 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 StorageState 的状态
表 8.17. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 8.18. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageState 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 StorageState 的状态
表 8.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 8.20. 主体参数
参数类型描述

正文(body)

StorageState 模式

 
表 8.21. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageState 模式

201 - Created

StorageState 模式

401 - Unauthorized

第 9 章 StorageVersionMigration [migration.k8s.io/v1alpha1]

描述
StorageVersionMigration 代表将数据迁移到最新的存储版本。
类型
对象

9.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

迁移规格。

status

object

迁移的状态。

9.1.1. .spec

描述
迁移规格。
类型
object
必填
  • resource
属性类型描述

continueToken

string

列表选项中使用的令牌,用于获取要迁移的对象的下一个块。当 .status.conditions 表示迁移为"Running"时,用户可以使用此令牌来检查迁移的进度。

resource

object

正在迁移的资源。migrator 将请求发送到提供资源的端点。不可变。

9.1.2. .spec.resource

描述
正在迁移的资源。migrator 将请求发送到提供资源的端点。不可变。
类型
object
属性类型描述

group

string

组的名称。

resource

string

资源名称。

version

string

版本的名称。

9.1.3. .status

描述
迁移的状态。
类型
object
属性类型描述

conditions

数组

迁移当前状态的最新可用影响。

conditions[]

object

描述在特定时间点上迁移的状态。

9.1.4. .status.conditions

描述
迁移当前状态的最新可用影响。
类型
array

9.1.5. .status.conditions[]

描述
描述在特定时间点上迁移的状态。
类型
object
必填
  • status
  • type
属性类型描述

lastUpdateTime

string

最后一次更新此条件的时间。

message

字符串

人类可读的消息,指示有关转换的详细信息。

reason

字符串

条件最后一次转换的原因。

status

字符串

条件的状态,True, False, Unknown 之一。

type

string

条件的类型。

9.2. API 端点

可用的 API 端点如下:

  • /apis/migration.k8s.io/v1alpha1/storageversionmigrations

    • DELETE: 删除 StorageVersionMigration 集合
    • GET: 列出 StorageVersionMigration 类型的对象
    • POST :创建 StorageVersionMigration
  • /apis/migration.k8s.io/v1alpha1/storageversionmigrations/{name}

    • DELETE :删除 StorageVersionMigration
    • GET :读取指定的 StorageVersionMigration
    • PATCH: 部分更新指定的 StorageVersionMigration
    • PUT :替换指定的 StorageVersionMigration
  • /apis/migration.k8s.io/v1alpha1/storageversionmigrations/{name}/status

    • GET: 指定 StorageVersionMigration 的读取状态
    • PATCH: 部分更新指定 StorageVersionMigration 的状态
    • PUT :替换指定 StorageVersionMigration 的状态

9.2.1. /apis/migration.k8s.io/v1alpha1/storageversionmigrations

HTTP 方法
DELETE
描述
删除 StorageVersionMigration 集合
表 9.1. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 StorageVersionMigration 类型的对象
表 9.2. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageVersionMigrationList schema

401 - Unauthorized

HTTP 方法
POST
描述
创建 StorageVersionMigration
表 9.3. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 9.4. 主体参数
参数类型描述

正文(body)

StorageVersionMigration 模式

 
表 9.5. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageVersionMigration 模式

201 - Created

StorageVersionMigration 模式

202 - Accepted

StorageVersionMigration 模式

401 - Unauthorized

9.2.2. /apis/migration.k8s.io/v1alpha1/storageversionmigrations/{name}

表 9.6. 全局路径参数
参数类型描述

name

string

StorageVersionMigration 的名称

HTTP 方法
DELETE
描述
delete a StorageVersionMigration
表 9.7. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 9.8. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 StorageVersionMigration
表 9.9. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageVersionMigration 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 StorageVersionMigration
表 9.10. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 9.11. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageVersionMigration 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 StorageVersionMigration
表 9.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 9.13. 主体参数
参数类型描述

正文(body)

StorageVersionMigration 模式

 
表 9.14. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageVersionMigration 模式

201 - Created

StorageVersionMigration 模式

401 - Unauthorized

9.2.3. /apis/migration.k8s.io/v1alpha1/storageversionmigrations/{name}/status

表 9.15. 全局路径参数
参数类型描述

name

string

StorageVersionMigration 的名称

HTTP 方法
GET
描述
指定 StorageVersionMigration 的读取状态
表 9.16. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageVersionMigration 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 StorageVersionMigration 的状态
表 9.17. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 9.18. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageVersionMigration 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 StorageVersionMigration 的状态
表 9.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 9.20. 主体参数
参数类型描述

正文(body)

StorageVersionMigration 模式

 
表 9.21. HTTP 响应
HTTP 代码响应正文

200 - OK

StorageVersionMigration 模式

201 - Created

StorageVersionMigration 模式

401 - Unauthorized

第 10 章 VolumeAttachment [storage.k8s.io/v1]

描述

VolumeAttachment 捕获将指定卷附加到指定节点或从指定节点分离的意图。

VolumeAttachment 对象没有命名空间。

类型
object
必填
  • spec

10.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

VolumeAttachmentSpec 是 VolumeAttachment 请求的规格。

status

object

VolumeAttachmentStatus 是 VolumeAttachment 请求的状态。

10.1.1. .spec

描述
VolumeAttachmentSpec 是 VolumeAttachment 请求的规格。
类型
object
必填
  • attacher
  • source
  • nodeName
属性类型描述

attacher

string

attacher 表示 MUST 处理此请求的卷驱动程序的名称。这是 GetPluginName ()返回的名称。

nodeName

string

nodeName 代表卷应附加到的节点。

source

object

VolumeAttachmentSource 代表应附加的卷。现在,只有 PersistenVolumes 只能通过外部附加器附加,以后我们可能会允许 pod 中的内联卷。可以设置一个成员。

10.1.2. .spec.source

描述
VolumeAttachmentSource 代表应附加的卷。现在,只有 PersistenVolumes 只能通过外部附加器附加,以后我们可能会允许 pod 中的内联卷。可以设置一个成员。
类型
object
属性类型描述

inlineVolumeSpec

PersistentVolumeSpec

inlineVolumeSpec 包含附加 pod 内联 VolumeSource 定义的持久性卷所需的所有信息。此字段只针对 CSIMigration 功能填充。它包含从 pod 的内联 VolumeSource 到 PersistentVolumeSpec 的转换字段。此字段是 beta 级别,仅适用于启用 CSIMigration 功能的服务器。

persistentVolumeName

string

persistentVolumeName 代表要附加的持久性卷的名称。

10.1.3. .status

描述
VolumeAttachmentStatus 是 VolumeAttachment 请求的状态。
类型
object
必填
  • attached
属性类型描述

attachError

object

VolumeError 捕获在卷操作过程中遇到的错误。

attached

布尔值

attached 表示卷已成功附加。此字段只能由完成附加操作的实体设置,如 external-attacher。

attachmentMetadata

对象(字符串)

attachmentMetadata 在成功附加后填充附加操作返回的任何信息,这些信息必须传递给后续的 WaitForAttach 或 Mount 调用。此字段只能由完成附加操作的实体设置,如 external-attacher。

detachError

object

VolumeError 捕获在卷操作过程中遇到的错误。

10.1.4. .status.attachError

描述
VolumeError 捕获在卷操作过程中遇到的错误。
类型
object
属性类型描述

message

string

Message 代表 Attach 或 Detach 操作过程中遇到的错误。此字符串可以记录,因此不应包含敏感信息。

time

时间

time 代表遇到错误的时间。

10.1.5. .status.detachError

描述
VolumeError 捕获在卷操作过程中遇到的错误。
类型
object
属性类型描述

message

string

Message 代表 Attach 或 Detach 操作过程中遇到的错误。此字符串可以记录,因此不应包含敏感信息。

time

时间

time 代表遇到错误的时间。

10.2. API 端点

可用的 API 端点如下:

  • /apis/storage.k8s.io/v1/volumeattachments

    • DELETE :删除 VolumeAttachment 集合
    • GET: 列出或监视类型为 VolumeAttachment 的对象
    • POST :创建一个卷附加
  • /apis/storage.k8s.io/v1/watch/volumeattachments

    • GET: 观察对 VolumeAttachment 列表的单独更改。已弃用:使用带列表操作的 'watch' 参数。
  • /apis/storage.k8s.io/v1/volumeattachments/{name}

    • DELETE :删除卷附加
    • GET :读取指定的 VolumeAttachment
    • PATCH: 部分更新指定的 VolumeAttachment
    • PUT :替换指定的 VolumeAttachment
  • /apis/storage.k8s.io/v1/watch/volumeattachments/{name}

    • GET: 观察对类型为 VolumeAttachment 的对象的更改。已弃用:使用带列表操作的 'watch' 参数,而是过滤成带有 'fieldSelector' 参数的单个项目。
  • /apis/storage.k8s.io/v1/volumeattachments/{name}/status

    • GET :指定 VolumeAttachment 的读取状态
    • PATCH: 部分更新指定 VolumeAttachment 的状态
    • PUT :替换指定 VolumeAttachment 的状态

10.2.1. /apis/storage.k8s.io/v1/volumeattachments

HTTP 方法
DELETE
描述
删除 VolumeAttachment 集合
表 10.1. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 10.2. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出或监视类型为 VolumeAttachment 的对象
表 10.3. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachmentList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 VolumeAttachment
表 10.4. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 10.5. 主体参数
参数类型描述

正文(body)

VolumeAttachment 模式

 
表 10.6. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachment 模式

201 - Created

VolumeAttachment 模式

202 - Accepted

VolumeAttachment 模式

401 - Unauthorized

10.2.2. /apis/storage.k8s.io/v1/watch/volumeattachments

HTTP 方法
GET
描述
观察单个对 VolumeAttachment 列表的更改。已弃用:使用带列表操作的 'watch' 参数。
表 10.7. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

10.2.3. /apis/storage.k8s.io/v1/volumeattachments/{name}

表 10.8. 全局路径参数
参数类型描述

name

string

VolumeAttachment 的名称

HTTP 方法
DELETE
描述
删除一个 VolumeAttachment
表 10.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 10.10. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachment 模式

202 - Accepted

VolumeAttachment 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 VolumeAttachment
表 10.11. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachment 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 VolumeAttachment
表 10.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 10.13. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachment 模式

201 - Created

VolumeAttachment 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 VolumeAttachment
表 10.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 10.15. 主体参数
参数类型描述

正文(body)

VolumeAttachment 模式

 
表 10.16. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachment 模式

201 - Created

VolumeAttachment 模式

401 - Unauthorized

10.2.4. /apis/storage.k8s.io/v1/watch/volumeattachments/{name}

表 10.17. 全局路径参数
参数类型描述

name

string

VolumeAttachment 的名称

HTTP 方法
GET
描述
观察对类型为 VolumeAttachment 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤到带有 'fieldSelector' 参数的单个项目。
表 10.18. HTTP 响应
HTTP 代码响应正文

200 - OK

WatchEvent 模式

401 - Unauthorized

10.2.5. /apis/storage.k8s.io/v1/volumeattachments/{name}/status

表 10.19. 全局路径参数
参数类型描述

name

string

VolumeAttachment 的名称

HTTP 方法
GET
描述
指定 VolumeAttachment 的读取状态
表 10.20. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachment 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 VolumeAttachment 的状态
表 10.21. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 10.22. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachment 模式

201 - Created

VolumeAttachment 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 VolumeAttachment 的状态
表 10.23. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 10.24. 主体参数
参数类型描述

正文(body)

VolumeAttachment 模式

 
表 10.25. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeAttachment 模式

201 - Created

VolumeAttachment 模式

401 - Unauthorized

第 11 章 VolumeSnapshot [snapshot.storage.k8s.io/v1]

描述
VolumeSnapshot 是用户创建持久性卷时点快照或绑定到预先存在的快照的请求。
类型
object
必填
  • spec

11.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec 定义用户请求的快照所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/volume-snapshots#volumesnapshots 必需。

status

object

Status 代表快照的当前信息。在使用此对象前,消费者必须验证 VolumeSnapshot 和 VolumeSnapshotContent 对象之间的绑定是否成功(通过验证 VolumeSnapshot 和 VolumeSnapshotContent 点)。

11.1.1. .spec

描述
spec 定义用户请求的快照所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/volume-snapshots#volumesnapshots 必需。
类型
object
必填
  • source
属性类型描述

source

object

source 指定从哪里创建快照。此字段在创建后是不可变的。必需。

volumeSnapshotClassName

string

volume5-4Name 是 VolumeSnapshot 请求的 VolumeSnapshotClass 的名称。volumeSnapshotClassName 可能保留为 nil,以指示应使用默认的 SnapshotClass。给定集群可能有多个默认卷 SnapshotClasses:每个 CSI 驱动程序一个默认值。如果 VolumeSnapshot 没有指定 SnapshotClass,则会检查 VolumeSnapshotSource 找出相关的 CSI Driver 是什么,并使用与该 CSI Driver 相关的默认 VolumeSnapshotClass。如果一个给定的 CSI Driver 存在多个 VolumeSnapshotClass,且多个已被标记为默认值,CreateSnapshot 将失败并生成事件。此字段不允许使用空字符串。

11.1.2. .spec.source

描述
source 指定从哪里创建快照。此字段在创建后是不可变的。必需。
类型
object
属性类型描述

persistentVolumeClaimName

string

PersistentVolumeClaimName 指定代表应该创建快照的卷的 PersistentVolumeClaim 对象的名称。该 PVC 假定与 VolumeSnapshot 对象位于同一个命名空间中。如果快照不存在且需要创建,则应设置此字段。此字段不可变。

volumeSnapshotContentName

string

volumeSnapshotContentName 指定代表现有卷快照的预先存在的 VolumeSnapshotContent 对象的名称。如果快照已存在且只需要 Kubernetes 中的表示,则应设置此字段。此字段不可变。

11.1.3. .status

描述
Status 代表快照的当前信息。在使用此对象前,消费者必须验证 VolumeSnapshot 和 VolumeSnapshotContent 对象之间的绑定是否成功(通过验证 VolumeSnapshot 和 VolumeSnapshotContent 点)。
类型
object
属性类型描述

boundVolumeSnapshotContentName

string

boundVolumeSnapshotContentName 是这个 VolumeSnapshot 对象要绑定到的 VolumeSnapshotContent 对象的名称。如果没有指定,这表示 VolumeSnapshot 对象还没有成功绑定到 VolumeSnapshotContent 对象。注意:为了避免可能的安全问题,用户必须在使用此对象前验证 VolumeSnapshot 和 VolumeSnapshotContent 对象之间的绑定是否成功(通过验证 VolumeSnapshot 和 VolumeSnapshotContent 点)。

creationTime

string

creationTime 是底层存储系统执行点快照时的时间戳。在动态快照创建情形中,这个字段将由快照控制器填写,并带有从 CSI "CreateSnapshot" gRPC 调用返回的 "creation_time" 值。对于预先存在的快照,此字段将填充从 CSI "ListSnapshots" gRPC 调用返回的 "creation_time" 值(如果驱动程序支持)。如果没有指定,这可能表示快照的创建时间未知。

错误

object

error 是快照创建过程中最后观察到的错误(若有)。此字段对于上层控制器(即应用程序控制器)会很有帮助,以确定它们是否应该继续根据报告的错误类型创建快照。快照控制器会在快照创建过程中发生错误时保留重试。成功后,此错误字段将被清除。

readyToUse

布尔值

readyToUse 表示快照是否准备好用于恢复卷。在动态快照创建情况下,这个字段由快照控制器填充,并带有从 CSI "CreateSnapshot" gRPC 调用返回的 "ready_to_use" 值。对于预先存在的快照,此字段将填充从 CSI "ListSnapshots" gRPC 调用返回的 "ready_to_use" 值(如果驱动程序支持),否则此字段将被设置为 "True"。如果没有指定,这表示快照的就绪状态未知。

restoreSize

integer-or-string

restoreSize 代表从这个快照创建卷所需的最小卷大小。在动态快照创建情形中,这个字段将由快照控制器填写,并带有从 CSI "CreateSnapshot" gRPC 调用返回的 "size_bytes" 值。对于预先存在的快照,如果驱动程序支持,此字段将填充从 CSI "ListSnapshots" gRPC 调用返回的 "size_bytes" 值。当从这个快照恢复卷时,如果指定了 restoreSize,则卷的大小不能小于 restoreSize。如果没有指定,这表示大小未知。

volumeGroupSnapshotName

string

VolumeGroupSnapshotName 是这个 VolumeSnapshot 的一部分的 VolumeGroupSnapshot 的名称。

11.1.4. .status.error

描述
error 是快照创建过程中最后观察到的错误(若有)。此字段对于上层控制器(即应用程序控制器)会很有帮助,以确定它们是否应该继续根据报告的错误类型创建快照。快照控制器会在快照创建过程中发生错误时保留重试。成功后,此错误字段将被清除。
类型
object
属性类型描述

message

string

如果指定,消息是一个字符串,详细描述了快照创建过程中遇到的错误。注意:消息可能已记录,并且不应包含敏感信息。

time

string

时间是遇到错误时的时间戳。

11.2. API 端点

可用的 API 端点如下:

  • /apis/snapshot.storage.k8s.io/v1/volumesnapshots

    • GET :列出 VolumeSnapshot 类型的对象
  • /apis/snapshot.storage.k8s.io/v1/namespaces/{namespace}/volumesnapshots

    • DELETE :删除 VolumeSnapshot 的集合
    • GET :列出 VolumeSnapshot 类型的对象
    • POST :创建 VolumeSnapshot
  • /apis/snapshot.storage.k8s.io/v1/namespaces/{namespace}/volumesnapshots/{name}

    • DELETE :删除 VolumeSnapshot
    • GET :读取指定的 VolumeSnapshot
    • PATCH: 部分更新指定的 VolumeSnapshot
    • PUT :替换指定的 VolumeSnapshot
  • /apis/snapshot.storage.k8s.io/v1/namespaces/{namespace}/volumesnapshots/{name}/status

    • GET :指定 VolumeSnapshot 的读取状态
    • PATCH: 部分更新指定 VolumeSnapshot 的状态
    • PUT :替换指定 VolumeSnapshot 的状态

11.2.1. /apis/snapshot.storage.k8s.io/v1/volumesnapshots

HTTP 方法
GET
描述
列出 VolumeSnapshot 类型的对象
表 11.1. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotList 模式

401 - Unauthorized

11.2.2. /apis/snapshot.storage.k8s.io/v1/namespaces/{namespace}/volumesnapshots

HTTP 方法
DELETE
描述
删除 VolumeSnapshot 集合
表 11.2. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 VolumeSnapshot 类型的对象
表 11.3. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 VolumeSnapshot
表 11.4. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 11.5. 主体参数
参数类型描述

正文(body)

VolumeSnapshot 模式

 
表 11.6. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshot 模式

201 - Created

VolumeSnapshot 模式

202 - Accepted

VolumeSnapshot 模式

401 - Unauthorized

11.2.3. /apis/snapshot.storage.k8s.io/v1/namespaces/{namespace}/volumesnapshots/{name}

表 11.7. 全局路径参数
参数类型描述

name

string

VolumeSnapshot 的名称

HTTP 方法
DELETE
描述
删除 VolumeSnapshot
表 11.8. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 11.9. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 VolumeSnapshot
表 11.10. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshot 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 VolumeSnapshot
表 11.11. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 11.12. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshot 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 VolumeSnapshot
表 11.13. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 11.14. 主体参数
参数类型描述

正文(body)

VolumeSnapshot 模式

 
表 11.15. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshot 模式

201 - Created

VolumeSnapshot 模式

401 - Unauthorized

11.2.4. /apis/snapshot.storage.k8s.io/v1/namespaces/{namespace}/volumesnapshots/{name}/status

表 11.16. 全局路径参数
参数类型描述

name

string

VolumeSnapshot 的名称

HTTP 方法
GET
描述
指定 VolumeSnapshot 的读取状态
表 11.17. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshot 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
指定 VolumeSnapshot 的部分更新状态
表 11.18. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 11.19. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshot 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 VolumeSnapshot 的状态
表 11.20. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 11.21. 主体参数
参数类型描述

正文(body)

VolumeSnapshot 模式

 
表 11.22. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshot 模式

201 - Created

VolumeSnapshot 模式

401 - Unauthorized

第 12 章 VolumeSnapshotClass [snapshot.storage.k8s.io/v1]

描述
VolumeSnapshotClass 指定创建卷快照时使用的底层存储系统的参数。通过在 VolumeSnapshot 对象中指定其名称来使用特定的 VolumeSnapshotClass。VolumeSnapshotClasses are non-namespaced
类型
object
必填
  • deletionPolicy
  • driver

12.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

deletionPolicy

string

deletionPolicy 决定在删除绑定 VolumeSnapshot 时,是否应该通过 VolumeSnapshotClass 创建的 VolumeSnapshotContent。支持的值有 "Retain" 和 "Delete"。"恢复"意味着在底层存储系统中保留 VolumeSnapshotContent 及其物理快照。"delete"表示删除底层存储系统上的 VolumeSnapshotContent 及其物理快照。必需。

driver

string

driver 是处理此 VolumeSnapshotClass 的存储驱动程序的名称。必需。

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

parameters

对象(字符串)

参数是带有特定存储驱动程序的参数的键值映射,用于创建快照。这些值对 Kubernetes 不透明。

12.2. API 端点

可用的 API 端点如下:

  • /apis/snapshot.storage.k8s.io/v1/volumesnapshotclasses

    • DELETE: 删除 VolumeSnapshotClass 的集合
    • GET: 列出 VolumeSnapshotClass 类型的对象
    • POST :创建 VolumeSnapshotClass
  • /apis/snapshot.storage.k8s.io/v1/volumesnapshotclasses/{name}

    • DELETE :删除 VolumeSnapshotClass
    • GET :读取指定的 VolumeSnapshotClass
    • PATCH: 部分更新指定的 VolumeSnapshotClass
    • PUT :替换指定的 VolumeSnapshotClass

12.2.1. /apis/snapshot.storage.k8s.io/v1/volumesnapshotclasses

HTTP 方法
DELETE
描述
删除 VolumeSnapshotClass 集合
表 12.1. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 VolumeSnapshotClass 类型的对象
表 12.2. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotClassList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 VolumeSnapshotClass
表 12.3. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 12.4. 主体参数
参数类型描述

正文(body)

VolumeSnapshotClass 模式

 
表 12.5. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotClass 模式

201 - Created

VolumeSnapshotClass 模式

202 - Accepted

VolumeSnapshotClass 模式

401 - Unauthorized

12.2.2. /apis/snapshot.storage.k8s.io/v1/volumesnapshotclasses/{name}

表 12.6. 全局路径参数
参数类型描述

name

string

VolumeSnapshotClass 的名称

HTTP 方法
DELETE
描述
删除 VolumeSnapshotClass
表 12.7. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 12.8. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 VolumeSnapshotClass
表 12.9. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotClass 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 VolumeSnapshotClass
表 12.10. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 12.11. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotClass 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 VolumeSnapshotClass
表 12.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 12.13. 主体参数
参数类型描述

正文(body)

VolumeSnapshotClass 模式

 
表 12.14. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotClass 模式

201 - Created

VolumeSnapshotClass 模式

401 - Unauthorized

第 13 章 VolumeSnapshotContent [snapshot.storage.k8s.io/v1]

描述
VolumeSnapshotContent 代表底层存储系统中的实际 "on-disk" 快照对象
类型
object
必填
  • spec

13.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec 定义底层存储系统创建的 VolumeSnapshotContent 的属性。必需。

status

object

Status 代表快照的当前信息。

13.1.1. .spec

描述
spec 定义底层存储系统创建的 VolumeSnapshotContent 的属性。必需。
类型
object
必填
  • deletionPolicy
  • driver
  • source
  • volumeSnapshotRef
属性类型描述

deletionPolicy

string

deletionPolicy 决定在删除绑定 VolumeSnapshot 时,是否应该删除此 VolumeSnapshotContent 及其物理快照。支持的值有 "Retain" 和 "Delete"。"恢复"意味着在底层存储系统中保留 VolumeSnapshotContent 及其物理快照。"delete"表示删除底层存储系统上的 VolumeSnapshotContent 及其物理快照。对于动态置备的快照,这个字段由 CSI 快照ter sidecar 使用对应的 VolumeSnapshotClass 中定义的 "DeletionPolicy" 字段自动填充。对于预先存在的快照,用户必须在创建 VolumeSnapshotContent 对象时指定此字段。必需。

driver

string

driver 是用于在底层存储系统上创建物理快照的 CSI 驱动程序名称。这必须与该驱动程序的 CSI GetPluginName ()调用返回的名称相同。必需。

source

object

Source 指定快照是(或应该是)动态置备或已存在,只需要 Kubernetes 对象表示。此字段在创建后是不可变的。必需。

sourceVolumeMode

string

SourceVolumeMode 是执行快照的卷的模式。可以是 "Filesystem" 或 "Block"。如果没有指定,这表示源卷的模式未知。此字段不可变。此字段是一个 alpha 字段。

volumeSnapshotClassName

string

创建此快照的 VolumeSnapshotClass 的名称。请注意,在置备后,可以使用不同值集删除或重新创建 VolumeSnapshotClass,因此不应引用 post-snapshot 创建。

volumeSnapshotRef

object

volumeSnapshotRef 指定此 VolumeSnapshotContent 对象绑定到的 VolumeSnapshot 对象。VolumeSnapshot.Spec.VolumeSnapshotContentName 字段必须引用此 VolumeSnapshotContent 的双向绑定名称。对于预先存在的 VolumeSnapshotContent 对象,您必须提供 VolumeSnapshot 对象的名称和命名空间,以便进行绑定。此字段在创建后是不可变的。必需。

13.1.2. .spec.source

描述
Source 指定快照是(或应该是)动态置备或已存在,只需要 Kubernetes 对象表示。此字段在创建后是不可变的。必需。
类型
object
属性类型描述

snapshotHandle

string

snapshotHandle 指定底层存储系统上已存在的快照的 CSI "snapshot_id",其创建 Kubernetes 对象表示(或应该是)。此字段不可变。

volumeHandle

string

volumeHandle 指定从其中动态获取快照的卷的 CSI "volume_id"。此字段不可变。

13.1.3. .spec.volumeSnapshotRef

描述
volumeSnapshotRef 指定此 VolumeSnapshotContent 对象绑定到的 VolumeSnapshot 对象。VolumeSnapshot.Spec.VolumeSnapshotContentName 字段必须引用此 VolumeSnapshotContent 的双向绑定名称。对于预先存在的 VolumeSnapshotContent 对象,您必须提供 VolumeSnapshot 对象的名称和命名空间,以便进行绑定。此字段在创建后是不可变的。必需。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

13.1.4. .status

描述
Status 代表快照的当前信息。
类型
object
属性类型描述

creationTime

整数

creationTime 是底层存储系统执行点快照时的时间戳。在动态快照创建情形中,此字段由 CSI 快照ter sidecar 使用从 CSI "CreateSnapshot" gRPC 调用返回的 "creation_time" 值填充。对于预先存在的快照,此字段将填充从 CSI "ListSnapshots" gRPC 调用返回的 "creation_time" 值(如果驱动程序支持)。如果没有指定,这表示创建时间未知。此字段的格式是 Unix 纳秒时间编码为 int64。在 Unix 上,自 1970-01-01 00:00:00 UTC 起,命令 date +%s%N 返回当前的时间(以纳秒为单位)。

错误

object

error 是快照创建过程中最后观察到的错误(若有)。重试成功后,此错误字段将被清除。

readyToUse

布尔值

readyToUse 表示快照是否准备好用于恢复卷。在动态快照创建案例中,此字段由 CSI 快照ter sidecar 填充,并从 CSI "CreateSnapshot" gRPC 调用返回的 "ready_to_use" 值。对于预先存在的快照,此字段将填充从 CSI "ListSnapshots" gRPC 调用返回的 "ready_to_use" 值(如果驱动程序支持),否则此字段将被设置为 "True"。如果没有指定,这表示快照的就绪状态未知。

restoreSize

整数

restoreSize 代表快照的完整大小,以字节为单位。在动态快照创建情况下,这个字段由 CSI 快照ter sidecar 填充,并带有从 CSI "CreateSnapshot" gRPC 调用返回的 "size_bytes" 值。对于预先存在的快照,如果驱动程序支持,此字段将填充从 CSI "ListSnapshots" gRPC 调用返回的 "size_bytes" 值。当从这个快照恢复卷时,如果指定了 restoreSize,则卷的大小不能小于 restoreSize。如果没有指定,这表示大小未知。

snapshotHandle

string

snapshotHandle 是底层存储系统上快照的 CSI "snapshot_id"。如果没有指定,这表示动态快照创建失败,或者仍在进行中。

volumeGroupSnapshotHandle

string

VolumeGroupSnapshotHandle 是底层存储系统上组快照的 CSI "group_snapshot_id"。

13.1.5. .status.error

描述
error 是快照创建过程中最后观察到的错误(若有)。重试成功后,此错误字段将被清除。
类型
object
属性类型描述

message

string

如果指定,消息是一个字符串,详细描述了快照创建过程中遇到的错误。注意:消息可能已记录,并且不应包含敏感信息。

time

string

时间是遇到错误时的时间戳。

13.2. API 端点

可用的 API 端点如下:

  • /apis/snapshot.storage.k8s.io/v1/volumesnapshotcontents

    • DELETE: 删除 VolumeSnapshotContent 集合
    • GET: 列出 VolumeSnapshotContent 类型的对象
    • POST :创建一个 VolumeSnapshotContent
  • /apis/snapshot.storage.k8s.io/v1/volumesnapshotcontents/{name}

    • DELETE: 删除 VolumeSnapshotContent
    • GET: 读取指定的 VolumeSnapshotContent
    • PATCH: 部分更新指定的 VolumeSnapshotContent
    • PUT :替换指定的 VolumeSnapshotContent
  • /apis/snapshot.storage.k8s.io/v1/volumesnapshotcontents/{name}/status

    • GET :指定 VolumeSnapshotContent 的读取状态
    • PATCH: 部分更新指定 VolumeSnapshotContent 的状态
    • PUT :替换指定 VolumeSnapshotContent 的状态

13.2.1. /apis/snapshot.storage.k8s.io/v1/volumesnapshotcontents

HTTP 方法
DELETE
描述
删除 VolumeSnapshotContent 集合
表 13.1. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 VolumeSnapshotContent 类型的对象
表 13.2. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotContentList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 VolumeSnapshotContent
表 13.3. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 13.4. 主体参数
参数类型描述

正文(body)

VolumeSnapshotContent 模式

 
表 13.5. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotContent 模式

201 - Created

VolumeSnapshotContent 模式

202 - Accepted

VolumeSnapshotContent 模式

401 - Unauthorized

13.2.2. /apis/snapshot.storage.k8s.io/v1/volumesnapshotcontents/{name}

表 13.6. 全局路径参数
参数类型描述

name

string

VolumeSnapshotContent 的名称

HTTP 方法
DELETE
描述
删除 VolumeSnapshotContent
表 13.7. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

表 13.8. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 VolumeSnapshotContent
表 13.9. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotContent 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 VolumeSnapshotContent
表 13.10. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 13.11. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotContent 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 VolumeSnapshotContent
表 13.12. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 13.13. 主体参数
参数类型描述

正文(body)

VolumeSnapshotContent 模式

 
表 13.14. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotContent 模式

201 - Created

VolumeSnapshotContent 模式

401 - Unauthorized

13.2.3. /apis/snapshot.storage.k8s.io/v1/volumesnapshotcontents/{name}/status

表 13.15. 全局路径参数
参数类型描述

name

string

VolumeSnapshotContent 的名称

HTTP 方法
GET
描述
指定 VolumeSnapshotContent 的读取状态
表 13.16. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotContent 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 VolumeSnapshotContent 的状态
表 13.17. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 13.18. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotContent 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 VolumeSnapshotContent 的状态
表 13.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 13.20. 主体参数
参数类型描述

正文(body)

VolumeSnapshotContent 模式

 
表 13.21. HTTP 响应
HTTP 代码响应正文

200 - OK

VolumeSnapshotContent 模式

201 - Created

VolumeSnapshotContent 模式

401 - Unauthorized

Legal Notice

Copyright © 2024 Red Hat, Inc.

OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).

Modified versions must remove all Red Hat trademarks.

Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.

Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.

Linux® is the registered trademark of Linus Torvalds in the United States and other countries.

Java® is a registered trademark of Oracle and/or its affiliates.

XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.

All other trademarks are the property of their respective owners.

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.