我们有一个在Amazon EC2实例上运行的Apache Web服务器后面运行的J2EE应用程序(Wildfly(。我们计划使用Docker Images将其迁移到Kubernetes(EKS(平台。但是,我们对最佳实践感到好奇。我们应该在其中运行Web和App Server,在其内部使用Web和App Server创建一个Docker容器,或者是否有创建单独的图像来容纳Web服务器和另一个包含App Server的优势?
每个主进程创建一个容器。一个用于Web服务器,一个用于App Server。
如果容器始终具有一对一的关系并且需要一起运行,则可以在同一吊舱中安排容器(或如提到的@sfgroup,Ingress Controller可能会照顾您的Web服务器需求(。/p>
kubernetes是一个工作负载调度程序,并且从了解其运行的流程状态中受益。要在容器中运行多个进程,您需要添加一层流程管理,通常从脚本中的背景开始使用./app &
,遇到问题,然后遇到某种类型的init
系统,例如S6
container-runtime c-r c-r
| | |
init VS web app
/
web app
如果您开始在Kubernetes和正在管理的过程之间添加过程管理层,则州Kubernetes可以检测到开始变得模糊。
当网络下降但应用程序启动时会发生什么?您如何从两个过程中管理日志?当初始化保持不变时,如何调试失败的过程,而Kubernetes认为一切都很好。有很多事情开始成为自定义解决方案,而不是使用Kubernetes已经提供的功能。