有什么方法可以在kubernetes中为pod或新pod添加ENV吗



总结问题:有什么方法可以在kubernetes中为pod或新pod添加ENV吗?例如,我想将HTTP_PROXY添加到许多pods以及它将在kubeflow 1.4中生成的新pods中。所以这些吊舱可以接入互联网。

描述您尝试过的内容:我搜索了一下,发现istio可能会这么做,但对我来说太复杂了。其次,kubeflow中有太多的yaml,因为我无法逐一修改它们以使用configmap或仅在其中添加ENV。

所以有人有一个很好的方法来做这件事吗?就像在kubernetes配置中这样做。

使用"PodPreseet";对象向所有匹配的pod注入公共环境变量和其他参数。

请遵循以下文章https://v1-19.docs.kubernetes.io/docs/tasks/inject-data-application/podpreset/

如果PodPreseet确实从v1.20中删除了,那么您似乎需要一个webhook。

您必须在集群中运行一个额外的服务,该服务将更改pod的配置。

这里有一个例子,在这个例子的基础上,我创建了我的webhook,它改变了集群中pod的配置。在这个例子中,开发人员使用了向pod添加sidecar的逻辑,但你可以设置自己的来转发所需的ENV:

https://github.com/morvencao/kube-mutating-webhook-tutorial/blob/master/medium-article.md

最新更新