Example uses the same value of eureka.client.serviceUrl.defaultZone for all peers. The eureka server knows who it is and doesn't attempt to replicate to itself [1], so this simplification will work.

[1]https://github.com/Netflix/eureka/blob/v1.4.10/eureka-core/src/main/java/com/netflix/eureka/registry/PeerAwareInstanceRegistryImpl.java#L616-L619
This commit is contained in:
Will Tran
2016-08-17 12:08:49 -04:00
committed by GitHub
parent cf76ee00f5
commit 4b40a45016

View File

@@ -424,10 +424,37 @@ on a machine that knows its own hostname (it is looked up using
`java.net.InetAddress` by default). `java.net.InetAddress` by default).
You can add multiple peers to a system, and as long as they are all You can add multiple peers to a system, and as long as they are all
connected to each other by at least one edge, they will synchronize directly connected to each other, they will synchronize
the registrations amongst themselves. If the peers are physically the registrations amongst themselves.
separated (inside a data centre or between multiple data centres) then
the system can in principle survive split-brain type failures. .application.yml (Three Peer Aware Eureka Servers)
----
eureka:
client:
serviceUrl:
defaultZone: http://peer1/eureka/,http://peer2/eureka/,http://peer3/eureka/
---
spring:
profiles: peer1
eureka:
instance:
hostname: peer1
---
spring:
profiles: peer2
eureka:
instance:
hostname: peer2
---
spring:
profiles: peer3
eureka:
instance:
hostname: peer3
----
=== Prefer IP Address === Prefer IP Address