【AICon】 如何构建高效的 RAG 系统?RAG 技术在实际应用中遇到的挑战及应对策略?>>> 了解详情
写点什么

DevOps 不是个技术问题,而是个业务问题

  • 2011-04-27
  • 本文字数:2096 字

    阅读完需:约 7 分钟

当然,DevOps 不乏反对者。反对意见不一而足,有人认为 DevOps 是个误导(DevOps 只是系统管理的一个新名字而已,新瓶装老酒),有人对 DevOps 不屑一顾(DevOps 只是一些疯狂开发者的疯狂想法,他们想摆脱运维人员,或者,DevOps 只是一些疯狂运维人员的疯狂想法,他们想像开发者一样工作),甚至有人公开抨击(可惜的很,他们的言论往往毫无逻辑)。

过去的九个多月时间里,我在公共论坛和客户公司内部竭力推进DevOps 运动。正是在那段时间里,我开始注意到人们对DevOps 存在一些常见的误解,我认为正是这些误解使得一些人在初次接触DevOps 时产生消极的反应。在这里,我将尝试澄清这些误解:

DevOps 不是个技术问题。

尽管在解决 DevOps 问题的方案中,技术是个关键的组成部分,但是,DevOps 它自己本质上是个业务问题。

什么业务与 DevOps 有关?

在任何公司里,最根本的业务流程都是这样:使一个最初的想法经过流程最终赚到钱。

需要各种各样的活动组成这个业务流程,这其中一些活动是技术驱动的,其他一些则是人驱动的。这里正是 IT 所有不同功能所发挥作用的地方。开发者、QA、架构、发布工程、安全、运维,它们都在这一流程中发挥自己的作用。

但是如果抛开这一业务流程的上下文,看看我们还剩下什么?是的,我们有一伙人,还有一些部门,它们各自做着它们自己的分内事。但是我们失去了真正做事的动力,到处是效率低下的工作、浪费、冲突和部门间的孤立。从表面上看,每个人都在仅仅为自己工作。

如果没有业务流程这一上下文,还会发生什么事呢?我们的工作将失去意义并最终消失。实现业务目标是我们得到薪水和花时间做事的原因。如果没有业务目标或者我们所做的事情根本对实现业务目标都没有助益又会怎样呢?糟糕,我们所做的一切都变成了一种爱好。想想吧,有谁会傻到给爱好付薪水呢。

DevOps 的立足点正在于对市场压力做出尽可能快速、高效和可靠的反应,从而实现业务目标。抛开业务,谈论 DevOps 问题毫无意义,跟别提花时间解决这些问题了。

DevOps**** 听起来非常像敏捷所要达到的目标,难道不是这样吗?

如果 DevOps 和敏捷所要达到的目标听起来很相似,那是因为他们的目标就是一致的。但是敏捷和 DevOps 是两个截然不同的事物。我们可以在敏捷开发里做得很好,但是我们依然会面临很多 DevOps 问题。相反,我们完全可以不采用任何敏捷开发方法(尽管这越来越不现实),但是却在解决 DevOps 问题方面做得很好。

我喜欢将敏捷和 DevOps 描述为两个相关联的思想,它们都有一个共同的祖先,这个祖先就是精益,但是它们关注了不同的层面。敏捷深度关注于改善一个主要的 IT 功能(交付软件),同时,DevOps 关注于对跨 IT 功能的流程和交互的改善(它拉伸了整个开发生命周期的长度,使其包括了运维)。

可是,我所理解的 DevOps,全部是关于很酷的工具?

技术几乎能使所有业务流程更加高效、可扩展和可靠。但是,我们必须记住:工具始终只是工具。

很有可能,我们原本打算改善我们的组织,但是新工具的使用却使得原有的坏习惯和支离破碎的流程更加恶化。如果想在改善业务流程上取得理想的效果,那么我们必须明确为什么要使用该工具以及如何最有效的利用该工具。

实际上,当我们明确我们的 DevOps 问题究竟是什么,以及如何改善流程以减少 DevOps 问题时,对工具的讨论往往变得非常简单(如果还值得讨论的话)。

因为新兴的 DevOps 运动主要是技术人员在推动,所以很容易理解为什么人们很兴奋的直接去讨论工具。但是,在争论究竟是 Puppet 好还是 Chef 更好(译者注:Puppet、Chef 都是开源的系统配置管理工具),应该围绕文件还是围绕包部署之前,也许我们更应该做的是:让所有人都知道为什么需要这些工具以及期望中的业务流程改进是什么,这才是重点!

既然 DevOps 是关于业务流程的,那么为什么叫它“DevOps”呢?

在我看来,早期 DevOps 的一个不足之处是没有直接地明确 DevOps 问题的真实范围,即它的问题域到底有多大。经过一年的观察和思考,事实证明,我们正在解决的是对所有企业来说最大的问题之一:如何面对市场压力做出尽可能迅速的反应从而实现业务目标。

可惜的是,DevOps 必须从某个地方开始,于是我们碰到了一个几乎非常普遍的问题:开发者文化与运维文化之间存在的冲突和脱节。尽管每个企业的组织结构图各不相同,但是为了有个共同的讨论点,我们能够非常容易的将其划分为开发阵营与运维阵营(当然,现实世界远比这复杂和无趣)。

如上图所示,在开发和运维之间存在着一面混乱之墙,在这种情况下,大部分早期 DevOps 的注意力都放在在改善部署活动上。因为部署活动构成了整个IT 组织的大部分工作,所以从部署开始改善,这是一个合理而自然的选择。

也许Patrick 应该将他的第一次活动称为“业务人员开发人员质量保障人员安全人员运维人员云服务用户日”或者“比敏捷更牛叉日”又或者其他的什么东西,但是我强烈怀疑有人会认为其炫耀,所以低调的结果就是DevOps 叫了DevOps。

声明:本文已获原创作者Damon Edwards 的许可。

原文链接: http://article.yeeyan.org/view/139551/170318

英文链接: http://dev2ops.org/blog/2010/11/7/devops-is-not-a-technology-problem-devops-is-a-business-prob.html

2011-04-27 00:003383

评论

发布
暂无评论
发现更多内容

GitHub开源的文言文编程语言、程序生成中国山水画、格律诗编辑程序

不脱发的程序猿

GitHub 开源 编程语言 传统文化

干好开发者关系的十个职业发展秘诀

开发者关系

开发者关系 技术运营 DevRel

一线大厂最新总结Spring Security Oauth2.0认证授权全彩笔记

Java架构追梦

Java 阿里巴巴 架构 面试 spring security

青海大学智慧微能源数字孪生可视化系统

ThingJS数字孪生引擎

大前端 可视化 3D可视化 数字孪生

一文带你全面了解java对象的序列化和反序列化

华为云开发者联盟

Java 序列化 java对象 反序列化 Serializable接口

拥有一个高性能低延时数据库是什么样的体验?

华为云开发者联盟

数据库 华为云 GaussDB GaussDB(for Cassandra) 低延时

消除数据孤岛,华为云DRS让一汽红旗ERP系统数据活起来

华为云开发者联盟

数据库 GaussDB 数据孤岛 华为云DRS ERP

【LeetCode】叶子相似的树Java题解

Albert

算法 LeetCode 5月日更

被解救的代码 - 代码即服务时代来了!

Serverless Devs

阿里云 Serverless 云原生

5月20日,GaussDB将有大事发生

华为云开发者联盟

数据库 云原生 华为云 GaussDB TechWave

GitHub霸屏文章!清华教授手写保姆级笔记Scala - 类,网友:太香了

牛哄哄的java大师

Java scala

来了!这份阿里P7大佬梳理的Java注解和反射精髓笔记,信息量过大

飞飞JAva

Java

前端项目上传图片,压缩,拍照图片旋转解决方案

Vue js canvas axios

阿里P7:每个码农都应该知道的MySQL主从复制方法,看这篇就够了

牛哄哄的java大师

Java MySQL 数据库

Apache Hue介绍

大数据技术指南

hue 5月日更

如何下载和保存YouTube上的中英双语字幕和视频

flyfk

字幕

云厂商下一块必争之地就是它了!

Serverless Devs

Serverless 云原生

414天前,我以为这是编程玄学...

why技术

Java JVM JMM

python解释器+pycharm的安装

Geek_6370d5

#python学习之路

高德 Serverless 平台建设及实践

Serverless Devs

阿里云 Serverless 云原生

10个 解放双手的 IDEA 插件,这些代码都不用写(第二弹)

程序员小富

Java 后端 IDEA

300条数据变更引发的血案-记某十亿级核心mongodb集群部分请求不可用故障踩坑记

杨亚洲(专注MongoDB及高性能中间件)

数据库 mongodb 架构 MySQ 分布式数据库mongodb

JavaScript设计模式之单例模式

程序员海军

JavaScript 大前端 设计模式 单例模式

【智慧农业】从“看天吃饭”到“知天而作”,乡村振兴全靠 TA

IoT云工坊

人工智能 物联网 智慧农业 庭院灌溉 温室大棚

消息队列的两种模式

五分钟学大数据

kafka 5月日更

停止维护的CentOS6,怎么使用yum?

运维研习社

Linux 5月日更

阿里大牛亲码 Spring AOP详解笔记全网开源,学透并发只需3天

飞飞JAva

spring aop

IM扫码登录技术专题(三):通俗易懂,IM扫码登录功能详细原理一篇就够

JackJiang

即时通讯 IM 扫码

苹果移动设备用什么管理比较好?有什么推荐?

懒得勤快

imazing 手机管理

【技术干货】文件系统中的“锁”

焱融科技

容器 分布式 云原生 高性能 文件存储

Java程序员面试必备——过得了面试官,过不了HR?我教你

比伯

Java 编程 架构 程序人生 计算机

DevOps不是个技术问题,而是个业务问题_研发效能_Damon Edwards_InfoQ精选文章