分布式配置中心Apollo部署
参考:分布式部署指南
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
1.数据库的部署
1)ApolloPortalDB和ApolloConfigDB
ApolloPortalDB只需要在生产环境部署一个即可,
而ApolloConfigDB需要在每个环境部署一套,如fat、uat和pro分别部署3套ApolloConfigDB。
2)ApolloPortalDB配置
1:如果支持多个环节,那么就配置多个value(以,分隔)
2:
3)ApolloConfigDB
1:eureka.service.url注册中心配置,如果有多个注册中心,那么配置多个,以,分隔2.服务安装包构建
方法1)下载源码:github上的源码地址https://github.com/ctripcorp/apollo
配置数据库信息:
注意,填写的username需要对ApolloConfigDB和ApolloPortalDB都具有读写对权限
配置服务信息:
注意1:为了实现meta service的高可用,推荐通过SLB(Software Load Balancer)做动态负载均衡
注意2:meta service地址也可以填入IP,0.11.0版本之前只支持填入一个IP。从0.11.0版本开始支持填入以逗号分隔的多个地址(PR #1214),如http://1.1.1.1:8080,http://2.2.2.2:8080,不过生产环境还是建议使用域名(走slb),因为机器扩容、缩容等都可能导致IP列表的变化。
执行github源码的scripts/build.sh,
方法2)直接下载提供的安装包文件,地址:
https://github.com/nobodyiam/apollo-build-scripts
3.获取安装包
获取到:
apollo-configservice,
位于apollo-configservice/target/目录下的apollo-configservice-x.x.x-github.zip
apollo-adminservice,
位于apollo-adminservice/target/目录下的apollo-adminservice-x.x.x-github.zip
apollo-portal,
位于apollo-portal/target/目录下的apollo-portal-x.x.x-github.zip
apollo-client相关jar包
由于客户端jar包中会包含meta server信息,无法上传一个统一的jar包到中央仓库,所以需要自己上传到自己公司的Maven私服。
注:meta server信息在打包后会写入apollo-core.jar包中的apollo-env.properties文件。
如果有maven仓库的deploy权限,建议通过maven命令直接上传,把install修改为deploy,同时按照下面的说明做对应配置即可。
4.部署安装包
1)部署apollo-configservice
将对应环境的apollo-configservice-x.x.x-github.zip上传到服务器上,解压后执行scripts/startup.sh即可。如需停止服务,执行scripts/shutdown.sh.
2)部署apollo-adminservice
将对应环境的apollo-adminservice-x.x.x-github.zip上传到服务器上,解压后执行scripts/startup.sh即可。如需停止服务,执行scripts/shutdown.sh.
3)部署apollo-portal
将apollo-portal-x.x.x-github.zip上传到服务器上,解压后执行scripts/startup.sh即可。如需停止服务,执行scripts/shutdown.sh.
apollo-portal的默认端口是8080,和apollo-configservice一致,所以如果需要在一台机器上同时启动apollo-portal和apollo-configservice的话,需要修改apollo-portal的端口。直接修改startup.sh中的SERVER_PORT即可,如SERVER_PORT=8070。
5.启动
6.登陆验证
1)打开http://localhost:8070,账号密码:
查看ApolloPortalDB,应该已经存在Users表,并有一条初始记录。初始用户名是apollo,密码是admin。
领取专属 10元无门槛券
私享最新 技术干货