[英]Kubernetes dynamic Job scaling
我終於在 kubernetes 池中涉足,並想就解決我遇到的問題的最佳方法獲得一些建議:
我們使用的技術:
我們需要在整個隊列中進行批量處理,並決定采用以下方法:
問題是:
Kubernetes 中的作業是短暫的,不能重復使用。 作業專為運行一次、運行到完成的工作負載而設計。 通常,他們被分配一個特定的任務,即處理單個隊列項目。
但是,如果您想使用單個實例處理工作隊列中的多個項目,那么通常建議改為使用 Deployment 來擴展繼續處理隊列中項目的工作線程池,擴展池工作線程的數量取決於隊列中的項目數。 如果沒有剩余的工作項,那么您可以將部署擴展到 0 個副本,並在有工作要做時進行擴展。
要在 Kubernetes 中創建和控制您的工作負載,最佳實踐是使用 Kubernetes SDK。 雖然您可以使用 SDK 生成 YAML 文件並使用其他工具(如kubectl
進行 shell,但可以簡化配置和錯誤處理,並允許簡化對集群中資源的內省。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.