1. 程式人生 > >Spring Cloud Eureka集群 動態擴展新節點

Spring Cloud Eureka集群 動態擴展新節點

等待 節點 strong 十分鐘 版本 www nginx com 修改

場景描述:

Eureka的集群節點有兩個,互相註冊形成集群,已經支持動態刷新(不知道怎麽讓Eureka支持動態刷新的可以參考http://www.cnblogs.com/flying607/p/8459397.html),已經在運行,使用nginx做負載均衡,代理該集群,服務的註冊中心地址直接寫nginx地址。

現在想增加一個Eureka節點到這個集群中,又不重啟任何服務。

擴展新節點步驟如下:

0、新節點配置完整的集群地址 並啟動
1、修改每個eureka的application.yml(該配置文件是放在jar包外部的,所以可以方便修改),增加新的節點
2、挨個刷新每個eureka的配置

3、等待大約十分鐘(這個配置暫時不知道從哪能找到,我等了大約十分鐘才看到新節點上有了動靜),刷新新節點,看到有服務信息同步過去了
4、修改nginx的負載均衡地址,加入新的節點地址
5、nginx -s reload

使用的版本:Dalston.SR1

題外話:

本文場景中描述的集群方案存在一定缺陷,如果集群中某個節點掛掉了,並沒有比較完善的熔斷和重試措施保護。

如果對這方面要求比較高可以考慮使用lvs+keepalived(監聽某個端口,及時剔除)

取代nginx的代理。

各位大佬如果有什麽好的想法歡迎在評論區留言。

Spring Cloud Eureka集群 動態擴展新節點