CentOS 7 搭建基於攜程Apollo(阿波羅)配置中心單機模式
Apollo(阿波羅)是攜程框架部門研發的配置管理平臺,能夠集中化管理應用不同環境、不同集群的配置,配置修改後能夠實時推送到應用端,並且具備規範的權限、流程治理等特性。服務端基於Spring Boot和Spring Cloud開發,打包後可以直接運行,不需要額外安裝Tomcat等應用容器。Java客戶端不依賴任何框架,能夠運行於所有Java運行時環境,同時對Spring環境也有較好的支持。.Net客戶端不依賴任何框架,能夠運行於所有.Net運行時環境,而且已經支持.NET Core。
官網:https://github.com/ctripcorp/apollo
Wiki:https://github.com/ctripcorp/apollo/wiki(一切的集成方式和使用方法都在這裏)
Issues:https://github.com/ctripcorp/apollo/issues(如果期間有任何問題,請通過這裏查找大部分解決方法)
說明:官方提供了分布式部署方案,但是基於本地開發和調試上一般是單機部署的比較多。且提供的Quick Start方案跑不起來。所以下面將針對單機搭建上做詳細的實踐,用作開發環境。
註意:如果是生產環境一定要使用分布式部署方案來做高可用集群。
下載Release版本:https://github.com/ctripcorp/apollo/releases
1、環境:
JDK:1.8.0_161
Maven:3.5.2
MySQL:5.7.18
apollo:0.9.1
2、解壓
wget https://github.com/ctripcorp/apollo/archive/v0.9.1.tar.gz
tar zxvf apollo-0.9.1.tar.gz
3、導入數據庫文件
登錄MySQL命令行,然後執行
/data/apollo/apollo-0.9.1/scripts/sql/apolloconfigdb.sql
/data/apollo/apollo-0.9.1/scripts/sql/apolloportaldb.sql
4、打包
修改/data/apollo/apollo-0.9.1/scripts/build.sh,把數據庫賬號密碼修改為我們的密碼以及mysql 服務器地址。只保留dev_meta,其他的都刪除
dev_meta=http://localhost:8080
META_SERVERS_OPTS="-Ddev_meta=$dev_meta"
然後執行
./build.sh
該腳本會依次打包apollo-configservice, apollo-adminservice, apollo-portal和apollo-client。
5、啟動
apollo-configservice:
切換到目錄 /data/apollo/apollo-0.9.1/apollo-configservice/target,解壓apollo-configservice-0.9.1-github.zip
unzip apollo-configservice-0.9.1-github.zip –d test
執行腳本啟動服務
./startup.sh
apollo-adminservice:
切換到目錄 /data/apollo/apollo-0.9.1/apollo-adminservice/target,解壓apollo-adminservice-0.9.1-github.zip
unzip apollo-adminservice-0.9.1-github.zip –d test
執行腳本啟動服務
./startup.sh
apollo-portal:
apollo-portal的默認端口是8080,和apollo-configservice一致,所以如果需要在一臺機器上同時啟動apollo-portal和apollo-configservice的話,需要修改apollo-portal的端口。直接修改startup.sh中的SERVER_PORT即可,如SERVER_PORT=8070。
切換到目錄 /data/apollo/apollo-0.9.1/apollo-portal/target,解壓apollo-portal-0.9.1-github.zip
unzip apollo-portal-0.9.1-github.zip –d test
修改端口:
執行腳本啟動服務
./startup.sh
6、訪問
http://localhost:8070 ,默認用戶名/密碼參考 Portal 實現用戶登錄功能。
CentOS 7 搭建基於攜程Apollo(阿波羅)配置中心單機模式