Apollo分布式配置中心踩坑
最近學習了一下分布式配置中心,在本地使用Quick Start 進行了部署測試,在測試部署過程中也遇到了一些問題。
apollo分布式配置中心主要可以分為四個模塊
1.?apollo-portal 平臺? 可視化的配置界面,可以增刪改查 各個配置環境的信息然后通過發布實時更新到服務器端
2.apollo-adminservice 配置管理的接口服務,提供服務給portal平臺進行配置的增刪改查
3.apollo-configservice 配置獲取和推送的接口服務,提供服務給apollo客戶端獲取最新的配置
4.apollo-client? ?apollo客戶端,需要我們手動去集成apollo的依賴和配置文件去獲取到實時最新的配置
在Quick Start 里將portal,adminservcie,configservice集成在一個項目apollo-build-scripts-master里,我們只要啟動該項目就可以了
下載地址:https://github.com/nobodyiam/apollo-build-scripts
快速安裝apollo環境
①執行apollo-build-scripts-master\sql 下的腳本,創建configdb和portaldb
②修改demo.sh 里的數據庫連接信息和config_server_url等的地址
③執行./demo.sh start 啟動
問題1: 使用./demo.sh start 啟動失敗
?
我發現注冊中心上的注冊的ip寫的是bogon而不是localhost或者是虛擬服務器的ip地址
猜測主要是因為服務器將ip 192.168.72.141解析成了bogon,導致eureka注冊出現問題。可以發現linux上登錄后顯示的也是root@bogon ,執行命令ipcalc -h 192.168.72.141返回的也是bogon
解決辦法:嘗試了幾種方式,包括修改/etc/resolv.conf, 最后在/etc/hosts里加上192.168.72.141 ?localhost 服務啟動成功
啟動完apollo環境之后,就需要配置apollo客戶端
①引入依賴,執行apollo-master\scripts 里的build.bat會自動打入maven倉庫(因為我本地的maven配置原因,是直接上傳到了maven私服)
?②配置服務信息(服務名和注冊中心地址,以及對應的apollo 客戶端 的 app.id),配置apollo接口服務地址(apollo-env.properties)
③修改環境(沒有文件則新建)
修改/opt/settings/server.properties(Mac/Linux)或C:\opt\settings\server.properties(Windows)文件,設置env為DEV:
env=DEV
④在springboot啟動類增加@EnableApolloConfig 注解即可
問題2:apollo客戶端 啟動失敗,提示加載不到類com.ctrip.framework.apollo.tracer.Tracer.class
這個類是在apollo-core-1.0.0.jar里的,雖然引入了該jar包,單懷疑可能是在打包上傳到maven私服的時候缺少了某些依賴,于是手動導入apollo-master maven項目,修改maven? settings.xml配置文件后打包到本地倉庫
服務都啟動成功后,可以登錄apollo-portal修改相關的配置信息,發布后 這樣在訪問apollo-client的相關配置時就可以實時獲取到最新的配置信息
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的Apollo分布式配置中心踩坑的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 下 MySQL卸载和安装
- 下一篇: ProtoBuf的使用以及原理分析