CSINode
apiVersion: storage.k8s.io/v1
import "k8s.io/api/storage/v1"
CSINode
CSINode 包含節點上所有 CSI 驅動程式的資訊。CSI 驅動程式不需要直接建立 CSINode 物件。只要它們使用 node-driver-registrar 邊車容器,kubelet 就會在 kubelet 外掛註冊過程中自動為 CSI 驅動程式填充 CSINode 物件。CSINode 與節點具有相同的名稱。如果該物件缺失,則表示節點上沒有可用的 CSI 驅動程式,或者 Kubelet 版本太低以至於它不會建立此物件。CSINode 具有指向相應節點物件的 OwnerReference。
apiVersion: storage.k8s.io/v1
kind: CSINode
metadata (ObjectMeta)
標準物件的元資料。metadata.name 必須是 Kubernetes 節點名稱。
spec (CSINodeSpec), 必填
spec 是 CSINode 的規範
CSINodeSpec
CSINodeSpec 包含節點上所有 CSI 驅動程式規範的資訊
drivers ([]CSINodeDriver), 必填
補丁策略:根據鍵
name
合併對映:在合併過程中將保留鍵名上的唯一值
drivers 是節點上所有 CSI 驅動程式資訊的列表。如果列表中的所有驅動程式都已解除安裝,此列表可以為空。
CSINodeDriver 包含節點上安裝的一個 CSI 驅動程式的規範資訊
drivers.name (string), 必填
name 表示此物件引用的 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)
count 表示 CSI 驅動程式管理的唯一卷在節點上可使用的最大數量。在一個節點上同時附加和掛載的卷被視為使用一次,而不是兩次。對於在同一節點上由多個 Pod 共享的唯一卷,也適用相同的規則。如果未指定此欄位,則此節點上支援的卷數量是無限的。
drivers.topologyKeys ([]string)
原子性:在合併期間將被替換
topologyKeys 是驅動程式支援的鍵列表。當驅動程式在叢集上初始化時,它會提供一組它理解的拓撲鍵(例如“company.com/zone”、“company.com/region”)。當驅動程式在節點上初始化時,它會提供相同的拓撲鍵以及對應的值。Kubelet 會將這些拓撲鍵作為標籤公開到其自己的節點物件上。當 Kubernetes 執行拓撲感知供應時,它可以使用此列表來確定應該從節點物件檢索哪些標籤並將其傳回給驅動程式。不同的節點可以使用不同的拓撲鍵。如果驅動程式不支援拓撲,此欄位可以為空。
CSINodeList
CSINodeList 是 CSINode 物件的集合。
apiVersion: storage.k8s.io/v1
kind: CSINodeList
metadata (ListMeta)
標準列表元資料。更多資訊請參見:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
items ([]CSINode), 必填
items 是 CSINode 列表
操作
get
讀取指定的 CSINode
HTTP 請求
GET /apis/storage.k8s.io/v1/csinodes/{name}
引數
name (在路徑中): string,必填
CSINode 的名稱
pretty (在查詢中): string
響應
200 (CSINode): 成功
401: 未授權
list
列出或監視 CSINode 型別的物件
HTTP 請求
GET /apis/storage.k8s.io/v1/csinodes
引數
allowWatchBookmarks (在查詢中): boolean
continue (在查詢中): string
fieldSelector (在查詢中): string
labelSelector (在查詢中): string
limit (在查詢中): integer
pretty (在查詢中): string
resourceVersion (在查詢中): string
resourceVersionMatch (在查詢中): string
sendInitialEvents (在查詢中): boolean
timeoutSeconds (在查詢中): integer
watch (在查詢中): boolean
響應
200 (CSINodeList): 成功
401: 未授權
create
建立一個 CSINode
HTTP 請求
POST /apis/storage.k8s.io/v1/csinodes
引數
body: CSINode, 必填
dryRun (在查詢中): string
fieldManager (在查詢中): string
fieldValidation (在查詢中): string
pretty (在查詢中): string
響應
200 (CSINode): 成功
201 (CSINode): 已建立
202 (CSINode): 已接受
401: 未授權
update
替換指定的 CSINode
HTTP 請求
PUT /apis/storage.k8s.io/v1/csinodes/{name}
引數
name (在路徑中): string,必填
CSINode 的名稱
body: CSINode, 必填
dryRun (在查詢中): string
fieldManager (在查詢中): string
fieldValidation (在查詢中): string
pretty (在查詢中): string
響應
200 (CSINode): 成功
201 (CSINode): 已建立
401: 未授權
patch
部分更新指定的 CSINode
HTTP 請求
PATCH /apis/storage.k8s.io/v1/csinodes/{name}
引數
name (在路徑中): string,必填
CSINode 的名稱
body: Patch,必需
dryRun (在查詢中): string
fieldManager (在查詢中): string
fieldValidation (在查詢中): string
force (在查詢中): boolean
pretty (在查詢中): string
響應
200 (CSINode): 成功
201 (CSINode): 已建立
401: 未授權
delete
刪除一個 CSINode
HTTP 請求
DELETE /apis/storage.k8s.io/v1/csinodes/{name}
引數
name (在路徑中): string,必填
CSINode 的名稱
body: DeleteOptions
dryRun (在查詢中): string
gracePeriodSeconds (在查詢中): integer
ignoreStoreReadErrorWithClusterBreakingPotential (在查詢中): boolean
pretty (在查詢中): string
propagationPolicy (在查詢中): string
響應
200 (CSINode): 成功
202 (CSINode): 已接受
401: 未授權
deletecollection
刪除 CSINode 集合
HTTP 請求
DELETE /apis/storage.k8s.io/v1/csinodes
引數
body: DeleteOptions
continue (在查詢中): string
dryRun (在查詢中): string
fieldSelector (在查詢中): string
gracePeriodSeconds (在查詢中): integer
ignoreStoreReadErrorWithClusterBreakingPotential (在查詢中): boolean
labelSelector (在查詢中): string
limit (在查詢中): integer
pretty (在查詢中): string
propagationPolicy (在查詢中): string
resourceVersion (在查詢中): string
resourceVersionMatch (在查詢中): string
sendInitialEvents (在查詢中): boolean
timeoutSeconds (在查詢中): integer
響應
200 (Status): OK
401: 未授權
本頁面是自動生成的。
如果你打算報告此頁面存在的問題,請在問題描述中提及此頁面是自動生成的。修復可能需要在 Kubernetes 專案的其他地方進行。