DevOps模式: 定义你的DevOps-程序员宅基地

遗憾的是,很少有人真的关心 “DevOps 是什么”,当然其实也不重要。比 DevOps 是什么来说,更重要的是 “DevOps 能做�什么”。据 John Willis 的说法,DevOps 运动的发起人 Patrick Debois 一直拒绝给 DevOps 下定义是一件了不起的事情。 Patrick Debois 他不希望把 DevOps 据为己有。DevOps 应该属于社区,属于每一个愿意投身于 DevOps 目标的个人和组织。

由于第一届 DevOpsDays 奠定 DevOps 的基础。组织者 Patrick Debois 作为第一个"官方" DevOps 发言人。第一届 DevOps 的产出内容给未来的 DevOps 发展方向上起到决定性作用。因此,DevOps 模式中的 DevOps 的相关定义均参考Patrick Debios 的博客。

然而,在我过去经历的不同的 DevOps 转型/改进项目中的经历来看。不同的组织,不同的部门,甚至是同一个部门的人,大家对 DevOps 的理解并不一致。这对 DevOps 长时间在组织内发挥改进作用是不利的。

模式:定义你的 DevOps (Define Your DevOps)

模式名称:定义你的 DevOps (Define Your DevOps)

模式别名:定制化 DevOps 定义 (Customize DevOps Definition)

模式类别: 策略模式

风险: 中 - 采用的时候要注意场景和条件,否则会出现反模式。

价值:中 - 采用该模式产生中期固定的收益,但要持续做才可以获得收益。

见效时间:快 - 2 周内可看到显著改进。

说明:

根据组织的需要,在基于对 DevOps 历史和实践的理解上建立对组织发展有益的 DevOps 的定义。DevOps 的定义包括 DevOps 的组织改进范围,DevOps 的度量,DevOps 的实践。在采用 DevOps 实践的过程中,要先取得 DevOps 共识并基于共识采取 DevOps 度量。否则无法确定 DevOps 带来的改进。

此外,DevOps 的定义会随着组织在的不同阶段而变化。要定期重新定义当前阶段的DevOps 目标,否则会导致"DevOps教条主义" 反模式和" DevOps 复制者"反模式。

DevOps 的定义要在实施 DevOps 的组织内达成共识。否则会陷入"片面的 DevOps" 反模式。

相关模式:DevOps 共识,DevOps 范围,建立 DevOps 度量,短期 DevOps 提升

相关反模式: DevOps 教条主义,DevOps 复制者,片面的 DevOps

相关引用:

https://en.wikipedia.org/wiki/DevOps

https://youtu.be/o7-IuYS0iSE

http://www.jedi.be/blog/2009/12/22/charting-out-devops-ideas/

http://www.jedi.be/blog/2012/05/12/codifying-devops-area-practices/

反模式:DevOps 教条主义 ( DevOps Dogmatism )

如果不定义适合自己的 DevOps,或者对 DevOps 理解太单一。会导致"DevOps 教条主义"和"DevOps模仿者"反模式。

反模式名称:DevOps 教条主义(DevOps Dogmatism)

反模式类别: 策略反模式

不良后果: 无法达到 DevOps 改进预期的效果

常见原因:

  1. 认为 DevOps 是静态,完整的理论体系。
  2. 认为体系化的 DevOps 资料,例如:文献、书籍可以覆盖所有 DevOps 内容。

说明:

DevOps 的目标是"通过一系列行之有效的管理实践和技术实践,以消除软件全生命周期的中的浪费,提升软件及其过程的质量、效率和反馈频率。从而使组织能够更好的适应外部的变化。"

在此基础上,DevOps 相关的实践和模式是不断随着组织上下文和技术上下文的发展而发展的。

注意,DevOps 教条主义的表现形式是 DevOps 复制者反模式。但 DevOps 复制者反模式并不一定会导致 "DevOps 教条主义"反模式。DevOps 教条主义的关键在于 DevOps 的实践是不继续发展的。而 DevOps 复制的关键在于 DevOps 不需要进行定制。

修正模式:定义你的 DevOps,DevOps 度量

相关反模式:DevOps 复制者

相关引用:

http://www.jedi.be/blog/2012/05/12/codifying-devops-area-practices

反模式:DevOps 复制者 (DevOps Copycats)

反模式名称:DevOps 复制者 (DevOps Copycats)

反模式别名:无

反模式类别: 策略反模式

不良后果: 完全复制别人的 DevOps 实践做法,而不进行分析和定制化。导致无法达到 DevOps 转型或者改进的效果。

常见原因:

  1. 简单的复制成功企业的经验,而没有分析成功的上下文。
  2. 成功的案例很少会展示失败的部分。
  3. 没有度量机制进行改进。

说明:

在同一行业内发现成功案例会很容易错误的以为案例可以复制。缺乏对案例成功的上下文分析会导致同样的实践产生了不同的效果。因此,有必要分析自身的上下文和成功案例上下文的区别,或者进行试点以总结经验。以便更好的定制化 DevOps 实践。任何外部的实践都只具备参考意义。

对外部案例的尝试不算是 DevOps 复制者。DevOps 复制者的关键在于尝试后没有进行回顾复盘并不进行改变。

注意,DevOps 教条主义的表现形式是 DevOps 复制者反模式。但 DevOps 复制者反模式并不一定会导致 "DevOps 教条主义"反模式。DevOps 教条主义的关键在于 DevOps 的实践是不继续发展的。而 DevOps 复制的关键在于 DevOps 不需要进行定制。

修正模式:定义你的 DevOps,DevOps 度量

相关模式:和该模式相关的其它模式,其它模式也会导致同样的反模式。

相关反模式:DevOps 教条主义

相关引用:相关资料的引用。

关于 DevOps 模式

DevOps 模式的索引在 Github 上开源,地址是 https://github.com/wizardbyron/devops_patterns 欢迎通过 issue 和pull request 提交你的建议。

你可以通过关注我的公众号了解 DevOps 模式和反模式,也可以加入我的付费知识星球“DevOps 模式” 和所有 DevOps 的实践者共同交流,我将在知识星球中定期回答那些最受关注的问题。

274927-bf46a7dad03b0999.jpg
付费知识星球

关于我

我是顾宇,是一名在埃森哲工作的职业咨询师。我目前专注于产品服务设计、敏捷软件开发、DevOps 、云计算以及应用架构领域的技术和实践落地。热爱阅读、写作、旅行和健身。具有强大的好奇心的经济学和脑科学爱好者,喜欢结交不同领域的朋友,一起体验并分享世界上未知的美好。

欢迎关注我的公众号:顾宇的研习笔记

274927-bdba2dc670dcf0b7.jpg
我的公众号
274927-aae7578c2529db14.png
知识共享署名-禁止演绎 4.0 国际许可协议

本作品采用知识共享署名-禁止演绎 4.0 国际许可协议进行许可

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/byronm/article/details/90585483

智能推荐

mysql基础知识:sql通用语法,及分类(mysql学习纪念)-程序员宅基地

文章浏览阅读349次,点赞10次,收藏11次。2.SQL语句可以使用空格/缩进来增强语句的可读性。1.SQL语句可以单行或多行书写,以分号结尾。3.MySQL数据库的SQL语句不区分大小写。

VS不显示解决方案名称 导致无法添加多个项目_vs 无法创建resx清单名称-程序员宅基地

文章浏览阅读519次。打开vs,工具-->选项-->项目和解决方案-->在右侧选中"总是显示解决方案"-->确定_vs 无法创建resx清单名称

CMC曲线-程序员宅基地

文章浏览阅读4.2k次,点赞8次,收藏15次。CMC曲线(累计匹配曲线)CMC曲线在人脸识别,行人重识别等领域使用的非常多,但却很少有文章去详细的介绍CMC曲线,这是我在researchgate网页上某个博主主页上找到的关于CMC曲线的介绍,个人觉得通过例子讲解的形式来介绍CMC使得更加通俗易懂,让人一看就明白。以下是原文:I think that understanding a CMC curve is much easierb..._cmc曲线

获取双异步返回值时,如何保证主线程不阻塞?-程序员宅基地

文章浏览阅读1.3k次,点赞42次,收藏41次。CompletableFuture的异步执行通过ForkJoinPool实现,ForkJoinPool在于可以充分利用多核CPU的优势,把一个任务拆分成多个小任务,把多个小任务放到多个CPU上并行执行,当多个小任务执行完毕后,再将其执行结果合并起来。

【Windows脚本:每隔5分钟F5键刷新,避免电脑锁屏】_windows防锁屏bat脚本-程序员宅基地

文章浏览阅读958次。objShell.SendKeys “{F5}” ’ 模拟鼠标中键点击。WScript.Sleep(300000) ’ 延时5分钟。_windows防锁屏bat脚本

centOS 快速安装和配置 NVIDIA docker Container Toolkit_nvidia container toolkit-程序员宅基地

文章浏览阅读2.3k次。CentOS快速安装配置NVIDIA Container Toolkit_nvidia container toolkit

随便推点

严重: 在路径为/book的上下文中,Servlet[jsp]的Servlet.service()引发了具有根本原因的异常java.lang.ClassNotFoundException: org.a_严重: 在路径为/bookmanage的上下文中,servlet[jsp]的servlet.serv-程序员宅基地

文章浏览阅读6.3k次。严重: 在路径为/book的上下文中,Servlet[jsp]的Servlet.service()引发了具有根本原因的异常java.lang.ClassNotFoundException:这种报错,除了其他人的:还有一种可能:名字不一样,哪怕是空格哪怕是一个空格!..._严重: 在路径为/bookmanage的上下文中,servlet[jsp]的servlet.service()引发了具

ios砸壳_ios砸壳需要 闪退怎么砸-程序员宅基地

文章浏览阅读6.2k次。frida-ios-dump源码地址:​​​​​​GitHub - AloneMonkey/frida-ios-dump: pull decrypted ipa from jailbreak devicefrida-ios-dump是基于frida开发的一键砸壳工具,需要配置frida环境手机配置1)越狱状态2)安装openssh3)安装fridaMac配置1)安装frida,命令行:sudo pip install frida-tools (没有安装pip的话需要先安装pip)_ios砸壳需要 闪退怎么砸

IOS-----越狱开发_depends libundirect.depends firmware-程序员宅基地

文章浏览阅读2.6k次,点赞3次,收藏2次。1.制作系统应用程序。 ios的程序分为mobile和root权限模式,我们一般用xcode开发的app取得的是mobile权限,但是ios越狱后安装的app如:Cydia、91助手、PP助手等均为系统级应用程序。系统级app的好处是:用不无法手动删除、取得完全的root权限、可设置开机启动项等等功能。通过xcode打包的ipa是无法安装成为系统app的,所以我们需要另外一种打包方式:_depends libundirect.depends firmware

C++--继承基本概念、对象赋值转换、作用域_什么是赋值转换-程序员宅基地

文章浏览阅读254次,点赞5次,收藏2次。继承1. 继承的基本概念1.1 继承的定义1.2 继承基类成员访问方式的变化2. 基类和派生类对象赋值转换3. 继承中的作用域1. 继承的基本概念继承是面向对象程序设计使代码复用的最重要的手段,允许在保持原有类特性的基础上进行扩展,增加功能,产生新的类,称为派生类/子类。继承是类设计层次的复用。1.1 继承的定义派生类 : 继承方式 基类class Student : public Person1.2 继承基类成员访问方式的变化父类成员在子类中的访问权限(除过父类中的私有成员):_什么是赋值转换

模式识别(2)KNN分类_usps数据集是在哪里提出的-程序员宅基地

文章浏览阅读2.3k次,点赞10次,收藏36次。基于USPS和UCI数据集的近邻法分类一、问题描述 使用近邻算法进行分类问题的研究,并在USPS手写体数据集和UCI数据集上的iris和sonar数据上验证算法的有效性,并分别对近邻法中k近邻算法、最近邻算法和Fisher线性判别进行对比分析。二、数据集说明2.1 USPS手写体 USPS,美国邮政署,是美国联邦政府的独立机构,其中的手_usps数据集是在哪里提出的

Access根据出生日期计算年龄_Excel表格中怎么用出生日期计算年龄?这些方法好用哟...-程序员宅基地

文章浏览阅读1.9k次。  平时工作中用到Excel表格的几率特别大,也积累了一些小技巧,今天就给大家分享一下计算年龄的方法。  在Excel表格中利用“系统时间”和“出生年月”来计算“周岁年龄”、“虚岁年龄”和“实际年龄”是非常方便的,特别是人事管理和工资的统计中遇到的可能性比较大,一起来看一下计算年龄的方法吧。  方法一  第一步,如下图所示,先把需要计算年龄的出生日期输入到表格中。   第二步,然后在B2单元格中输..._access计算年龄

推荐文章

热门文章

相关标签