阿里巴巴DevOps实践指南(二十三)| 编排运维

阿里巴巴应用运维平台已经发展了 6 年有余,支撑了公司绝大部分应用的上线部署、扩缩容、资源管理以及各种运维变更操作,并逐渐沉淀出一套丰富且稳定的运维原子服务。为了最大化这些原子服务的价值并打造应用运维平台的中台能力,我们提出了一种面向编排的运维解决方案。

面向编排的运维是指用户(PaaS 服务以及开发、运维、运营等角色)根据实际业务需要,对多个原子组件通过简单编排的方式进行灵活装配,构造出不同的业务流程以便完成一个完整的运维需求。运维编排可以帮助我们更好地规范、管理和执行自动化运维操作,以模板的方式定义所需要进行的操作,然后再通过系统运行,从而提高整体运维操作的效率、增强运维操作的安全性,并避免人工运维的错误。

主要痛点

在应用运维领域,大部分的做法都是基于工作流以及工单管理来实现对应的运维变更操作,而传统的运维工作流在维护成本及可扩展性上都存在一定的不足,缺乏有效的流程生命周期管理手段。

这些问题可以归结为以下三类:

核心理念

运维编排的核心理念是服务组件化、运维编排化。我们把运维原子服务按照平台规范注册为组件,并托管到统一的组件池中进行维护和管理,用户按需从组件池中选择对应组件,并采用合适的编排方式装配成运维业务流程,最后触发执行即可完成期望的运维变更任务。运维编排的最终目的是打造一款高效、稳定、安全的运维业务构建平台。

技术思路业务架构

图片[1]-阿里巴巴DevOps实践指南(二十三)| 编排运维-JieYingAI捷鹰AI

架构一共有五层,从下到上,第一层是流程引擎以及容器引擎,作为原子服务的执行者;第二层用于定义各种不同的运维原子服务,是原子服务的定义者;第三层则主要用于注册原子服务为组件,作为组件的注册者;第四层是提供核心的编排能力,作为流程的编排者;第五层主要提供场景化编排能力,针对不同的场景有一些额外的特性支持。

技术架构

图片[2]-阿里巴巴DevOps实践指南(二十三)| 编排运维-JieYingAI捷鹰AI

被集成服务可以向 API Gateway 注册 Rest API,从而通过统一的网关对外暴露服务。网关本身需要实现标准的鉴权/授权策略以及 API 生命周期管理、熔断和限流等能力,同时注册到网关的 API 还要能够进一步注册到作业平台的组件池当中;如果被集成服务还引入了流程引擎,那么对应的原子组件也要能够直接注册到远程的组件池,最终通过作业平台完成所有原子组件的收敛和统一管理。基于此可以让业务方按需从组件池中选择对应组件并进行装配,同时通过自定义表单功能设置流程输入,最后触发流程。流程执行时由作业平台的执行引擎子系统进行远程调度并驱动最终的服务提供者运行对应的功能组件。

核心功能组件使用步骤

关键能力

主要包括以下关键能力:

图片[3]-阿里巴巴DevOps实践指南(二十三)| 编排运维-JieYingAI捷鹰AI

适用场景

以应用扩容为例

1、 可视化编排出应用扩容模板

图片[4]-阿里巴巴DevOps实践指南(二十三)| 编排运维-JieYingAI捷鹰AI

2、 提交表单,执行应用扩容模板

图片[5]-阿里巴巴DevOps实践指南(二十三)| 编排运维-JieYingAI捷鹰AI

3、 查询执行进度及结果

图片[6]-阿里巴巴DevOps实践指南(二十三)| 编排运维-JieYingAI捷鹰AI

总结

面向编排的运维业务构建模式,可以高效、灵活、稳定地支持企业中的各种运维业务场景。围绕企业业务管理需求,通过可视化的用户编排界面、控件元素和成熟稳定的模块组件,面向编排的运维工具可以支持团队快速搭建轻资产、高效能、个性化的 IT 运维工具,助力传统运维转型,加速企业数字化进程。

免费下载《阿里巴巴DevOps实践指南》

阿里巴巴合伙人和业界多位大佬力荐、何勉、陈鑫等17位阿里资深技术专家联袂出品、阿里十年DevOps经验沉淀总结、阿里巴巴DevOps落地实践一本通。

前往:,下载完整版电子书。

图片[7]-阿里巴巴DevOps实践指南(二十三)| 编排运维-JieYingAI捷鹰AI

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享