0

我目前正在尝试在我刚刚加入的项目中在 Kubernetes 中创建工作。

该作业应该等到另外 2 个 pod 启动并运行,然后运行​​.sh脚本为应用程序中的测试人员创建一些数据。

我发现我应该使用initContainers。但是,有一点我不明白。

为什么我应该在作业描述.yaml文件的initContainers下的env标签下包含一些环境值?

我以为我只是在等待 Pod 被初始化,而不是再次创建它们。我错过了什么吗?

提前致谢。

4

1 回答 1

2

initContainers就像在 Pod 中运行的容器,但在 spec key 中定义的容器之前containers执行。

容器一样,它们共享一些命名空间和IPC,所以这意味着调度器会检查声明的initContainers是否成功,然后调度容器。

请记住,当您创建 Pod 时,基本上,您正在创建一个名为的空容器pause,该容器将为以下容器提供命名空间基础:因此,最后,initContainer并没有真正再次创建新 Pod,例如顾名思义,它是一个初始化器。

于 2019-09-05T18:05:25.207 回答