SpringCloud微服務系列(3): 為已有的Eureka Server增加高可用HA

分類:IT技術 時間:2017-08-02

SpringCloud微服務系列(3): 為已有的 Eureka Server增加 高可用 HA

作者:家輝,日期:2017-08-01 C SDN 博客 : http ://blog.csdn.net/gobitan

摘要: 在本系列的前兩篇先後創建了一個Eureka微服務註冊中心和一個hello服務,該服務註冊到了Eureka Server。但一個註冊中心會存在單點故障,如果服務註冊中心掛了,系統就找不到服務。本文為註冊中心增加高可用功能。

第一步:準備兩臺Eureka高可用 測試 機

先準備兩臺 主機 ,可用 ubuntu 或者CentOS,將它們 配置 在一個網段(可用虛擬機),這裏用CentOS7.3。假設它們的IP地址分別為10.191.30.24和10.191.30.25.

將/etc/hostname分別改為eureka1和eureka2,改完需要重啟 操作系統 。

在/etc/hosts中加入如下配置:

.191.30.24 eureka1
.191.30.25 eureka2

第二步:配置高可用Eureka Server

在原有Eureka Server基礎上增加兩個appli cat ion.properties配置文件,分別如下:

[1] application-eureka1.properties

spring.application=eureka-server
server.port=1111
eureka.instance.hostname=eureka1
eureka.client.serviceUrl.defaultZone=http://eureka2:1112/eureka

[2] application-eureka2.properties

spring.application=eureka-server
server.port=1112
eureka.instance.hostname=eureka2
eureka.client.serviceUrl.defaultZone=http://eureka1:1111/eureka

說明:

(1) eureka server1的監聽 端口 為1111,eureka server2的監聽端口為1112;

(2) 它們各自的serviceUrl指向對方;

第三步:啟動eureka1和eureka2

[1] 在主機eureka1啟動

Java -jar eurekaserver-0.0.1-SNAPSHOT.jar --spring.profiles.active=eureka1

[2] 在主機eureka2啟動

java -jar eurekaserver-0.0.1-SNAPSHOT.jar --spring.profiles.active=eureka2

啟動之後,登錄http://10.191.30.24:1111/和http://10.191.30.25:1112/可以分別在DS Replicas看到註冊的eureka2和eureka1.

SpringCloud微服務系列(3): 為已有的Eureka Server增加高可用HA

SpringCloud微服務系列(3): 為已有的Eureka Server增加高可用HA

第四步:修改之前建立好的 REST Ful服務

修改 springboot hello service的application.properties配置文件

spring.application.name=hello-service
eureka.client.serviceUrl.defaultZone=http://eureka1:1111/eureka,http://eureka2:1112/eureka

如果配置用IP地址,需要添加 參數 eureka.instance.prefer- ip -address=true。

第五步:啟動hello-service的RESTFul服務

註意:下面的這臺主機的/etc/hosts中需要加入如下部分,否則會不認識上面application.properties中配置的主機名。

.191.30.24 eureka1
.191.30.25 eureka2

在另外一臺主機(如:10.191.30.23)執行如下命令啟動服務:

java -jar springboot-0.0.1-SNAPSHOT.jar

查看註冊情況,可看到兩臺eureka server都註冊了hello-servcie,如下所示:

SpringCloud微服務系列(3): 為已有的Eureka Server增加高可用HA

SpringCloud微服務系列(3): 為已有的Eureka Server增加高可用HA

一個服務(如hello-service)同時在兩個註冊中心註冊成功,這樣確保註冊中心的高可用。另外,經過測試,註冊中心重啟後,服務也會自動重新註冊進來。

參考資料:

[1] http://s tar t.spring.io/

[2] http://projects.spring.io/spring-cloud/

原文

http://blog.csdn.net/gobitan/article/details/76548929

PS:如果您想和業內技術大牛交流的話,請加qq群(527933790)或者關註微信公眾 號(AskHarries),謝謝!

轉載請註明原文出處: Harries Blog? ? SpringCloud微服務系列(3): 為已有的Eureka Server增加高可用HA


Tags: 可用 Eureka 服務 Server 註冊 增加

文章來源:


ads
ads

相關文章
ads

相關文章

ad