springcloudシリーズ12-Eurekaの高さは使えます。


Eureka Serverの高さは、サービスとして他のEureka ServerにそれぞれのEureka Serverとして登録することで、サービスリストの同期が可能となり、利用可能な効果が高いです。
デフォルトでは、各EurekaサーバもEurekaクライアントであり、ピアを特定するためにサービスURLが必要である。
私たちは以前のEureka Serverプロジェクトを修正しました。appication.ymlの配置は以下の通りです。
---
server:
  port: 8761
spring:
  profiles: peer1
eureka:
  instance:
    hostname: peer1
  client:
    serviceUrl:
      defaultZone: http://peer2:8762/eureka/,http://peer3:8763/eureka/
---
server:
  port: 8762
spring:
  profiles: peer2
eureka:
  instance:
    hostname: peer2
  client:
    serviceUrl:
      defaultZone: http://peer1:8761/eureka/,http://peer3:8763/eureka/
---
server:
  port: 8763
spring:
  profiles: peer3
eureka:
  instance:
    hostname: peer3
  client:
    serviceUrl:
      defaultZone: http://peer1:8761/eureka/,http://peer2:8762/eureka/
ここはローカルテストですので、Eurka Serverの3つの構成は全部1つのプロファイルに書いてあります。hostsファイルを変更します。127.0.0.1 peer1 peer2 peer3、peer 1、peer 2、peer 3は全部127.1.0.1にマッピングされます。起動時にprofileを指定します。ideaの構成は以下の通りです。
順番にpeer 1、peer 2、peer 3を起動します。peer 1を観察すると、peer 2の日記にもエラーがあります。peer 1のエラーは、peer 2とpeer 3のサービスが起動していないため、自分をpeer 2とpeer 3に登録できなくなりました。peer 2のエラーは、peer 3が起動していないため、peer 3が正常に起動し、エラーがないためです。peer 1を表示
peer 2を表示
見ることができます。*1.Eureka Serverは他のEureka Serverのサービスです。*2.Eureka Serverはそれぞれ同期しています。
他のサービスプロバイダのappication.yml修正:
eureka:
  client:
    serviceUrl:
      defaultZone: http://peer1:8761/eureka,http://peer1:8762/eureka,http://peer1:8763/eureka
Eureka Serverアドレスごとに記入することをオススメします。一つだけ書いて起動しても大丈夫です。ただし、peer 1の住所だけを書くと、当該サービスは破棄され、peer 1も切ってしまい、サービスが登録できなくなります。
Eureka Serverの高さはSpring Coudの公式文書を参照することができます。