探索ITIL和DevOps的边界(itil与devops)

其实在今天的运维领域,ITIL和DevOps之间的冲突还是蛮明显的,有些是表现在产品上,有些是表现在思维/理念上。ITIL在产品上以流程为核心目标的设计,很难满足自动化的要求,DevOps极力推崇工具/平台/自服务文化;理念也是如此,ITIL以流程为先介入到一个企业的IT过程。本质上来说,这两者不是同一个东西,但聚焦到运维领域,这个问题值得对比探讨一下。

探索ITIL和DevOps的边界(itil与devops)

在EXIN官方给的DevOps最新框架中,把很多因素糅合到了一起,对于整个产品生命周期来说,可以看到几个典型的阶段,如敏捷管理、持续交付、IT服务管理。

探索ITIL和DevOps的边界(itil与devops)

当然这篇文章不是简单的从DevOps与ITIL的全/子集的关系来探讨,那样就可以直接下结论,退出讨论作罢。

首先让我们来看看持续交付所声明的原则:

•为软件的发布创建一个可重复且可靠的过程

•将几乎所有事情自动化

•把所有的东西都纳入版本控制

•提前并频繁地做让你感到痛苦的事情

•内建质量

•“DONE”意味着“已发布”

•交付过程是每个成员的责任

•持续改进

其中有一条讲——“将几乎所有事情自动化”,持续交付覆盖了【部署】和【运营】两个运维相关阶段。在过去,我也一直强调运维其实也是在做交付,其实也是由此而来。那么什么是部署自动化?什么是运营自动化?自动化部署,就是通过部署平台,把相应的变更推送到开发、测试和生产环境,不依赖某个人或角色来执行。这里面就强调的部署平台能力是针对所有环境——开发、测试、生产等等,并且要支持灰度部署、蓝绿部署等等。运营是服务线上运行阶段,这里面包含了监控、服务变更、服务优化、容量预测与规划等等。

其实IT运营和产品运营有很多的类似之处,只是两者看到了对象的不同,一个是IT对象,一个是产品对象。所谓运营都是在建立一套服务流程或过程(有ITIL部分),整合公司内外有限的资源所展开的一系列活动,以便更好的服务客户。狭义的IT运营可以理解成维护,广义的IT运营可以包含产品体验优化、用户满意度提升、应用性能管理、安全、质量控制等等,质量控制算是IT质量运营的一个维度。

既然在前面讲到了自动化的原则,那么针对运营过程的自动化到底该如何做?如下图:

探索ITIL和DevOps的边界(itil与devops)

可以把流程或者过程分成两部分:一部分面向管理过程的“离线任务”为主,一部分是面向“在线服务”的执行过程,管理与执行兼顾。从互联网现状来看,ITIL的作用力越靠近应用越弱,在传统行业这样的表现力到还没体现差异。

两种流程如何结合,有三种模式:

探索ITIL和DevOps的边界(itil与devops)

左边是管理流程,右边是DevOps执行流程

模式一:每一个流程节点都需要调度一个执行工具去作业。

优点:流程效率大大提高,整合程度高。

适用场景:CMDB资源申请流程、一些配置变更流程等等。这个模式已经不是从审核者的视角去看待,而是关注执行者的视角。

探索ITIL和DevOps的边界(itil与devops)

CMDB的主机上架流程片段

Process是流程平台,CMDB是配置管理平台,RFID是主机管理平台。流程平台已经开始直接去驱动相关平台。这是当时设计流程的时候(对应【选择机柜】环节),该环节和其他平台之间交互的时候画的交互图。

探索ITIL和DevOps的边界(itil与devops)

模式二:审批流完成之后,执行流程才得以进行。

优点:流程规范优先、兼顾流程自动化能力,但流程本身的效率没有多大的改变。

适用场景:对于大规模的变更或者发布类工作,或者传统企业的变更流程。该模式是从管理者视角出发,把效率与流程兼顾起来。

探索ITIL和DevOps的边界(itil与devops)

模式三:在执行流程中设置一个节点,定时去check管理流程的审批状况。

优点:效率优先、规范之后。

适用场景:互联网化的变更发布流程、持续交付流程、运维变更流程等等。该模式是从执行者的视角出发,以效率为第一原则。

例子:这个模式遇到多个真实的客户场景,我都推荐采用类似的方案。特别是一些流程不在ITIL中的情况,比如说他们使用JIRA系统做研发过程管理(如发布流程),而运维部署平台则是独立一套,两者如何打通和整合?JIRA系统中会有某次发布的流程,此时在以应用为维度的变更升级流程模板中,会有一个Check的节点,它主要用来查看ITIL流程的状态,如果审批通过,部署工具中的执行流程则往下执行,称之为“红绿灯机制”。把ITIL比作马路上的红绿灯,把DevOps执行工具当成马路上的车子,有序、效率、安全等各方面都能兼顾。

探索ITIL和DevOps的边界(itil与devops)

红绿灯的复杂度也是视道路复杂度、拥塞情况、车流情况等多方面因素决定,这也就如同企业的流程复杂也各不相同,不要一概而论。

探索ITIL和DevOps的边界(itil与devops)

今天思考DevOps,要用结果来定义你的IT模式是不是DevOps,比如说版本交付周期,故障恢复能力等等,这一定是效率优先的。同样我们思考ITIL流程实践,也要兼顾效率,带着工具思维去简化流程。不可否定,他们有各自存在的价值和场景,用管理和执行的方式来定位,至于流程的模式,我也总结了三种供参考。

@ITIL是面向管理过程的;DevOps是面向IT运营过程的。

@ITIL是规则引擎;DevOps是执行引擎。

@ITIL是强调规范的;DevOps是强调敏捷的。

@ITIL是以离线任务管控为目标的;DevOps则以在线服务管理为目标的。

@ITIL不等于追求稳定;DevOps更不是以牺牲稳定而一味追求效率。

……..

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年9月7日 上午8:46
下一篇 2022年9月7日 上午8:48

相关推荐

  • 科研项目成本管理

    科研项目成本管理 科研项目成本管理是项目管理中非常重要的一环,它涉及到项目预算、成本分配、成本控制和成本报告等各个方面。在科研项目中,项目成本管理不仅仅是为了控制项目成本,更是为了…

    科研百科 2024年9月11日
    24
  • 数据管理系统项目

    数据管理系统项目 随着信息技术的不断发展,数据管理系统已经成为了企业或组织中不可或缺的一部分。一个高效的数据管理系统可以帮助企业或组织更好地管理和利用数据,提高业务决策和创新能力。…

    科研百科 2024年12月12日
    0
  • 施工方案小程序

    施工方案小程序:轻松设计,高效管理 随着现代建筑行业的不断发展,施工方案的设计和管理变得越来越重要。传统的手动设计方式不仅效率低下,而且容易出现错误,给施工带来了不必要的风险。因此…

    科研百科 2024年10月16日
    0
  • 项目的团队管理(系统项目团队管理)

    系统项目团队管理 系统项目团队管理是现代软件开发过程中非常重要的一部分。一个有效的系统项目团队管理可以帮助团队更好地协作,提高项目的效率和质量,并最终实现商业目标。本文将介绍系统项…

    科研百科 2024年6月8日
    67
  • 新教师科研培训心得(新教师参加科研项目心得体会)

    作为新教师,我有幸参加了一项科研项目,这项经历不仅让我学到了很多新的知识和技能,也提高了我的科研能力和团队协作能力。在项目中,我负责的部分是论文的撰写和实验的设计,我认真参与了各个…

    科研百科 2024年4月5日
    104
  • 建筑项目工地管理系统

    建筑项目工地管理系统 随着现代建筑行业的快速发展,建筑项目工地管理系统已经成为了项目管理中不可或缺的一部分。建筑项目工地管理系统可以帮助项目经理和工程师更好地管理项目进度、资源、质…

    科研百科 2024年12月26日
    0
  • 办公协作应用平台

    办公协作应用平台:让工作更高效 随着现代办公的数字化和自动化,越来越多的企业开始使用办公协作应用平台来管理和协调员工的工作。这些平台提供了各种工具和功能,帮助员工更好地协作和完成任…

    科研百科 2024年8月24日
    31
  • 科研项目主持人是什么意思(科研项目主持人必须是副教授吗)

    科研项目主持人是否必须是副教授? 科研项目主持人的资质问题一直是学术界关注的话题。一般来说,科研项目主持人需要具备较高的学术水平和丰富的研究经验,同时还需要拥有一定的科研能力和创新…

    科研百科 2024年4月6日
    99
  • 施工进度计划由谁编制

    施工进度计划由谁编制是一个至关重要的问题,因为它直接关系到项目的质量和进度。施工进度计划通常由项目管理团队编制,具体由项目经理、工程师和设计师共同制定。 编制施工进度计划需要考虑到…

    科研百科 2024年8月30日
    48
  • 智能家庭系统项目管理

    智能家庭系统项目管理 智能家庭系统项目管理是一个复杂而重要的项目,需要在整个项目生命周期中协调各种资源和利益相关者。智能家庭系统项目的成功不仅仅取决于项目团队的技能和经验,还取决于…

    科研百科 2024年12月27日
    0