DevOps是一种文化,不是角色!

一、DevOps是一种文化,不是角色!

软件无处不在。在如今的世界里,每个主流公司/组织都和软件开发息息相关,并且公司需要向软件一样运作。更快且更敏捷,同时保证安全性和可靠性,这样的要求前所未有的强烈。这样的压力通常体现为项目被取消或者被暂停。这正是DevOps尝试解决的问题:如何

企业内部的开发,运维和其他组织协作,达成一系列共同的目标,更快更可靠地向客户和终端用户交付软件?支持DevOps项目的核心技术实践包括让开发和运维团队为软件交互标准化一系列常见的敏捷流程和工具。这通常包括:

 1.自动化的配置管理,测试和应用部署;

   2.应用程序和基础架构代码的版本控制,助力协作和回滚;

   3.CI(持续集成)自动化代码构建,并且通过更频繁,风险更低的版本带来更快的反馈和迭代。

DevOps是文化的转变,是关于每个人如何以正确的方式参与到工作当中。在软件定义的世界里,出现了一系列问题。

我们如何让某些东西快速进入生产环境?我们怎么知道使用的是最佳方案呢?我们能多快地使用改进和更新?

DevOps试图通过尽早地在交互型流程里涉及到所有人从而让大家都参与进来。达到DevOps的成功需要首先理解核心业务优势。企业能够更快地前进,下线时间更短,并且安全问题更少。

Mike Dilowrth,敏捷和DevOps转型领导者,最近说:

DevOps是一种文化,不是角色!整个公司都需要参与到DevOps里才能成功。

DevOps需要高级领导层的支持,也需要和最终产品相关的所有人的参与,而不仅仅是开发和运维部门。

我之前读过一篇Puppet的白皮书,关于如何构建高效的IT团队。其中开始部分就提出了一些有意思的理论和实践,这里我想分享给大家。

DevOps和行业,公司规模以及技术环境密切相关。至少,在企业中领导过成功DevOps转型的IT经理们,总结时都认为,DevOps指的是持续学习和改进的过程,而不是某种最终状态。

 二、构建业务用例

和很多IT领导者一样,你想要的不仅仅是交付前所未有的多的产品和服务,而且还要更快更好地交付——并且没有可靠性和安全性的问题。DevOps看上去确实会有所帮助!但是……在真正开始之前,你就已经开始让团队产生怀疑了。

怎么才能为DevOps制定清晰,令人信服的场景,可以降低担忧,并且将怀疑转化为成功呢?

上面的问题是个良好的开始。构建业务场景是成功的DevOps转型的重要部分(特别是在大型企业里)。在一场有名的TED演讲里,Simon Sinek认为伟大领导者和积极变化的催化剂的共同点是:

让人们信服的不是领导者在干什么,而是为什么要这么干。

在构建企业对DevOps转型的认同方面,也是同样的道理。简单宣布“我们要做DevOps”并不会让大家真正开始。相反,你需要令人信服地回答这样的问题“为什么?为什么是现在?”。你的所有客户都希望速度更快并且不牺牲系统的可靠性和稳定性——在传统企业里这个目标直接自相冲突。开发人员的任务是尽可能快地让新特性上生产环境。同时,衡量运维团队的指标是在线时间和系统性能。因此这让团队之间变得对立而不是并肩作战。因此,生产环境的部署一直被延迟和错误所困扰,部署发生的频率比业务实际需要的频率低很多。

三、让Dev支持DevOps

更快的部署和反馈回路正是开发人员想要的:代码可以更快地从他们的笔记本交付到用户手里,持续交付带来快速的迭代和改进。在早期pilot项目里跟踪变更时间的改进是个不错的开始:

 1.代码从开发的笔记本到生产环境需要多久?

   2.跟之前的时间相比,有什么改进么?(你是不是自动化了更多的构建流程?你有没有降低需要部署的ticket数量?)

   3.现在和以前相比多久需要一次部署?

   4.部署有没有变得更为容易并且更快了呢?

四、让Ops支持DevOps

当开发人员和运维人员紧密工作时,运维人员会受益。可以从同意使用通用的工具链开始,让两个组的人采用相同的工具一起工作,在开发中集成,测试和部署基础架构代码。这样可以让开发人员更为积极地参与到部署和问题定位中,进一步打破以前的障碍,同时提高速度和可靠性。跟踪运维团队关心的度量矩阵将给整个团队带来好处——包括Dev和QA:

   1.在线/下线时间:是不是能够更好地达到服务级别的要求?下线时间减少了么?

   2.变更失败率:故障是不是变少了?

   3.恢复的平均时间:故障发生时,回滚到已知的最近的好状态,这样的回滚时间是不是减少了?

五、从小处着手,持续成长

那么,如何开始度量这些DevOps的影响,并且支持自己的业务场景呢?从有特定任务和项目的小地方开始。Terri Potts (Raytheon的杰出工程师&软件技术总监)认为这样的方案非常高效。

你无法一下子改变整个程序,但是可以让一些子团队开始尝试正确的方向。从外部引入一些人来自动化一些测试或者build,会很有用,同时给团队一些实际的例子。

Raytheon让他的一个团队从每个月两次集成转变为一个晚上运行27次,这是自动化了build后的结果。在单个项目里这是一个很大的成功,这也成为了Portts如何在企业内孵化DevOps的典型示例。

从小处开始,文化转型也要跟上——不要期望一开始就能让所有人都信服DevOps。实际中,在特定项目的小型组织内赢得大家的支持,就赢得了会在公司其他地方帮助宣传DevOps的大使们,这会带来乘数效应。随着业务场景的构建,还需要清醒认识到要达成长期DevOps成功的可能会遇到的障碍。

原文链接:https://dev.jlelse.eu/devops-is-a-culture-not-a-role-be1bed149b0

微信公众号:51Reboot运维开发

原文地址:https://www.cnblogs.com/reboot51/p/8608253.html

时间: 2024-11-07 22:09:37

DevOps是一种文化,不是角色!的相关文章

数据驱动是一种文化

数据驱动是一种文化 大数据这件事,整体上还是说的多一些,做的稍微少一点.大数据可以是荒凉高原上波澜壮阔的机房,也可以润物细无声般融入到日常生活和工作.换句话说,大数据应该是一种文化. 在个人层面,很多人对数字和计算并不敏感,通过经验进行判断很容易出现偏差,因为所知所感与真实世界之间有很大差别.数据驱动的首要条件是要针对业务痛点提出问题,层层深入且具备逻辑推理特性:这之后才是进一步转化为数据问题,然后从数据角度去建立决策逻辑.如果是可视化.动态的决策过程,那肯定是有助于提高效率,这也是目前智能化的

开挂也是一种文化,里面藏着程序员的武侠情结

尽管在DOS时代,就已经有了一款名为FPE(整人专家)的游戏修改软件,在window95上市后,亦有诸如Game Master之类的软件占据市场,但对于80后而言,金山游侠才是他们与游戏最亲密接触时的良伴. 有些人会说,他们当时选择的是另一款叫东方不败的产品. 听名字就知道,国产的这些游戏修改器,或者说外挂的前辈,都是非常有武侠范的. 为什么要如此说呢?其实外挂这个词汇的由来,本身就和做游戏研发的程序员们自身武侠情怀密不可分. 彼时,国产游戏研发刚刚兴起,几乎在单机游戏市场上占据主导地位的都是武

走进DevOps

最近看到很多关于DevOps的文章,作为在这一领域摸爬滚打多年的笔者来说,也想写一些篇文章,介绍一下笔者对DevOps的理解 什么是DevOps 百度百科 DevOps(英文Development和Operations的组合)是一组过程.方法与系统的统称,用于促进开发(应用程序/软件工程).技术运营和质量保障(QA)部门之间的沟通.协作与整合.它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作. 维基百科 DevOps (a portmanteau o

一分钟告诉你究竟DevOps是什么鬼?

历史回顾 为了能够更好的理解什么是DevOps,我们很有必要对当时还只有程序员(此前还没有派生出开发者,前台工程师,后台工程师之类)这个称号存在的历史进行一下回顾. 如编程之道中所言: 老一辈的程序员是神秘且深奥的.我们没法揣摩他们的想法,我们所能做的只是描述一下他们的表象. 清醒的像一只游过水面的狐狸 警惕的像一位战场上的将军 友善的像一位招待客人的女主人 单纯的像一块未经雕琢的木头 深邃的像一潭幽深洞穴中漆黑的池水 程序员开发了机器语言,机器语言又产生了汇编语言,汇编语言产生了编译器,如今的

什么是DevOps?

DevOps是什么?是开发+运维么?每个人都DevOps的理解都不尽相同,下面是一组对DevOps的定义,通过这组定义,我们基本可以看清DevOps是干啥的. 一组过程.方法与系统的统称.用于促进开发.运维和质量保障部门之间的沟通.协作与整合. DevOps是一种文化转变,或者说是一个鼓励更好地交流和协作(即团队合作)以便于更快地构建可靠性更高.质量更好的软件的运动. DevOps 是一种工程模式,本质上是一种分工,通过对开发.运维.测试,配管等角色职责的分工,实现工程效率最大化,进而满足业务的

软件开发模式,DevOps

参考文献:http://www.cnblogs.com/jetzhang/p/6068773.html 历史回顾 为了能够更好的理解什么是DevOps,我们很有必要对当时还只有程序员(此前还没有派生出开发者,前台工程师,后台工程师之类)这个称号存在的历史进行一下回顾. 如编程之道中所言: 老一辈的程序员是神秘且深奥的.我们没法揣摩他们的想法,我们所能做的只是描述一下他们的表象. 清醒的像一只游过水面的狐狸 警惕的像一位战场上的将军 友善的像一位招待客人的女主人 单纯的像一块未经雕琢的木头 深邃的

基于TFS的.net技术路线的云平台DevOps实践

DevOps是近几年非常流行的系统研发管理模式,很多公司都或多或少在践行DevOps.那么,今天就说说特来电云平台在DevOps方面的实践吧. 说DevOps,不得不说DevOps的具体含义.那么,DevOps是什么呢?是开发+运维么?每个人都DevOps的理解都不尽相同,下面是一组对DevOps的定义,通过这组定义,我们基本可以看清DevOps是干啥的.在这众多的解释中,我认为有一种解释可以更贴切:DevOps是一种能力,具备此能力的团队可以高质量.快速的交付软件产品或服务.这个总结定义道出了

你所不了解的DevOps

本文摘自人民邮电出版社异步社区<DevOps开发运维训练营>一书,点击查看http://www.epubit.com.cn/book/details/7709关注微信公众号[异步社区]每周送书 DevOps开发运维训练营 一旦建立了创新的文化,即使那些并非科学家或者工程师的人--诗人.演员.记者--也能以团体的形式,接受科学文化的意义.他们信奉创新文化的概念.他们以促进这种文化的方式投票.他们不会反对科学,也不会反对技术. --Neil deGrasse Tyson 在本文中,我们讨论如何快速

2019 DevOps 必备面试题——DevOps 理念篇

原文地址:https://medium.com/edureka/devops-interview-questions-e91a4e6ecbf3 原文作者:Saurabh Kulshrestha 翻译君:CODING 戴维奥普斯 你是一位 DevOps 工程师还是想进入 DevOps 领域的新手?如果是,那么你已经把握住了未来趋势.在本文中,我列出了几十个在雇佣 DevOps 工程师时,面试官可能会问到的问题以供参考. 理解 DevOps 的关键点在于它不仅仅是一种技术集合,而是一种思维方式.一种