繁体   English   中英

容器中的短暂kubernetes容器(/ sidekick)(在复制控制器中)

[英]Short lived kubernetes container (/sidekick) in a pod (in a Replication Controller)

我有一个包含两个容器的ReplicationController,第一个是一个长寿命的pod,第二个是在RC启动一个POD时做一些维护任务。 但是,由于第二个容器是短暂的,它在完成启动任务时会自行停止。 当Kuberbetes注意到这一点时,它会杀掉POD并开始新的...

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

正如您已经注意到的那样,通过设计,容器中的所有容器都注定要一起生存和死亡。 如果不知道你的伙伴需要执行什么样的维护任务,那就很难说出你最好的选择。 一般来说,我可以想到三种方法:

  1. 保持维护容器正常运行。 这可能是一个相当丑陋的解决方案,因为它浪费资源。 如果维护任务可以定期运行,那么这才有意义。

  2. 将维护任务移至主容器,有效地将多容器窗格转换为单容器窗格。 我假设您可以异步运行任务(因为您已经可以在单独的容器中运行它); 如果由于某些原因,您不能,请考虑相应地修改准备情况和活跃度探测 ,以便您的容器有足够的时间完成任何启动程序,然后才有资格终止。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM