RuntimeClass
apiVersion: node.k8s.io/v1
import "k8s.io/api/node/v1"
RuntimeClass
RuntimeClass 定義了叢集支援的容器執行時類別。RuntimeClass 用於確定哪個容器執行時將用於執行 Pod 中的所有容器。RuntimeClasses 由使用者或叢集供應程式手動定義,並在 PodSpec 中引用。Kubelet 負責在執行 Pod 之前解析 RuntimeClassName 引用。更多詳情,請參閱 https://kubernetes.club.tw/docs/concepts/containers/runtime-class/
apiVersion: node.k8s.io/v1
kind: RuntimeClass
metadata (ObjectMeta)
更多資訊:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
handler (string), required
handler 指定了 CRI 實現將使用的底層執行時和配置,用於處理該類別的 Pod。可能的值取決於節點和 CRI 的配置。假定所有 handler 在每個節點上都可用,並且同名 handler 在每個節點上都是等效的。例如,一個名為 "runc" 的 handler 可能指定使用 runc OCI 執行時(使用原生 Linux 容器)來執行 Pod 中的容器。Handler 必須是小寫字母,符合 DNS 標籤 (RFC 1123) 的要求,並且是不可變的。
overhead (Overhead)
overhead 表示給定 RuntimeClass 執行 Pod 所關聯的資源開銷。更多詳情,請參閱 https://kubernetes.club.tw/docs/concepts/scheduling-eviction/pod-overhead/
overhead.podFixed (map[string]Quantity)
podFixed 表示執行 Pod 所關聯的固定資源開銷。
scheduling (Scheduling)
scheduling 包含排程約束,以確保執行此 RuntimeClass 的 Pod 被排程到支援它的節點上。如果 scheduling 為 nil,則假定此 RuntimeClass 被所有節點支援。
Scheduling 指定了支援 RuntimeClass 的節點的排程約束。
scheduling.nodeSelector (map[string]string)
nodeSelector 列出了支援此 RuntimeClass 的節點必須存在的標籤。使用此 RuntimeClass 的 Pod 只能排程到與此選擇器匹配的節點上。RuntimeClass 的 nodeSelector 將與 Pod 現有的 nodeSelector 合併。任何衝突都會導致 Pod 在准入時被拒絕。
scheduling.tolerations ([]Toleration)
原子性:在合併期間將被替換
tolerations 在准入時被附加到執行此 RuntimeClass 的 Pod 上(排除重複項),有效地合併了 Pod 和 RuntimeClass 所容忍的節點集。
附加此 Toleration 的 Pod 容忍任何符合
匹配運算子的 <key,value,effect> 三元組的汙點。 scheduling.tolerations.key (string)
Key 是容忍所適用的汙點鍵。空表示匹配所有汙點鍵。如果鍵為空,operator 必須是 Exists;此組合表示匹配所有值和所有鍵。
scheduling.tolerations.operator (string)
Operator 表示鍵與值的關係。有效運算子是 Exists 和 Equal。預設為 Equal。Exists 等同於值的萬用字元,以便 Pod 可以容忍特定類別的所有汙點。
scheduling.tolerations.value (string)
Value 是容忍匹配的汙點值。如果運算子是 Exists,則值應為空,否則為普通字串。
scheduling.tolerations.effect (string)
Effect 指示匹配的汙點效果。空表示匹配所有汙點效果。指定時,允許的值為 NoSchedule、PreferNoSchedule 和 NoExecute。
scheduling.tolerations.tolerationSeconds (int64)
TolerationSeconds 表示容忍(必須是 NoExecute 效果,否則忽略此欄位)汙點的時間段。預設情況下,它未設定,表示永遠容忍汙點(不驅逐)。零值和負值將被系統視為 0(立即驅逐)。
RuntimeClassList
RuntimeClassList 是 RuntimeClass 物件的列表。
apiVersion: node.k8s.io/v1
kind: RuntimeClassList
metadata (ListMeta)
標準列表元資料。更多資訊:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
items ([]RuntimeClass), required
items 是 schema 物件的列表。
操作
get
讀取指定的 RuntimeClass
HTTP 請求
GET /apis/node.k8s.io/v1/runtimeclasses/{name}
引數
name (在路徑中): string,必填
RuntimeClass 的名稱
pretty (在查詢中): string
響應
200 (RuntimeClass): OK
401: 未授權
list
列出或監視 RuntimeClass 型別的物件
HTTP 請求
GET /apis/node.k8s.io/v1/runtimeclasses
引數
allowWatchBookmarks (在查詢中): boolean
continue (在查詢中): string
fieldSelector (在查詢中): string
labelSelector (在查詢中): string
limit (在查詢中): integer
pretty (在查詢中): string
resourceVersion (在查詢中): string
resourceVersionMatch (在查詢中): string
sendInitialEvents (在查詢中): boolean
timeoutSeconds (在查詢中): integer
watch (在查詢中): boolean
響應
200 (RuntimeClassList): OK
401: 未授權
create
建立一個 RuntimeClass
HTTP 請求
POST /apis/node.k8s.io/v1/runtimeclasses
引數
body: RuntimeClass, required
dryRun (在查詢中): string
fieldManager (在查詢中): string
fieldValidation (在查詢中): string
pretty (在查詢中): string
響應
200 (RuntimeClass): OK
201 (RuntimeClass): Created
202 (RuntimeClass): Accepted
401: 未授權
update
替換指定的 RuntimeClass
HTTP 請求
PUT /apis/node.k8s.io/v1/runtimeclasses/{name}
引數
name (在路徑中): string,必填
RuntimeClass 的名稱
body: RuntimeClass, required
dryRun (在查詢中): string
fieldManager (在查詢中): string
fieldValidation (在查詢中): string
pretty (在查詢中): string
響應
200 (RuntimeClass): OK
201 (RuntimeClass): Created
401: 未授權
patch
部分更新指定的 RuntimeClass
HTTP 請求
PATCH /apis/node.k8s.io/v1/runtimeclasses/{name}
引數
name (在路徑中): string,必填
RuntimeClass 的名稱
body: Patch,必需
dryRun (在查詢中): string
fieldManager (在查詢中): string
fieldValidation (在查詢中): string
force (在查詢中): boolean
pretty (在查詢中): string
響應
200 (RuntimeClass): OK
201 (RuntimeClass): Created
401: 未授權
delete
刪除一個 RuntimeClass
HTTP 請求
DELETE /apis/node.k8s.io/v1/runtimeclasses/{name}
引數
name (在路徑中): string,必填
RuntimeClass 的名稱
body: DeleteOptions
dryRun (在查詢中): string
gracePeriodSeconds (在查詢中): integer
ignoreStoreReadErrorWithClusterBreakingPotential (在查詢中): boolean
pretty (在查詢中): string
propagationPolicy (在查詢中): string
響應
200 (Status): OK
202 (Status): 已接受
401: 未授權
deletecollection
刪除 RuntimeClass 集合
HTTP 請求
DELETE /apis/node.k8s.io/v1/runtimeclasses
引數
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 專案的其他地方進行。