Kubernetes v1.33:用於動態製備的節點儲存容量評分(Alpha)
Kubernetes v1.33 引入了一個名為 StorageCapacityScoring
的新 alpha 功能。此功能為 Pod 排程添加了一種評分方法,並結合了拓撲感知卷製備。此功能有助於將 Pod 排程到具有最多或最少可用儲存容量的節點上。
關於此功能
此功能擴充套件了 kube-scheduler 的 VolumeBinding 外掛,以便使用從儲存容量獲取的節點儲存容量資訊進行評分。目前,你只能過濾掉儲存容量不足的節點。因此,你必須使用排程器擴充套件程式來實現基於儲存容量的 Pod 排程。
此功能對於製備節點本地 PV 非常有用,這些 PV 的大小受限於節點的儲存容量。透過使用此功能,你可以將 PV 分配給具有最多可用儲存空間的節點,以便以後可以儘可能地擴充套件 PV。
在另一個用例中,你可能希望透過選擇儲存容量最少的節點來儘可能減少節點數量,以降低雲環境中的運營成本。此功能有助於最大化資源利用率,透過從利用率最高的節點開始,更順序地填滿節點,前提是這些節點仍有足夠的儲存容量來滿足所請求的卷大小。
如何使用
啟用該特性
在 alpha 階段,StorageCapacityScoring
預設是停用的。要使用此功能,請將 StorageCapacityScoring=true
新增到 kube-scheduler 命令列選項 --feature-gates
中。
配置變更
你可以使用 VolumeBinding 外掛配置中的 shape
引數來根據儲存利用率配置節點優先順序。這允許你優先選擇具有較高可用儲存容量的節點(預設),或者相反,優先選擇具有較低可用儲存容量的節點。例如,要優先選擇較低可用儲存容量的節點,請按如下方式配置 KubeSchedulerConfiguration
apiVersion: kubescheduler.config.k8s.io/v1
kind: KubeSchedulerConfiguration
profiles:
...
pluginConfig:
- name: VolumeBinding
args:
...
shape:
- utilization: 0
score: 0
- utilization: 100
score: 10
有關更多詳細資訊,請參閱文件。
進一步閱讀
補充說明:與 VolumeCapacityPriority 的關係
alpha 功能門控 VolumeCapacityPriority
將被棄用並由 StorageCapacityScoring
取代,前者在靜態製備期間根據可用儲存容量對節點進行評分。
請注意,雖然 VolumeCapacityPriority
預設優先選擇可用儲存容量較低的節點,但 StorageCapacityScoring
預設優先選擇可用儲存容量較高的節點。