1.Eureka Server高可用集羣
2.編寫高可用Eureka Server(雙節點)
2.1 配置操作系統的hosts
2.2 創建/修改項目
創建項目microservice-discovery-eureka-ha(從之前microservice-discovery-eureka項目複製並修改其pom.xml中的ArtifactId爲microservice-discovery-eureka-ha)
我是直接修改了之前單節點的Eureka Server,將其配置文件application.xml修改如下:
spring:
application:
name: microservice-discovery-eureka
---
spring:
profiles: peer1 # 指定profile=peer1
server:
port: 8761
eureka:
instance:
hostname: peer1 # 指定當profile=peer1時,主機名是peer1
client:
serviceUrl:
defaultZone: http://peer2:8762/eureka/ # 將自己註冊到peer2這個Eureka上面去
---
spring:
profiles: peer2
server:
port: 8762
eureka:
instance:
hostname: peer2
client:
serviceUrl:
defaultZone: http://peer1:8761/eureka/
2.3. 測試
啓動Eureka Server的方式:
方法1 打包項目,命令行中啓動:
1.打包項目,爲jar包,在IDEA的Maven裏面找到package雙擊即可生成 jar包。
2.在兩個cmd中分別啓動2個Eureka Server節點(注意jar包的路徑):
方法2 直接在IDEA啓動:
1.通過修改IDEA的運行配置:
2.分別運行peer1和peer2:
3.瀏覽器訪問即可啦~~~
2.4更精簡的配置方式
修改配置文件application.yml,內容如下:
spring:
application:
name: microservice-discovery-eureka
eureka:
client:
serviceUrl:
defaultZone: http://peer2:8762/eureka/, http://peer1:8761/eureka/
---
spring:
profiles: peer1
server:
port: 8761
eureka:
instance:
hostname: peer1
---
spring:
profiles: peer2
server:
port: 8762
eureka:
instance:
hostname: peer2
3.將微服務註冊到Eureka Server集羣
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/, http://localhost:8762/eureka/