配置中心Apollo总结

本文记录个人开发经历仅供参考

最近公司要求使用Apollo配置中心,本人对其进行研究总结。

Apollo简介

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

服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。

Java客户端不依赖任何框架,能够运行于所有Java运行时环境,同时对Spring/Spring Boot环境也有较好的支持。

.Net客户端不依赖任何框架,能够运行于所有.Net运行时环境。

Apollo部署

官方推荐有两种部署方案,Quick Start   分布式部署;

初学者 建议使用Quick Start部署方案,简单快捷,但是不适合实际公司开发需要,功能上也有所欠缺 。

公司使用的话建议使用分布式部署方案,这里也着重介绍分布式部署方案。

1、首先下载源码 

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

附图:

配置中心Apollo总结_第1张图片

2、导入数据库

进入源码的scripts目录找到sql目录

将 apolloconfigdb.sql  apolloportaldb.sql  导入MySQL

附图:

这里解释一下两个数据库的区别:

portaldb 和 configdb 看其相似,但其实有很大不同。

apolloportaldb:  portal是门户网站的意思,显而易见 portal 主要是向方便用户管理的后台提供持久层数据及配置。

可根据不同需求修改配置信息

附图:

配置中心Apollo总结_第2张图片

这里说一下环境列表:可通过英文逗号隔开添加不同环境。

Apollo目前支持以下环境:

  • DEV
    • 开发环境
  • FAT
    • 测试环境,相当于alpha环境(功能测试)
  • UAT
    • 集成环境,相当于beta环境(回归测试)
  • PRO
    • 生产环境

apolloconfigdb:则是对我们所添加应用的配置进行存取,大白话来说就是存咱们项目的配置信息的。上面提到Apollo可以支持多环境,这里也说明一下:一个configdb只提供一个环境的配置存取。

可根据不同需求修改配置信息

附图:

配置中心Apollo总结_第3张图片

 3、打包

官方有提供打包脚本,可进入scripts 找到build.bat  build.sh  两者区别不用多说大家一定明白。这里使用sh脚本。

附图:

不同包的不同作用:

配置中心Apollo总结_第4张图片

多环境部署: 

 配置中心Apollo总结_第5张图片

配置文件图: 

配置中心Apollo总结_第6张图片

打包后会生成 三个包去不同目录的target里找

配置中心Apollo总结_第7张图片

进入target找到zip文件(这里说明是zip文件不是jar文件),找到后新建文件目录,解压。

例图:

配置中心Apollo总结_第8张图片

解压: 

配置中心Apollo总结_第9张图片

解压后,进入scripts目录 

配置中心Apollo总结_第10张图片 

两个脚本一个启动一个停止。

配置中心Apollo总结_第11张图片 

点击编辑

配置中心Apollo总结_第12张图片

注意默认portalServer的端口会与configServer的端口重复,如果是在一台机器启动,建议将port的端口改为8070或其他。如果port跟config不在一台机器启动请无视上句话。

修改后运行startup.sh脚本启动即可,停止则运行shutdown.sh脚本。

运行后访问ip+port设置的端口号即可访问。

此机器的环境配置需在  windows  C:\opt\settings\server.properties   Linux  /opt/settings/server.properties 里指定

说明:portalServer=后台   configServer+adminServer=一个环境

后续会继续进行补充。

你可能感兴趣的:(配置中心Apollo总结)