簡體   English   中英

Kubernetes (GKE/AWS/Azure) 大型作業擴展

[英]Kubernetes (GKE/AWS/Azure) Scaling for Large Jobs

我正在尋找一些建議,如果有人能夠指出我正確的方向,我將永遠感激。

我有一個 docker 容器,用於跨視頻幀集進行基於機器學習的對象檢測/跟蹤。 目前,我使用這個 docker 容器啟動了一個 ec2 實例,然后以串行方式發送大約 30 幀的批次。 當然,這太慢了。

我想建立一個 kubernetes 系統,它可以從零運行容器到 50+,然后立即降低到最低要求。 由於模型大小,每個容器需要大約 8 Gb 的 RAM,但可以在 CPU 上運行。 我需要這些運行大約一分鍾來並行處理傳入的圖像,然后終止,在視頻處理完成后縮小到零活動容器。 總之,將 30 幀的小批量發送到集群,使其大規模擴展,然后在完成后立即縮小。

我能夠在谷歌雲上設置一個 kubernetes 集群,但我不知道如何在作業終止后讓它快速縮小到零。 在工作完成后運行這么多容器將是非常昂貴的。

有人能指出我正確的方向嗎? 我可以用 gke 做到這一點嗎? 我應該嘗試其他服務嗎?

非常感謝您的幫助。

N

如果我已經清楚地理解您的任務,那么您正在尋找的Kubernetes 並行處理 借助 K8S 的這一特性,您可以運行具有多個並行運行的 Pod 的特定作業,並且這些 Pod 在作業完成時終止。

您可以從以下文檔鏈接中閱讀更多內容 -

https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/

https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/

暫無
暫無

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

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