CSINode

    apiVersion: storage.k8s.io/v1

    import "k8s.io/api/storage/v1"

    CSINode 包含节点上安装的所有 CSI 驱动有关的信息。CSI 驱动不需要直接创建 CSINode 对象。 只要这些驱动使用 node-driver-registrar 边车容器,kubelet 就会自动为 CSI 驱动填充 CSINode 对象, 作为 kubelet 插件注册操作的一部分。CSINode 的名称与节点名称相同。 如果不存在此对象,则说明该节点上没有可用的 CSI 驱动或 Kubelet 版本太低无法创建该对象。 CSINode 包含指向相应节点对象的 OwnerReference。


    • apiVersion: storage.k8s.io/v1

    • kind: CSINode

    • metadata ()

      metadata.name 必须是 Kubernetes 节点的名称。

    • spec (CSINodeSpec),必需

      spec 是 CSINode 的规约。

    CSINodeSpec 包含一个节点上安装的所有 CSI 驱动规约有关的信息。


    • drivers ([]CSINodeDriver),必需

      补丁策略:按照键 name 合并

      drivers 是节点上存在的所有 CSI 驱动的信息列表。如果列表中的所有驱动均被卸载,则此字段可以为空。

      CSINodeDriver 包含一个节点上安装的一个 CSI 驱动规约有关的信息。

      • drivers.name (string),必需

        这是该对象引用的 CSI 驱动的名称。此字段值必须是针对该驱动由 CSI GetPluginName() 调用返回的相同名称。

    • drivers.nodeID (string),必需

      从驱动角度来看,这是节点的 nodeID。 对于未与节点共享相同命名法的存储系统,此字段使得 Kubernetes 能够与之进行通信。 例如,Kubernetes 可能将给定节点视为 “node1”,但存储系统可以将同一节点视为 “nodeA”。 当 Kubernetes 向存储系统发出一条命令将一个卷挂接到特定的节点时, 它可以藉此字段使用存储系统所理解的 ID 引用节点名称,例如使用 “nodeA” 而不是 “node1”。 此字段是必需的。

    • drivers.allocatable (VolumeNodeResources)

      allocatable 表示一个节点上可供调度的卷资源。此字段处于 beta 阶段。

      VolumeNodeResources 是调度卷时所用的一组资源限制。

      • drivers.allocatable.count (int32)

        这是一个节点上可使用的、由 CSI 驱动管理的独立卷个数的上限。 挂接并挂载到一个节点上的卷被视为被使用一次,不是两次。 相同的规则适用于同一个节点上多个 Pod 之间共享的同一个卷。 如果未指定此字段,则该节点上支持的卷数量是无限的。

    • drivers.topologyKeys ([]string)

      topologyKeys 是驱动支持的键的列表。 在集群上初始化一个驱动时,该驱动将提供一组自己理解的拓扑键 (例如 “company.com/zone”、“company.com/region”)。 在一个节点上初始化一个驱动时,该驱动将提供相同的拓扑键和值。 Kubelet 将在其自己的节点对象上将这些拓扑键暴露为标签。 当 Kubernetes 进行拓扑感知的制备时,可以使用此列表决定应从节点对象中检索哪些标签并传回驱动。 不同的节点可以使用不同的拓扑键。 如果驱动不支持拓扑,则此字段可以为空。

    CSINodeList 是 CSINode 对象的集合。



    HTTP 请求

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

    参数

    • name (路径参数): string,必需

      CSINode 的名称

    • pretty (查询参数): string

      pretty

    响应

    200 (CSINode): OK

    401: Unauthorized

    list 列出或观测类别为 CSINode 的对象

    HTTP 请求

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

    参数

    • allowWatchBookmarks (查询参数): boolean

      allowWatchBookmarks

    • continue (查询参数): string

    • fieldSelector (查询参数): string

      fieldSelector

    • labelSelector (查询参数): string

    • limit (查询参数): integer

    • pretty (查询参数): string

      pretty

    • resourceVersion (查询参数): string

    • resourceVersionMatch (查询参数): string

      resourceVersionMatch

    • timeoutSeconds (查询参数): integer

    • watch (查询参数): boolean

      watch

    响应

    200 (CSINodeList): OK

    401: Unauthorized

    HTTP 请求

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

    参数

    • body: CSINode,必需

    • dryRun (查询参数): string

    • fieldManager (查询参数): string

      fieldManager

    • pretty (查询参数): string

    响应

    200 (): OK

    201 (CSINode): Created

    202 (): Accepted

    401: Unauthorized

    update 替换指定的 CSINode

    HTTP 请求

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

    参数

    • name (路径参数): string,必需

      CSINode 的名称

    • body: ,必需

    • dryRun (查询参数): string

      dryRun

    • fieldManager (查询参数): string

    • fieldValidation (查询参数): string

      fieldValidation

    • pretty (查询参数): string

    响应

    200 (): OK

    201 (CSINode): Created

    401: Unauthorized

    HTTP 请求

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

    参数

    • name (路径参数): string,必需

      CSINode 的名称

    • body: Patch,必需

    • dryRun (查询参数): string

    • fieldManager (查询参数): string

      fieldManager

    • force (查询参数): boolean

      force

    • pretty (查询参数): string

    响应

    200 (): OK

    201 (CSINode): Created

    401: Unauthorized

    删除 CSINode

    HTTP 请求

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

    参数

    • name (路径参数): string,必需

      CSINode 的名称

    • body: DeleteOptions

    • dryRun (查询参数): string

    • gracePeriodSeconds (查询参数): integer

      gracePeriodSeconds

    • pretty (查询参数): string

    • propagationPolicy (查询参数): string

      propagationPolicy

    响应

    200 (CSINode): OK

    202 (): Accepted

    401: Unauthorized

    HTTP 请求

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

    参数

    • body:

    • continue (查询参数): string

      continue

    • dryRun (查询参数): string

    • fieldSelector (查询参数): string

      fieldSelector

    • gracePeriodSeconds (查询参数): integer

    • labelSelector (查询参数): string

      labelSelector

    • limit (查询参数): integer

    • pretty (查询参数): string

      pretty

    • propagationPolicy (查询参数): string

    • resourceVersion (查询参数): string

      resourceVersion

    • timeoutSeconds (查询参数): integer

    响应

    200 (): OK

    401: Unauthorized