它的好处在于
· 可以将配置信息很好进行建模,在API层面就嵌入AAA 管理
· Authentication认证, Authorization授权 和 Auditing审计, 防止非法操作
· 可以基于 API 将配置流程自动化
· 以服务作为配置数据的真正单个来源 SSoT (Single Source of Truth)
· 提供订阅和通知服务, 在配置有改动时立即通知其他相关的微服务和系统
有一个开源项目 consul 可以用来充当 Configure Service 配置服务, 可以访问 consul github 地址一看究竟, 也是用 go 写的, 看来 go 语言最近上升势头很火
环境管理
一般来说, 我们会有很多不同的测试环境和产品环境来发布我们的服务
比如我们常用的环境有如下几种
· lab env
· ats env
· bts env
· production env
每种环境就有多台服务器协同工作, 手工配置显示太麻烦, 于是众多配置管理的运维工具应运而生
· Ansible
· Chef
· Fabric
· Puppet
· SaltStack
Puppet 以前用得很多, Ansible 最近比较火, 我比较喜欢用轻量级的Fabric, 参见以前写的 程序员瑞士军刀之Fabric