1.  介绍

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。

-- 摘自Apollo官网

1.1.  痛点

  • 修改配置后,需要重启项目
  • 大量重复的配置,不便于管理

1.2.  为什么选择Apollo

Apollo VS Spring Cloud Config

  • Spring Cloud Config 依赖于GitHub,所有配置都是写在文件中,然后通过提交GitHub上来生效的,不同的环境用不用的文件区分

Apollo VS 阿里云应用配置管理ACM

  • 依赖于阿里云,不便于后续迁移
  • 阿里云已经放弃了该项目,不再维护

 

2.  快速开始

2.1.  服务端配置

运行方式有很多,作为入门,这里选择直接从官网下载打好的jar包运行

https://github.com/ctripcorp/apollo/releases

Apollo 分布式配置中心

在开始之前,首先需要建表。将项目clone下来,脚本位于${YOUR-WORKSPACE}/apollo/scripts/db/migration/

也可以直接去github上找,apolloportaldb.sql 、 apolloconfigdb.sql

1 source /your_local_path/configdb/V1.0.0__initialization.sql
2 source /your_local_path/portaldb/V1.0.0__initialization.sql

Apollo 分布式配置中心

数据库有了,接下来修改配置文件中相应的数据库连接信息

Apollo 分布式配置中心

Apollo 分布式配置中心

Apollo 分布式配置中心

Apollo 分布式配置中心

如无意外,至此,adminservice、configservice、portal都起来了

Apollo 分布式配置中心

Apollo 分布式配置中心

初始账号密码是:apollo/admin

Apollo 分布式配置中心

首先,新建一个项目

Apollo 分布式配置中心

然后,编辑配置并发布

Apollo 分布式配置中心

Apollo 分布式配置中心

2.2.  客户端配置

Apollo 分布式配置中心

application.properties

Apollo 分布式配置中心

Apollo 分布式配置中心

Apollo 分布式配置中心

修改配置后,实时生效

Apollo 分布式配置中心

Apollo 分布式配置中心

下一篇继续探索Apollo

未完待续。。。

 

3.  文档

https://github.com/ctripcorp/apollo/wiki/分布式部署指南

https://github.com/ctripcorp/apollo/wiki/Quick-Start

https://github.com/ctripcorp/apollo/wiki/Apollo使用指南

https://github.com/ctripcorp/apollo/wiki/Java客户端使用指南

https://github.com/ctripcorp/apollo/wiki/Apollo开发指南

 

相关文章: