如何允许一个尤里卡服务区域与多个区域通信,而另一个区域中的服务只允许彼此通话

时间:2017-06-14 09:44:08

标签: netflix-eureka

我一直在尝试配置我的eureka客户端/服务器以实现此行为,但无法使其正常工作。

zone0中的

服务只会相互通信,而不会与zone1或zone2进行通信

zone1中的服务将更喜欢彼此交谈,但如果服务不可用但是从不与zone2交谈,也可以与zone0通信

zone2中的服务会更喜欢彼此交谈,但如果服务不可用,也可以与zone0通信,但从不使用zone1

我希望以下客户端配置能够正常工作,我不知道我是否遗漏了某些东西,或者我是否误解了漏洞的事情:)

zone0中的客户

eureka.instance.metadataMap.zone=zone0
eureka.client.zone0.availabilityZones=zone0
eureka.client.serviceUrl.zone0=http://zone0.localdomain/eureka
eureka.client.serviceUrl.defaultZone=http://zone0.localdomain/eureka
eureka.instance.preferIpAddress=true
eureka.client.preferSameZone=true
eureka.client.register-with-eureka=true

zone1中的客户

eureka.instance.metadataMap.zone=zone1
eureka.client.zone1.availabilityZones=zone1,zone0
eureka.client.serviceUrl.defaultZone=http://zone1.localdomain/eureka
eureka.client.serviceUrl.zone1=http://zone1.localdomain/eureka
eureka.client.serviceUrl.zone0=http://zone0.localdomain/eureka
eureka.instance.preferIpAddress=true
eureka.client.preferSameZone=true
eureka.client.register-with-eureka=true

zone2中的客户

eureka.instance.metadataMap.zone=zone2
eureka.client.zone2.availabilityZones=zone2,zone0
eureka.client.serviceUrl.defaultZone=http://zone2.localdomain/eureka
eureka.client.serviceUrl.zone2=http://zone2.localdomain/eureka
eureka.client.serviceUrl.zone0=http://zone0.localdomain/eureka
eureka.instance.preferIpAddress=true
eureka.client.preferSameZone=true
eureka.client.register-with-eureka=true

0 个答案:

没有答案