Spring boot 如何访问google Kubernetes中部署的多个服务(Spring boot app)?
我创建了2个简单的spring boot应用程序,并通过引用以下链接在Google Kubernetes中使用docker容器进行部署: 现在,当我运行Spring boot 如何访问google Kubernetes中部署的多个服务(Spring boot app)?,spring-boot,kubernetes,google-kubernetes-engine,Spring Boot,Kubernetes,Google Kubernetes Engine,我创建了2个简单的spring boot应用程序,并通过引用以下链接在Google Kubernetes中使用docker容器进行部署: 现在,当我运行kubectl get services时,我可以看到列出了2个服务(Spring boot应用程序) 我知道使用expose可以为服务保留静态IP!但我需要的是**我需要使用单个IP访问两个服务**(类似于路由),这样最终用户只需要知道多个服务的一个IP地址!我怎样才能做到这一点?我对这个很陌生!请帮忙 使用相同的IP地址公开访问您的服务的最
kubectl get services
时,我可以看到列出了2个服务(Spring boot应用程序)
我知道使用expose可以为服务保留静态IP!但我需要的是**我需要使用单个IP访问两个服务**(类似于路由),这样最终用户只需要知道多个服务的一个IP地址!我怎样才能做到这一点?我对这个很陌生!请帮忙 使用相同的IP地址公开访问您的服务的最简单方法是使用
ingress controller
和ingress
资源。这将允许您使用基于dns的主机名和/或路径匹配来单独访问每个服务
我有一个易于使用的初学者存储库,我建议您开始使用它。只需运行以下命令:
安装入口控制器:
$ git clone https://github.com/mateothegreat/k8-byexamples-ingress-controller
$ cd k8-byexamples-ingress-controller
$ git submodule update --init
$ make install LOADBALANCER_IP=<your static ip here>
您可以根据需要多次重复最后一步。有关更多信息,请访问。您可以使用GCE入口资源,以便两个服务都用作后端 正如Patrick在上面的评论中提到的,将两个服务转换为type:NodePort而不是LB。验证是否分配了节点端口
kubectl获取服务网站
然后使用2个主机路径创建入口
以下内容将帮助您入门:LOADBALANCER\u IP=这里我应该授予静态IP权限?但我有2个spring boot应用程序作为服务,每个都有静态IP,我应该拥有哪些IP?应用程序的行为类似于RESTAPI。我只有IP没有DNS名称,所以我应该在HOST=“?”中给出什么?好的,在这种情况下,只需将服务的类型设置为
type:LoadBalancer
$ make issue HOST=<your dns hostname> SERVICE_NAME=<your service> SERVICE_PORT=<the service port>