簡體   English   中英

EKS pod 根據節點 CPU 利用率調度

[英]EKS pod schedule according to the node CPU utilization

我想知道是否有根據節點 CPU 利用率來安排 pod 的方法。 我們在 eks 中的大多數 pod 都安排在單個節點上,即使 rest 個節點還有很多 CPU 剩余。 我們的 cron-jobs 正試圖在同一節點中啟動新的 pod,但由於 CPU 不足而無法啟動。 我相信默認的 kube 調度程序應該會處理這個問題,但在我們的案例中並沒有發生。

那么,是否有將 pod 設置為根據 CPU 利用率進行調度的選項,或者我們是否可以通過節點選擇器/親和力/資源請求和限制等調度策略來實現這一點,

提前致謝!

調度程序依賴於為 pod 設置的 CPU 請求,而不是 CPU 使用率。

您需要設置足夠高的 CPU 請求,以便調度程序知道已經包含 pod 的節點不夠用,並將其調度到另一個能夠托管它的節點上。

編輯:

如果你絕對想將你的 pod 分布在不同的節點上,你可以使用topology-spread-constraint

topologySpreadConstraints: 
- maxSkew: 1 
   topologyKey: kubernetes.io/hostname 
   whenUnsatisfiable: ScheduleAnyway 
   labelSelector: 
     matchLabels:
       app: myApp

注意:使用ScheduleAnyway配置,調度程序將優先傳播 pod,如果不可能,它會安排它們。 你也可以通過設置DoNotSchedule來選擇不讓他

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM