Kubernetes:单个K8s POD可以托管2个或更多K8s服务

时间:2017-10-27 18:15:23

标签: docker kubernetes

我是kubernetes的新手,只是想知道我的问题是否有效。

我有一个问题,如果一个POD可以托管2个或更多服务。

如果它可以托管多个服务,它如何区分服务之间的流量。

是否进行PORT映射。

请告诉我。

2 个答案:

答案 0 :(得分:1)

您可以将多个容器添加到同一个窗格,但只有在服务紧密耦合时才建议使用,例如,如果需要进行通信。例如,如果您有一个Web服务器和一个SQL数据库,您可能希望它们位于同一个pod中。

如果服务不同,您可能希望将它们放在不同的pod中,但将它们部署到同一个节点集群中。然后,您可以在群集上拥有一个LoadBalancer服务,该服务可以将不同的端口或路径路由到右侧pod。通过这种方式,可以单独扩展和管理服务(并且不必担心端口冲突),但它们仍然使用相同的资源池

答案 1 :(得分:0)

  

单个POD可以托管2个或更多服务吗?

我假设,通过服务,您的意思是 Docker容器。如果不是这样,请告诉我。

,单个pod可以托管多个容器。

  

如何区分服务之间的流量。

这就是问题所在。您需要使用端口处理它。在一个端口上公开一个服务,在另一个端口上公开另一个服务。 (如果您希望从同一个pod重新考虑有关您的设计的多个服务/容器,它可能是不同pod的理想候选者)

话虽如此,现在让我们看看最佳实践,

我应该何时在广告连播中使用2个Docker容器

如果您的两个服务(docker容器)紧密耦合,并且当您扩展一个服务时,您需要将另一个服务与前者一起扩展。 (相信我,这种非常罕见的情况)。通常这些被称为侧车。

何时应使用不同的广告连播

如果你想独立地扩展它们中的每一个。

<强>实施例

  • 微服务 - 数据库
  • 微服务 - Redis缓存
  • 边缘服务 - 微服务