您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關怎樣使用Eureka集群搭建實現高可用服務注冊中心,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
之前我們搭建的注冊中心只適合本地開發使用,在生產環境中必須搭建一個集群來保證高可用。Eureka 的集群搭建方法很簡單:每一臺 Eureka 只需要在配置中指定另外多個 Eureka 的地址就可以實現一個集群的搭建了。
下面我們以 2 個節點為例來說明搭建方式。假設我們有 master 和 slaveone 兩臺機器,需要做的就是:
將 master 注冊到 slaveone 上面。
將 slaveone 注冊到 master 上面。
如果是 3 臺機器,以此類推:
將 master 注冊到 slaveone 和 slavetwo 上面。
將 slaveone 注冊到 master 和 slavetwo 上面。
將 slavetwo 注冊到 master 和 slaveone 上面。
創建一個新的項目 eureka-server-cluster,配置跟 eureka-server 一樣。
首先,我們需要增加 2 個屬性文件,在不同的環境下啟動不同的實例。增加 application-master.properties:
server.port=8761# 指向你的從節點的Eurekaeureka.client.serviceUrl.defaultZone=http://用戶名:密碼@localhost:8762/eureka/
增加 application-slaveone.properties:
server.port=8762# 指向你的主節點的Eurekaeureka.client.serviceUrl.defaultZone=http://用戶名:密碼 @localhost:8761/eureka/
在 application.properties 中添加下面的內容:
spring.application.name=eureka-server-cluster# 由于該應用為注冊中心, 所以設置為false, 代表不向注冊中心注冊自己eureka.client.register-with-eureka=false# 由于注冊中心的職責就是維護服務實例, 并不需要檢索服務, 所以也設置為 falseeureka.client.fetch-registry=falsespring.security.user.name=zhangsanspring.security.user.password=123456# 指定不同的環境spring.profiles.active=master
在 A 機器上默認用 master 啟動,然后在 B 機器上加上 --spring.profiles.active=slaveone 啟動即可。
這樣就將 master 注冊到了 slaveone 中,將 slaveone 注冊到了 master 中,無論誰出現問題,應用都能繼續使用存活的注冊中心。
之前在客戶端中我們通過配置 eureka.client.serviceUrl.defaultZone 來指定對應的注冊中心,當我們的注冊中心有多個節點后,就需要修改 eureka.client.serviceUrl.defaultZone 的配置為多個節點的地址,多個地址用英文逗號隔開即可:
eureka.client.serviceUrl.defaultZone= http://zhangsan:123456@localhost:8761/eureka/,http://zhangsan:123456@localhost:8762/eureka/
以上就是怎樣使用Eureka集群搭建實現高可用服務注冊中心,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。