2015-05-20 25 views
5

Chúng tôi đang chạy ngang hàng với cấu hình Eureka. Xem bên dưới để biết cấu hình.Các phiên bản dịch vụ đăng ký cho cả hai dịch vụ eureka ngang hàng

  1. Vì vậy, khi các dịch vụ được bắt đầu, họ đăng ký để 10.202.10.95 (chính) và chúng ta thấy chúng ở đó với không hiển thị trên 10.202.10.97 (các thứ)
  2. Nếu chúng ta giết 10.202.10.95 (các chính) sau đó chúng ta thấy chúng xuất hiện trên 10.202.10.97 (eureka thứ cấp).
  3. Nếu chúng tôi khởi động lại 10.202.10.95 (là tài khoản chính), chúng tôi thấy các dịch vụ hiển thị trên 10.202.10.95 và cũng trên 10.202.10.97. Vì vậy, dịch vụ này có thể nhìn thấy trên cả hai máy chủ eureka
  4. Nếu chúng ta khởi động lại 10.202.10.97 (các thứ cấp), các dịch vụ biến mất và chỉ có thể nhìn thấy trên chính (10.202.10.95)

Trường hợp 3 là bất ngờ đối với tôi. Đây có phải là trường hợp không đồng đẳng ngang hàng với cấu hình của Eureka không?

Cấu hình eureka là như sau: (chúng tôi chỉ những 2 trường hợp với nhau trong một ngang ngang nhau để cấu hình)

spring: 
    profiles: api06-prod-int-discoveryserver # 10.202.10.95 eureka host 
eureka: 
    client: 
    registerWithEureka: true 
    fetchRegistry: true 
    serviceUrl: 
     defaultZone: http://10.202.10.97:8761/eureka/ 

--- 
spring: 
    profiles: api05-prod-int-discoveryserver # 10.202.10.97 eureka host 
eureka: 
    client: 
    registerWithEureka: true 
    fetchRegistry: true 
    serviceUrl: 
     defaultZone: http://10.202.10.95:8761/eureka/ 

Mỗi dịch vụ có cấu hình của nó để eureka thiết lập như thế này: (chúng tôi chỉ cho cả hai các trường hợp có xxx95 là chính)

eureka: 
    # these are settings for the client that gets services 
    client: 
    # enable these two settings if you want discovery to work 
    registerWithEureka: true 
    fetchRegistry: true 
    serviceUrl: 
     defaultZone: http://10.202.10.95:8761/eureka/,http://10.202.10.97:8761/eureka/ 
+0

Chúng phải được đồng bộ hóa. Đối với tôi trường hợp ba là người duy nhất có ý nghĩa. Những người khác có vẻ như vấn đề. Đồng nghiệp nên luôn biết các dịch vụ đã đăng ký với những người khác. Nó không phải là một cấu hình master/slave. – spencergibb

+0

Ok, đã hiểu, vì vậy tôi sẽ luôn thấy các dịch vụ trên tất cả các đồng nghiệp. Tôi nên đặt nhật ký nào để xem đồng bộ hóa giữa các đồng nghiệp? – EvilJinious1

Trả lời

1

Vì vậy, sau một số bài đăng khác và phản hồi của Spencer tôi đã kiểm tra và cấu hình của tôi không chính xác. Sau khi tôi thay đổi nó, nó phản hồi chính xác.

Đây là cài đặt Eureka. Tôi chạy 2 máy chủ eureka, một với hồ sơ peer1 và một với hồ sơ peer2.

--- 
spring: 
    profiles: peer1 # not standalone 

server: 
    port: 8761 

eureka: 
    instance: 
    hostname: peer2 
    leaseRenewalIntervalInSeconds: 3 
    client: 
    serviceUrl: 
     defaultZone: http://localhost:8762/eureka/ 

--- 
spring: 
    profiles: peer2 # not standalone 

server: 
    port: 8762 

eureka: 
    instance: 
    hostname: peer1 
    leaseRenewalIntervalInSeconds: 3 
    client: 
    serviceUrl: 
     defaultZone: http://localhost:8761/eureka/ 
    server: 
    waitTimeInMsWhenSyncEmpty: 0 

Các dịch vụ mà tôi đã kết nối được cấu hình như thế này

eureka: 
    client: 
    registerWithEureka: true 
    fetchRegistry: true 
    serviceUrl: 
     defaultZone: http://localhost:8761/eureka/,http://localhost:8762/eureka/ 
    instance: 
    statusPageUrlPath: /${info.app.name}/manage/info 
    homePageUrlPath: /${info.app.name}/manage 
    healthCheckUrlPath: /${info.app.name}/manage/health 
    preferIpAddress: true 

Sau khi tôi chạy dịch vụ của tôi, tôi có thể nhìn thấy nó kết nối với cả hai dịch vụ phát hiện và nếu tôi giết một trong hai thì nó xuất hiện trên dịch vụ khám phá khác.

+0

Tôi chạy vào cùng một vấn đề, bạn có thể vui lòng giúp tôi hiểu chính xác thuộc tính nào được sử dụng để giải quyết vấn đề này không. Cảm ơn. – 4rpit

Các vấn đề liên quan