首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向新手介绍DevOps的有效定义是什么?

向新手介绍DevOps的有效定义是什么?
EN

DevOps用户
提问于 2017-04-05 17:26:00
回答 6查看 1.8K关注 0票数 24

我已经做了/创建了许多与SCM相关的演示,现在我正在尝试“升级”到它的后续DevOps。

在我的演讲中,我一直想做的是想出一个介绍幻灯片,其中包含了我想要传达的信息(然后我在演讲的其余部分详细阐述了这一点)。当我这样做的时候,我试着回答我自己的问题,比如“如果我有10到20秒的时间(只有!)来向新来的人解释,我会用什么1到3个短语?”

我以为我知道DevOps的真正含义以及它是关于什么的。但我已经看到了DevOps的一些奇怪用法/上下文(甚至在DevOps.SE上也是如此)。这让我怀疑,也许我认为DevOps是完全错误的。

那么,DevOps的定义通常是什么呢?

EN

回答 6

DevOps用户

回答已采纳

发布于 2017-04-06 17:44:02

简略的

DevOps

来自维基百科

DevOps ( 剪裁化合物 of "软件DEV私奔“和"信息技术OP交火S")是一个术语,用于指一组强调软件开发人员信息技术 (IT)专业人员协作和交流,同时自动化软件交付和基础设施更改过程的实践。它旨在建立一个能够快速、频繁和可靠地发生建筑测试发布软件的文化和环境。

来自概述

显示DevOps作为开发 (软件工程)、运营质量保证 (QA)的交集的Venn图

虽然DevOps没有单一的“工具”,但是有一组工具,也称为DevOps工具链

显示DevOps工具链中各个阶段的插图

图解DevOps

下面是关于DevOps.SE的一些问题的几个引号,这些问题似乎都符合/证实了上面DevOps描述的一部分:

DevOps不是角色

下面是一些关于DevOps.SE的问题的引语,它们似乎都说明了DevOps不是一个角色:

票数 13
EN

DevOps用户

发布于 2017-04-08 21:09:23

在我目前的职位之前,我担任过软件开发、网络运营和系统管理方面的职务,我已经在DevOps上作为一名顾问与不同的客户进行了近五年的实践和咨询。根据我个人的经验,DevOps有很多种味道。

组织模式

DevOps反模式:

  • NoOps和NoDevs --在最严格的意义上,并不是严格的DevOps,但是,这些团队都构建和操作软件,而没有开发和操作之间的分界线。这些团队面临的挑战可以归结为成熟,开发团队可能是专业的软件开发人员,但新手操作员,而visa则相反。
  • DevOps桥--在这里,一个或多个团队负责接收开发团队的工作,并"生产化“它使其可操作。到目前为止,我们面临的挑战有两个,即开发DevOps和DevOps→Operations。
  • DevOps团队--可以说,如果团队有责任构建支持启用DevOps的操作模型的工具,那么这个团队就可以工作,但是,它可能应该被称为“工具团队”或“平台团队”。

DevOps模式:

  • 嵌入式DevOps --通常被称为平台工程( Platform Engineering ),在这个团队中,有一个人负责交付自动化、工具和基础设施,用于提供和部署解决方案,有时还包括操作软件--在我看来,后者实际上是DevOps的代表。
  • 制度化的DevOps --项目团队共同负责软件包的开发和操作,构建共享的所有权和正反馈循环。

Practice

DevOps的实际实践建立在其他几种实践之上,即:

以上每一种做法都是建立在另一种基础之上的,不可能不遵循一种做法,然而,这意味着缺少一个重要的反馈周期,这可能表明“错失了机会”。遵循任何其他实践和DevOps之间的关键区别在于软件在生产中的操作。

三种方式

在“凤凰工程”一书中,金基因和他的合著者描述了DevOps的三种方式

系统思维

第一种方法强调整个系统的绩效,而不是某一特定的工作或部门的绩效-这可以是一个大部门(例如,开发或IT业务),也可以是与单个贡献者(例如开发人员、系统管理员)一样小的部门。

根据我的经验,开发人员开始考虑操作问题和非功能需求,从而实现了这一目标。这在很大程度上是DevOps文化方面的一部分。

反馈环的

放大

第二种方法是创建从右到左的反馈循环。几乎任何过程改进计划的目标都是缩短和放大反馈回路,以便不断地进行必要的修正。 我通常通过持续集成/交付/部署以及共享监视和警报来实现这一点,因此它非常适合DevOps的工具组件。 持续实验的

培养与

学习

第三种方法是创造一种培养两件事的文化:不断的实验、冒险和从失败中吸取教训;以及理解重复和实践是掌握的先决条件。

这非常适合于文化空间,尽管它在很大程度上依赖于工具和过程,以使文化得以发展。

票数 13
EN

DevOps用户

发布于 2017-04-07 19:07:09

我听说过许多关于DevOps的不同定义。它们包括:

  • 处理操作任务的开发人员
  • 一个人做两倍的工作(在相同的时间内)
  • 开发人员和操作团队相互协作。
  • 用于开发人员工具的操作(在"Web“中)
  • 创建和维护开发工具的人的职务名称。
  • 自动化在操作中的应用
  • 在操作中使用公共云
  • 将操作、开发和质量保证的各个方面结合在一起的工作
  • 这份工作需要帮助开发团队和运营团队一起工作。
  • 打破团队间障碍的哲学
  • 将基础设施视为代码
  • 当前软件工程师进入运营时你得到了什么?
  • 一个完全没有意义的流行语

对于DevOps到底是什么,公众并没有共识。几年前,我们在“敏捷”和有书面定义方面也遇到了类似的问题。

当向新来的人介绍你的概念时,我会把重点放在介绍这些概念上,而不是应用标签,否则他们最终会听到相互矛盾的定义并感到困惑。例如,如果您试图讨论基础设施作为代码,请告诉他们您正在将基础设施作为代码来讨论。你越具体,你就越好,即使有了一致的定义,大多数公司也会更加关注哲学的某些部分。

票数 6
EN
页面原文内容由DevOps提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://devops.stackexchange.com/questions/788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档