1. 写作动机
今年我花了3个月在一家公司实习,主管扔给我的项目就是搭建自己的配置中心。从入职搭公司的开发环境到离职时这个项目基本搞完(虽然可能距离完全的生产环境使用还需要一段时间),收获还是蛮大的,一直想做一做总结,时间是有的,只是自己太懒了,在2018年的最后一个月我决定整理一下,这将成为宝贵的经历。
2. 什么是配置管理中心?做什么用?
【网上找到的专业说法的总结】
配置中心(ITConfig,简称itcfg),是由IT基础框架推出的统一配置管理产品。基于该配置中心产品,您可以在DevOps、微服务等场景下极大地减轻配置管理的工作量,增强配置管理的服务能力。
【通俗一点的说法】一个公司下可能会有很多的(B/S)应用,这些应用从开发、测试、再到实际的生产环境的运行,不同的阶段运行的环境、软件、配置文件都面临着改变。场景是公司下面会存在很多需要管理的应
用, 每个应用存在很多的配置文件,这些配置文件并不是一成不变的,而是在不断变化的。还有一种场景是,同一个应用部署到多个服务器上,当我们需要修改配置文件时,最直接的方法就是挨着每个服务器去修改,
那不禁会想有没有什么方法,可以一次修改,然后全部服务器生效呢?emmm,显然是有的,我们可以搭建配置管理中心。
3. 现有的配置管理中心
- Diamond, 淘宝开源的一种分布式配置管理服务的实现
- disconf, 百度的分布式配置管理平台,这个项目基本是由一个人来开发完成的(Orz)。
- Qconf,奇虎 360 内部分布式配置管理工具,用C/C++编写,支持c/c++、shell、php、python 等,应用Zookeeper做集群管理