首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >裸金属Kubernetes机机群间服务发现

裸金属Kubernetes机机群间服务发现
EN

Stack Overflow用户
提问于 2020-04-15 16:08:55
回答 1查看 185关注 0票数 0

在我的新项目中,我正在探索服务发现的选项。

情况就是这样:我有多台裸金属Kubernetes (Linux)机器,没有云提供商。我有多个Kubernetes集群,在这个例子中,让我们将它们命名为集群-1集群-2

现在假设我有10个微服务(spring ),我想在这两个集群中部署它们。所以这两个集群中的所有10个微服务。

我需要的服务发现机制如下:

如果来自集群-1的微服务ms-1需要调用另一个微服务ms-2,那么如果群集-1<代码>E 216中ms-2处于正常状态,则通信首选项位于同一集群内。但是,如果ms-2在群集-1中没有启动/运行,则来自ms-1 (群集-1)的调用必须转到ms-2 (群集-2)。

这显然必须得到支持,才能在多集群地理网络中发挥作用。

我不能通过本地Kubernetes提供的服务发现机制来实现这一点。

我尝试使用Istio,但发现它只使用原生Kubernetes服务发现机制。所以Istio从照片上出来了。

我决定试用领事,并使用类型NodePort的Kubernetes服务部署我的微服务,希望领事能够解决目标服务的主机和nodePort,包括内部和内部集群。祈祷吧!!

现在我主要有两个问题:

  1. 我是否需要在每个微服务中使用spring云领事,以便与领事交谈并获得主机:目标服务的端口? 我认为Linkerd确实提供了一些功能,通过它,微服务可以与Linkerd进行对话,Linkerd可以与领事进行对话,并代表解决服务问题。 我甚至看到了这个帖子-> https://discourse.linkerd.io/t/linkerd-with-springboot/638 我想知道更多关于如何做到这一点的细节。
  2. 我需要领事吗?Linkerd是否为我的需求提供了一个解决方案?如果是,那么请告诉我怎么做?

谢谢你阅读了一个冗长的问题。我希望我将得到一些迅速和积极的指导,以继续我的项目。

EN

回答 1

Stack Overflow用户

发布于 2020-04-28 22:15:23

听起来你在尝试使用一个服务网格来解决这个问题。如果是的话,领事可以在本地提供它的服务网。您不需要任何额外的软件。

您需要在每个Kubernetes集群中部署领事,并使用万联联合两个环境。一旦集群联合起来,您就可以部署网格网关 (参见教程),以启用集群之间的服务到服务通信。然后在故障转移策略配置中配置L7 service-resolver,以便在本地实例不可用时将通信重新路由到备用集群。

我希望这能帮到你。如果你需要更多的细节,请告诉我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61233388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档