如何构建一个高效的运维管理平台?
本文为优维科技CTO黎明在《云上运维与研发最佳实践》活动上的内容分享,本文结合微服务架构特点,解读如何构建一个高效运维管理平台。
黎明带领团队自主研发了全栈DevOps运维管理平台—EasyOps,是目前行业领先的智能化运维管理平台。作为前腾讯运维研发负责人,黎明主导了多个运维系统研发舆情监控、大数据监控平台、CMDB、实时日志分析平台、织云、客户端体验监控等。
本文内容有三点:
1、微服务架构特点及其传统巨石架构的差异,以及传统运维工具面临的挑战;
2、面向微服务的运维平台架构;
3、运维平台微服务进化。
一、 微服务架构与巨石架构的差异
“微服务”与“巨石架构”两者并非对立,而是分别针对不同场景的解决方案。
巨石架构指将所有“大脑”集中在一起,以CS架构为代表,将所有的逻辑放在唯一应用中,再加入前端UI组件、Service、MVC架构、数据库等部分。它的技术架构不复杂,调试、部署、管理方便,是适用于绝大部分系统的解决方案。
但是在互联网要求“多、快、好、省”的应用场景下,“巨石架构”面临诸多挑战。
多:互联网用户量巨大,达百万级在线量;
快:服务请求反应速度要在一秒以内甚至更快;
好:服务质量稳定性要高;
省:硬件成本增涨要低于用户量增涨速度。
如何解决这四个问题——增强整个平台的灵活性。
平台扩展能力
1.平行扩展:一般的无状态服务器可以通过服务器扩容完成平行扩展;
2.分区:对于有状态的服务可以通过分区增强平台灵活性,如:南北方用户分属A、B不同集群。
平台上的扩展“巨石架构”可以适应,但是功能上的扩展却比较难适应。
功能扩展能力
功能维度上,如何使系统变得更融洽?
1.灵活控制成本:局部调整,变更模块、逻辑,而不是