【发布时间】:2021-05-28 23:31:47
【问题描述】:
我正在使用 Argo 和 KFServing 以及 Amazon EKS (Kubernetes) 设置 InferenceService。重要的是要知道我们的团队每个环境都有一个 EKS 集群,这意味着我们的集群中可能有多个我们无法控制的应用程序。
这是我们目前的设置
- 我们将 Docker 映像推送到 Amazon ECR,其中包含我们训练和部署模型的逻辑
- 我们使用
argo提交工作流,在#1 中开始训练。将 argo 安装到我们的 Kubernetes 集群时,我们注意到它的组件有时会分配给 GPU 节点。 - 我们也在使用KFServing。 KFServing 允许我们向上和向下自动缩放 GPU,特别是在不使用时缩放为零。在将 KFServing 中的组件应用到我们的集群时,它们也会被分配给 GPU 节点。
我们为#2 和#3(上图)设置的当前设置似乎阻止了 KFServing 缩小到零的能力。让我们担心的是,在 GPU 中拥有这些组件不会让 GPU 缩小。
哪些 pod 需要分配给我们的 GPU 节点?
(选项 1)我们是否只需要分配我们的 argo 工作流 pod 并排斥其余部分?
-- 或者--
(选项 2)GPU 节点内是否需要其他 kfserving 组件才能正常工作?
-
选项 1:除 argo 工作流 pod 之外,我们如何阻止所有 pod 进入我们的 GPU 节点? 提醒一下,我们还有其他无法控制的应用程序,因此添加节点关联因为每个 pod 似乎都不现实。
-
选项 2:当这些 GPU 节点中有 kfserving 组件时,GPU 节点如何缩放到零? 我的印象是缩小意味着节点中没有 pod。 p>
【问题讨论】:
标签: kubernetes gpu amazon-eks kubeflow argo-workflows