gpt4 book ai didi

docker - pod 中(在复制 Controller 中)的短期 kubernetes 容器 (/sidekick)

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

我有一个 ReplicationController,在 pod 中包含两个容器,第一个是长期存在的 pod,第二个在 RC 启动 POD 时执行一些维护任务。然而,由于第二个容器的生命周期很短,因此当它完成启动任务时它会自行停止。当 Kuberbetes 注意到这一点时,它会杀死 POD 并启动一个新的 POD...

在 Kuberbetes 中处理此问题的正确方法是什么?

最佳答案

正如您已经注意到的,根据设计,pod 中的所有容器注定会一起生存和消亡。如果不知道您的助手需要准确执行哪种维护任务,则很难判断您的最佳选择是什么。一般来说,我可以想到三种方法:

  1. 保持维护容器运行。这可能是一个相当丑陋的解决方案,因为它浪费资源。只有当维护任务可以从定期运行中受益时,这才有意义。

  2. 将维护任务移至主容器,有效地将多容器 Pod 转换为单容器 Pod。我假设您可以异步运行该任务(因为您已经能够在单独的容器中运行它);如果由于某些原因不能,请考虑修改 readiness and liveness probes相应地,以便您的容器在有资格终止之前有足够的时间完成所有启动过程。

  3. 考虑调整您的设计,以便维护任务可以作为单独的 Pod 运行(或者甚至可以作为 job )运行。然后,您需要管理所有依赖项并通过正确组合 Kubernetes 原语来自行连接。

关于docker - pod 中(在复制 Controller 中)的短期 kubernetes 容器 (/sidekick),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37256645/

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