如何在春季启动时为每个尤里卡应用程序安装一个涡轮机集群?

时间:2017-03-14 16:45:17

标签: spring spring-boot netflix-eureka turbine

我正试图从我的eureka服务器获得涡轮机集群的“自动配置”。

在eureka服务器上注册我已经配置了3个应用程序:app1,app2,app3。 在尤里卡服务器上注册的还有一个zuul代理和一个涡轮监视器。

我可以通过zuul正确访问这三个应用程序,我可以正确查看每个应用程序的所有hystrix.stream。

我已将单个涡轮机群集配置为“默认”,我可以从仪表板上看到所有三个应用程序的合并涡轮流(和仪表板),没有问题。

我的涡轮机application.properties看起来像这样:

eureka.client.serviceUrl.defaultZone=http://localhost:33210/eureka/
turbine.app-config=app1,app2,app3
turbine.cluster-name-expression=new String("default")

我似乎无法区分涡轮机流,以避免混搭仪表板中三个应用程序之间的所有hystrix命令。

我希望得到的结果是

的可能性
/turbine.stream?cluster=app1
/turbine.stream?cluster=app2
/turbine.stream?cluster=app3

其中cluster与每个应用程序的eureka名称匹配,并获得三个不同的仪表板。我在文档中认为,通过cluster-name-expression删除默认值是appName而不是静态'default',但它不会发生。

我出错了什么?

2 个答案:

答案 0 :(得分:0)

属性名称应该像

turbine.clusterNameExpression= new String("default")

为每个流设置不同的集群...假设您甚至在eureka中的每个服务上启用了不同的管理端口,即51511和51521用于服务端点,51512和51522用于管理端点。

turbine.instanceInsertPort=false
turbine.appConfig=service1,service2
turbine.aggregator.clusterConfig=SERVICE1,SERVICE2
turbine.instanceUrlSuffix.SERVICE1=:51512/hystrix.stream
turbine.instanceUrlSuffix.SERVICE2=:51522/hystrix.stream

答案 1 :(得分:0)

turbine.clusterNameExpression= new String("default")

这对我有效。 我只换了 turbine.cluster-name-expression='dafault'  上面的内容对我来说就像一个奇迹。