1. 前言
Disconf是由百度开源的一套分布式配置管理平台(Distributed Configuration Management Platform),专注于各种「分布式系统配置管理」的「通用组件」和「通用平台」, 提供统一的「配置管理服务」。
首先,实现了同构系统的配置发布统一化,提供了配置服务server,该服务可以对配置进行持久化管理并对外提供restful接口,在此基础上,基于zookeeper实现对配置更改的实时推送,并且,提供了稳定有效的容灾方案,以及用户体验良好的编程模型和WEB用户管理界面。其次,实现了异构系统的配置包管理,提出基于zookeeper的全局分布式一致性锁来实现主备统一部署、系统异常时的主备自主切换。
2. 配置前准备工作
部署规划
Disconf分为web端与client端,web端统一管理各个环境的配置,在此我们只需要部署web端即可。
Disconf的部署非常简单,它是java语言开发的程序,部署时只需将war包部署到相应位置即可运行,因此只需要在JDK+Tomcat环境中将disconf的war包部署即可。
为保证高可用,我们将disconf分别部署到三台服务器上,并在前端采用nginx实现动静分离+负载均衡。
disconf依赖tomcat环境部署路径:
/usr/local/disconf-tomcat/
disconf部署路径:
/home/disconf/war
disconf打包前配置文件存放路径:
/home/disconf/conf/
disconf日志文件存放路径:
/home/disconf/log/
disconf前端静态文件存放路径:
/home/disconf/war/html/
disconf-web监听端口:8085
disconf前端nginx监听端口:8888