微服务配置中心(二)
Apollo配置中心,2016年,由携程的宋顺(研发)、吴其敏(架构)研发并开源,在携程稳定运行服务10万+实例,在github上也有5k+的stars和2K+的forks。
功能亮点:
- 统一管理不同环境、不同集群的配置;
- 配置修改实时生效(热发布),秒级生效;
- 版本发布管理,可回退配置版本;
- 灰度发布:可使用1~全量的实例发布;
- 权限管理、发布审核、操作审计;
- 客户端配置信息监控,确认哪些客户端已经发布了新的配置信息;
- 提供JAVA和.Net原生客户端;
- 提供开发平台的API;
- 部署Apollo简单;
- 文档完善;
Apollo简化的架构图
核心概念
- 应用(application):使用配置的应用,需要有唯一标识APPID,在配置文件中设置
- 环境(environment):dev/fat/uat/pro
- 集群(cluster):同一应用,部署到不同的区域环境,配置不同,可食用cluster集群进行区分
- 名字空间(namespace):同一应用下不同配置分组,分私有(只被所属应用独有)、公有(部门/小组/中间件客户端共享)、继承类型;
- 配置项(item):表示可配置项,支持properties/json/xml格式,定位方式(私有配置:env+app+cluster+namesapce+item_key,公有配置:env+cluster+namesapce+item_key)
- 权限:
- 系统管理员:拥有所有权限;
- 创建者:可以代为创建项目,责任人是默认为项目管理员;
- 项目管理员(一般与创建者同价):可以创建Namespace,集群,管理项目和Namespce权限;
- 编辑权限:只能编辑不能发布;
- 发布权限:只能发布不能编辑;
- 查看、普通用户:可以搜索查看所有项目配置,但不能做相关操作;
APollo快速起步
- 需要软件:JDK1.8/MySql+Workbench(或navicat)/GIT for windows/postman/idea
- 下载APollo的quickstart 包: https://github.com/nobodyiam/apollo-build-scripts
- 依据上述地址中安装顺序,进行安装;
- 安装后登陆界面如下图所示:
以上是 微服务配置中心(二) 的全部内容, 来源链接: utcz.com/z/514807.html