这是一个非常基本的问题,但我不知道答案。我有一个应具有三个容器的应用程序-前端,后端和数据库容器。

现在,它们在不同的端口上服务,以从不同的端口请求数据。

所以我读到Pod,它是一个本地网络,容器可以通信。 Nginx可以参加吗?我的理解是,它不像Pod来管理容器之间的通讯。我的理解是,只有nginx才需要满足外部请求,并在一组相同容器的轮询样式中实现负载平衡。

如果有人可以帮助我了解这一点,我将不胜感激。

最佳答案

  • 您可以将FE,BE和DB部署在不同的Pod(不同的部署)中,以分别扩展/管理它们。即使在不同的 namespace 中也更好。
  • 为BE&DB创建一个ClusterIP类型的k8s service。使用k8s DNS解析器访问它们-service-name.namespace.svc.cluster.local
  • 为FE创建一个类型为LoadBalancer或NodePort的k8s service,以将其公开到k8s之外。使用负载均衡器地址或node-ip:node端口访问它。
  • 关于nginx - 我是否需要在Kubernetes容器中使用Nginx容器才能使用Web应用程序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56151232/

    10-16 06:38
    查看更多