Từ doc mùa xuân, tôi thấy chúng ta có thể ngang hàng eureka máy chủ với nhau, như vậy cho Eureka1, trong application.yml, tôi có thể có:Làm thế nào để cấu hình nhiều máy chủ Eureka từ khách hàng trong mùa xuân đám mây
spring:
profiles: peer1
eureka:
instance:
hostname: peer1
client:
serviceUrl:
defaultZone: http://peer2/eureka/
Và trong Eureka Server 2, tôi có thể có:
spring:
profiles: peer2
eureka:
instance:
hostname: peer2
client:
serviceUrl:
defaultZone: http://peer1/eureka/
Bây giờ hai máy chủ eureka này đã biết nhau, điều đó là tốt. NHƯNG, bây giờ trong việc cấu hình máy khách, khi họ đăng ký lại Eureka, làm thế nào để làm điều này?
Trong ứng dụng khách hàng của tôi, tôi có:
eureka:
instance:
hostname: ${host.instance.name:localhost}
nonSecurePort: ${host.instance.port:8080}
leaseRenewalIntervalInSeconds: 5 #default is 30, recommended to keep default
metadataMap:
instanceId: ${spring.application.name}:${spring.application.instance_id:${random.value}}
client:
serviceUrl:
defaultZone: http://(eurekaServerHost):8761/eureka/
server:
port: ${host.instance.port:8080}
Vì vậy, bây giờ câu hỏi của tôi là tôi sẽ sử dụng peer1 hoặc peer2 như EurekaServerHost trong application.yml khách hàng?
Cảm ơn
Điều này không hoạt động đối với trường hợp của tôi. Tôi đang đặt vài máy chủ Eureka làm danh sách được phân cách bằng dấu phẩy trong ứng dụng khách eureka. Tuy nhiên nó chỉ đăng ký với cái đầu tiên trong danh sách. Hãy giúp tôi. – Khuzi
từ https://github.com/Netflix/eureka/wiki/Understanding-Eureka-Peer-to-Peer-Communication "Khi máy chủ bắt đầu nhận lưu lượng truy cập, tất cả các thao tác được thực hiện trên máy chủ sẽ được nhân rộng thành tất cả các nút đồng đẳng mà máy chủ biết. Nếu một thao tác không thành công vì lý do nào đó, thông tin được hòa giải vào nhịp tim tiếp theo cũng được sao chép giữa các máy chủ. " – pshirishreddy