1. 程式人生 > >apollo部署時,eureka關於註冊ip的一個實踐

apollo部署時,eureka關於註冊ip的一個實踐

ref src fig 機器 nbsp jpg meta 是個 地址

1

技術分享圖片

config註冊到meta的地址為內網ip,對client不可見,故沿著這條路重現犯罪現場:

client通過meta地址訪問到meta,取得config ip,可惜是個內網ip,client無法請求到此內網ip,從這個圖來看,是比較清楚的,壞就壞在config既是config又是meta,搞混了這個場景,我們來看一下現在的情況:

client通過meta地址(config公網地址)訪問到config,config返回config註冊到config的內網ip,client拿到這個內網ip掛了

通過在config中

# 指定此實例的ip

eureka.instance.ip-address=

# 註冊時使用ip而不是主機名

eureka.instance.prefer-ip-address=true

註冊config服務實例

2.

meta需要高可用,可布置多臺機器,配置負載均衡

技術分享圖片

對於meta地址來說,可以:

1)負載均衡slb域名(官方建議)

2)0.11後支持“,”分割多個meta地址

參考:https://github.com/ctripcorp/apollo/wiki/%E5%88%86%E5%B8%83%E5%BC%8F%E9%83%A8%E7%BD%B2%E6%8C%87%E5%8D%97

apollo部署時,eureka關於註冊ip的一個實踐