Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web applications 如何在Kubernetes上部署microservices web应用程序?_Web Applications_Kubernetes_Microservices_Kubernetes Ingress - Fatal编程技术网

Web applications 如何在Kubernetes上部署microservices web应用程序?

Web applications 如何在Kubernetes上部署microservices web应用程序?,web-applications,kubernetes,microservices,kubernetes-ingress,Web Applications,Kubernetes,Microservices,Kubernetes Ingress,我想使用Angular和microservices后端创建一个web应用程序,为RESTAPI提供服务。然后我想把所有的东西都部署到库伯内特斯上 假设应用程序将提供一些饮料(咖啡和茶)。为了简化,我们假设应用程序是完全无状态的,我想要2个微服务 如果没有库伯内特斯,我会这样做: Coffea服务-rest API for/API/Coffea端点 Tea服务-rest API for/API/Tea端点 Nginx-带有Angular应用程序(HTML/CSS/JS/images等)和网关(代理

我想使用Angular和microservices后端创建一个web应用程序,为RESTAPI提供服务。然后我想把所有的东西都部署到库伯内特斯上

假设应用程序将提供一些饮料(咖啡和茶)。为了简化,我们假设应用程序是完全无状态的,我想要2个微服务

如果没有库伯内特斯,我会这样做:

  • Coffea服务-rest API for/API/Coffea端点

  • Tea服务-rest API for/API/Tea端点

  • Nginx-带有Angular应用程序(HTML/CSS/JS/images等)和网关(代理/api/coffea和/api/tea端点)的静态内容

  • 现在的问题是如何在Kubernetes中反映这一点?只需在多个副本中部署所有内容,然后将Coffa和Tea服务作为节点端口公开,最后将Nginx作为负载平衡器公开,就足够了吗?这是正确的方法吗?我应该使用Ingress而不是制作自己的nginx代理吗?如果是,那么如何使用入口控制器提供静态内容

    提前谢谢

    只需在多个副本中部署所有内容就足够了吗, 然后将咖啡和茶服务作为节点端口公开,最后公开 Nginx作为负载均衡器

    也许是的,这足以让您的应用程序正常工作,但最好的方法是将您的服务与集群IP一起使用,并通过入口将其公开。因为Ingress适合路由,但不适合服务静态内容,所以您可以将Nginx用作仅用于静态内容的web服务器。你的应用程序看起来像隐藏在入口后面的3个服务:

  • 具有集群IP的Coffa服务
  • 具有集群IP的Tea服务
  • 使用群集IP作为静态内容的web服务器的Nginx服务

  • 这是一个很好的答案,为什么使用Nginx作为静态内容服务更好。

    我明白了。我一直认为入口是一个传统的web服务器(静态内容+API网关)。我花了很多时间在谷歌上搜索如何以这种方式使用入口。现在我明白了,我的想法是错误的。谢谢你的澄清