gpt4 book ai didi

kubernetes - 每次部署只运行一次初始化容器

转载 作者:行者123 更新时间:2023-12-02 11:32:11 27 4
gpt4 key购买 nike

我在部署中使用 initContainers。为每个 Pod 创建一个 init 容器。

是否可以为整个部署只获得一个 init 容器?

编辑:

用例:需要在创建 pod 之前运行一些数据库迁移命令。所以我将这些命令放在 init pods 中。

问题:
- 每次创建 pod 时,都会创建 init 容器
- 在按比例增加初始化容器时创建

解决方案:
我终于在 this article 中找到了解决这个问题的好例子

最佳答案

虽然不可能让整个部署共享一个 init 容器(根据定义,这是不可能的,因为 kube 中的工作负载调度单元是一个 pod),但您可以使用一些东西来轻松获得类似的功能。

实现这一点的一种方法是在每个 pod 上都有一个 init 容器,等待特定作业的成功执行,以及一个执行实际 init 逻辑的作业。

另一种方法是在您的 init 容器中使用领导者选举,因此只有一个执行,其余的只是在成功退出之前等待锁被释放。

关于kubernetes - 每次部署只运行一次初始化容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61031713/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com