[英]How do I prevent independent jobs (which run to completion) from being evicted by the scheduler/autoscaler?
我有一個K8s集群,它運行獨立的工作(每個工作有一個pod),我希望它們能夠運行完成。 但是,調度程序有時會在不同的節點上重新安排它們。 我的工作需要單獨運行,並且在不同的節點上重新啟動它們對我來說不是一個可接受的結果。
我正在研究Pod中斷預算(PDB),但據我所知,他們的選擇器適用於pod的標簽。 由於我的每個工作都不同並且有一個單獨的標簽,我如何使用PDB告訴K8s我的所有 pod的maxUnavailable都是0?
我也使用過這個注釋
"cluster-autoscaler.kubernetes.io/safe-to-evict": false
但這並不影響資源壓力下的pod驅逐。
理想情況下,我應該告訴K8s,除非他們完成,否則我的任何Pod都不應被驅逐。
您應指定資源,以使您的工作成為有保證的服務質量:
resources:
limits:
memory: "200Mi"
cpu: "700m"
requests:
memory: "200Mi"
cpu: "700m"
請求應該等於限制 - 然后你的pod將變得有保證,並且不再被驅逐。
閱讀更多: https : //kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.