kubernetes Kubeflow管道崩溃,因为“argoexec wait”容器被OOMKilled

im9ewurl  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(1)|浏览(115)

我有一个Kubeflow管道,它的第一步除了下载一个文件之外什么也不做。此步骤始终会因内存不足错误而崩溃:
此步骤处于错误状态,并显示以下消息:OOMKilled(退出代码137)
为了获得保证的QoS,我将内存限制和请求设置为4G,将CPU限制和请求设置为1。但是,这只是“主”容器。pod也有 initwait 容器。它们运行argoexec initargoexec wait命令并请求以下资源:

limits:
  cpu: 500m
  memory: 512Mi
requests:
  cpu: 10m
  memory: 32Mi

字符串
令我惊讶的是,当我在Google Cloud控制台中查看pod时,它是已被OOMKilled的 wait 容器。有没有可能为 wait 容器设置资源限制和请求,或者有没有其他方法来解决这个问题?

fzwojiic

fzwojiic1#

我想我找到了OOM错误的原因。组件将下载的文件保存为输出工件。argoexec wait可能在组件完成后运行,并处理与将输出工件传递到下一个管道步骤相关的事情。问题是下一个组件试图使用工件的值,而不是它的路径。在使用下载组件输出的组件的YAML规范中,我将inputValue替换为inputPath后,错误消失了。

相关问题