通过各自的Zuul网关连接多个Eureka网络

时间:2018-01-10 00:37:33

标签: spring-boot spring-cloud netflix-eureka netflix-zuul spring-cloud-netflix

我有一组使用Spring Boot构建的微服务,每个微服务都注册到Eureka实例。我还有一个Zuul网关,它为进入我的微服务的外部请求提供身份验证/授权层。外部消费者不允许直接使用我的微服务,必须通过Zuul。让我们假设我的微服务处理一个名为" Consumer Banking Channel"的分组业务域。

现在,在我的组织的其他地方还有另一个名为"客户关系"的分组域,他们已经构建了另一个基于Eureka的微服务网络,并且还配置了Zuul来处理身份验证/授权。

我们希望消费彼此公开的API服务,并希望利用服务发现来实现这一目标。但是,出于安全原因,我们不希望允许直接访问我们的微服务,只希望允许其他组通过我们各自的Zuuls访问我们的服务。

如何实现这一目标?

我想到的一种可能方式是使用Spring Cloud Sidecar将另一组Zuul注册到我们的Eureka,但随着组织中不同Eureka网络数量的增加,这种方法并没有真正扩展(如果我们在组织中有10个Eureka网络,我们最终必须为每个组运行9个侧面车,总共多达90个JVM,仅用于侧车)。

如果我们将身份验证/授权层向下移动到单个微服务并创建一个大的单一Eureka网络,那将会成为组织中不同部门的Zuul的巨大整体,如何最优化地配置Zuul,也不是理想的。 / p>

0 个答案:

没有答案