Apollo配置中心管理后台的详解

Apollo(阿波罗)是携程框架部门研发的开源配置管理中心 , 能够集中化管理应用不同环境、不同集群的配置 , 配置修改后能够实时推送到应用端 , 并且具备规范的权限、流程治理等特性 。Apollo架构模块图:

Apollo配置中心管理后台的详解

文章插图
 
来源:网络
各模块职责
  • Config Service提供配置的读取、推送等功能 , 服务对象是Apollo客户端
  • Admin Service提供配置的修改、发布等功能 , 服务对象是Apollo Portal(管理界面)
  • Eureka提供服务注册和发现 , 目前Eureka在部署时和Config Service是在一个JVM进程中的
  • Config Service和Admin Service都是多实例、无状态部署 , 所以需要将自己注册到Eureka中并保持心跳
  • 在Eureka之上架了一层Meta Server用于封装Eureka的服务发现接口
  • Client通过域名访问Meta Server获取Config Service服务列表(IP+Port) , 而后直接通过IP+Port访问服务 , 同时在Client侧会做load balance、错误重试
  • Portal通过域名访问Meta Server获取Admin Service服务列表(IP+Port) , 而后直接通过IP+Port访问服务 , 同时在Portal侧会做load balance、错误重试
为了简化部署实际上会把Config Service、Eureka和Meta Server三个逻辑角色部署在同一个JVM进程中
分步执行流程
  • Apollo启动后 , Config Service和Admin Service会自动注册到Eureka服务注册中心 , 并定期发送保活心跳 。
  • Apollo Client和Portal管理端通过配置的Meta Server的域名地址经由Software Load Balancer(软件负载均衡器)进行负载均衡后分配到某一个Meta Server
  • Meta Server从Eureka获取Config Service和Admin Service的服务信息 , 相当于是一个Eureka Client
  • Meta Server获取Config Service和Admin Service(IP+Port)失败后会进行重试
  • 获取到正确的Config Service和Admin Service的服务信息后 , Apollo Client通过Config Service为应用提供配置获取、实时更新等功能;Apollo Portal管理端通过Admin Service提供配置新增、修改、发布等功能
核心概念
  • Application (应用):就是实际使用配置的应用 , Apollo客户端在运行时需要知道当前应用是谁 , 从而可以去获取对应的配置
    关键字:appId
  • environment (环境):配置对应的环境 , Apollo客户端在运行时需要知道当前应用处于哪个环境 , 从而可以去获取应用的配置
    关键字:env
  • cluster (集群):一个应用下不同实例的分组 , 比如典型的可以按照数据中心分 , 把上海机房的应用实例分为一个集群 , 把北京机房的应用实例分为另一个集群 。
    关键字:cluster
  • namespace (命名空间): 一个应用下不同配置的分组 , 可以简单地把namespace类比为文件 , 不同类型的配置存放在不同的文件中 , 如数据库配置文件 , RPC配置文件 , 应用自身的配置文件等
    关键字:namespaces

Apollo配置中心管理后台的详解

文章插图
 
0x01:部门管理
Apollo 默认部门提供两个 , 如需要增加部门 , 可在系统参数中修改
Apollo配置中心管理后台的详解

文章插图
 
添加部门
Apollo配置中心管理后台的详解

文章插图
 
0x02:用户管理
Apollo配置中心管理后台的详解

文章插图
 
添加用户
Apollo配置中心管理后台的详解

文章插图
 
0x03:创建项目(应用)
Apollo配置中心管理后台的详解

文章插图
 
创建项目
Apollo配置中心管理后台的详解

文章插图
 
创建完成后
Apollo配置中心管理后台的详解

文章插图
 
0x04:授权管理
Apollo配置中心管理后台的详解

文章插图
 
赋予用户huangjj管理payservice服务的权限
Apollo配置中心管理后台的详解

文章插图
 
这样huangjj用户登录就可以看到payservice应用了 。
0x05:删除项目


推荐阅读