将多个容器放在一个容器中的好处是什么?

Dil*_*lon 3 openshift docker openshift-enterprise

与独立容器相比,在吊舱中拥有多个容器有什么好处?

小智 9

除了指出的几点之外,CPU 和内存(在技术预览中)与 POD 相关联,因此如果我们在 POD 中只有一个容器,则很容易理解和实现 POD 内部的应用程序资源需求,内部有多个容器当我们想要进行水平缩放时我们可能面临的问题/挑战的 POD

其次,部署(Blue/Green、Canary、A/B)也更符合单容器/POD 的方法


Dav*_*aze 8

如果您在同一吊舱中有多个容器,它们可以彼此通话localhost并可以共享已安装的卷。

如果每个容器有多个吊舱,则可以重新启动一个而不用重新启动另一个。假设它们由部署控制,则可以添加其中一个的其他副本,而不必扩展其他副本。如果其中一个的版本或其他特征发生更改,则不必强制重新启动另一个。您需要设置一种服务,以便彼此通信,并且它们无法通过文件系统进行通信。

我经常看到的一般方法是,在部署中,每个吊舱中始终有一个容器,除非您有特殊的理由需要一个额外的容器。通常,这是某种专用的“ sidecar”,它与凭证服务进行对话,管理日志记录,运行网络代理,或者是pod所做的主要工作之外的其他事情(并且不是pod中的单独服务)本身的权利)。

  • @AlexejMagura 是的,你可以。在部署配置的 .spec.template.spec.containers 部分中,您可以列出多个容器。 (2认同)

Wil*_*don 5

来自Kubernetes 文档

一个 Pod 可能封装一个应用程序,该应用程序由多个紧密耦合且需要共享资源的位于同一位置的容器组成。这些位于同一位置的容器可能形成一个单一的内聚服务单元——一个容器从共享卷向公众提供文件,而一个单独的“边车”容器刷新或更新这些文件。Pod 将这些容器和存储资源包装在一起作为一个可管理的实体。