我们在docker中有容器作为最小的单位,我们有pods作为kubernetes中的最小单位。安全的做法是我们应该将一个容器放在一个容器中。所以它是同一个,即pod和容器的行为相同(一个容器中的一个容器)。那么为什么如果要将一个容器放入一个容器中,则创建容器。我们本可以使用容器。
背后采用吊舱,而不是直接的容器的原因是,kubernetes需要更多的信息来协调的容器,如restart policy,liveness probe,readiness probe。A liveness probe定义了pod中的容器是否存活,restart policy定义了容器失败时要做什么。A readiness probe定义容器已准备好开始提供服务。
因此,kubernetes决定在包含所有必要附加信息的容器上编写包装器,而不是将这些属性添加到现有容器中。
此外,Kubernetes支持多容器容器,主要需要sidecar containers主容器的主要日志或数据收集器或代理。多容器pod的另一个优点是它们可以将非常紧密耦合的应用程序容器共享在一起,共享相同的数据,相同的网络命名空间和相同的IPC命名空间,如果他们选择直接使用容器而不使用任何包装器,则这是不可能的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。