其次是开发了一套工具代码框架,内置了统一登录、权限、tag等通用功能,更重要的是,不需要一个一个去对接各个系统的接口(原子),因为ESB模块都封装好了,只要写个函数就可以调用这些原子。
再有就是解决运维的前端开发难题——前端样例库。提供了“从各种页面元素到不同类型的运维工具的页面组合套餐”,减少了运维消耗在前端开发上的时间。
最后,还为蓝鲸开发者提供培训,一般来说,新进毕业生在通过四周以内的培训之后,就可以独立在蓝鲸集成平台中构建APP工具。
到此,蓝鲸已经基本解决了运维构建工具高门槛的问题,而且可以随时低成本的根据业务变化(例如新增了模块,导致发布变更、告警处理流程都变了)调整工具。
运维在“转型”的过程中,需要补充或者需要强化的技能,只有python(Django)和shell及初浅的web开发,这对大多数运维来说,都是可以接受的。
在这种设计模式下,蓝鲸团队的建设方向就很清晰了:
1. 继续降低工具本身的开发成本,提高PaaS模块的可靠性;
2. 扩展原子服务,找出运维海量操作流程中,重复度最高的一些原子,构建成平台,封装接口提供给PaaS作为自动化原子,让运维更轻松的调度更多节点,提升单个节点功能密度,升级拓展更多的流程,直到把流程升级到运维无人值守,升级到对产品、策划等岗位的闭环服务为止。
经过三年的发展,蓝鲸体系构建了六个平台,其中后四个都是直接或间接提供原子服务供运维集成的功能性平台:
蓝鲸集成平台:包含PaaS、ESB、开发框架、web样例等模块,是运维制作工具APP的平台。
蓝鲸移动平台:蓝鲸体系的移动端操作入口。
蓝鲸作业平台:各种大小文件传输,含参脚本执行类的动作,可以在蓝鲸作业平台封装,通过接口操控。
蓝鲸配置平台:从业务的各层分级结构到子节点的各类属性,都可以直观的存储于蓝鲸配置平台,通过接口存取。
蓝鲸管控平台:一套基于海量标准设计的管控系统,为作业平台提供文件管道和任务管道,为数据平台提供数据管道等,整个蓝鲸体系对OS及容器单元、大数据的所有管控,只依赖管控平台的一个智能agent。
蓝鲸数据平台:基于kafka、storm构建的供应用运维使用的实时计算平台,为上层蓝鲸集成平台上的智能决策类工具族、数据视图类工具族、辅助决策类工具族提供大数据处理及实时计算能力。
Storm之类的技术早已不新鲜,但供运维“使用”的比较少见。上述平台大多是由运维“维护”的,为了适应运维的技能树,蓝鲸数据平台包括如下特性:
1. 提供了在线IDE,运维可以用相对熟悉的yaml语言描述运算逻辑,而不需要学习java;
2. 通过各种渠道对接了大量常用的运营环境数据(客户端数据、服务端数据、网络数据、自定义数据源、在线、登陆、发布变更、营销活动、故障等运营事件);
3. 提供了数据字典供运维针对个性化的业务选用实时数据组合来做“运维自动决策”或者“辅助运营决策”。
目前已有的这六个平台的组合,给了应用运维近乎无限的发挥空间。
我们内部有三个运维中心,十几个应用运维组,他们各自支持着不同的业务,各自处于不同的发展阶段和能力水平。
出自应用运维团队的蓝鲸团队,在与他们不断的磨合中持续改进着各个平台,武装应用运维逐级提升服务能力。
一般来说,分三个阶段: