DevOps,你真的了解吗?

与大数据和PRISM(NSA的监控项目之一),DevOps(开发运维)如今是科技人士挂在嘴边的热词,但遗憾的是,类似圣经,每个人都引用DevOps的只言片语,但真正理解并能执行的人极少。根据CA的一项调查,45%的受访者并不了解DevOps的含义,其余则有17%认为DevOps只不过是炒作。
DevOps如今几乎成了创新的同义词,但其原本的含义却在业界的流传中被人们弃之脑后。在开发者圈子中,DevOps专业人士经常是被嘲弄的对象,例如下面这个专门恶搞的Twitter帐号:DevOps Borat.
饶是如此,DevOps也成了类似数据科学家的性感职位。虽然在一些企业,DevOps还只停留在纸面上,但更多的企业的业务发展确实需要DevOps专业人才,人才市场对DevOps技术人员的需求非常旺盛,根据科技人才招聘网站Dice.com最近的统计,今年9月份DevOps的招聘职位数量高达500个,而去年同期只有200。
事实表明DevOps口惠而实不至的口水词,根据IT自动化服务商Puppet Labs的最新报告《2013年DevOps现状报告》,采用DevOps的企业的软件代码生产速度是不采用DevOps企业的30倍!同时将错误率降低了50%。
为了深入探讨DevOps这个话题,以及搞清楚为什么DevOps工程师在企业招聘市场一将难求,VB的记者近日采访了戴尔的云计算开发总监Barton George, George本人也经常写博客讨论搭建DevOps团队的好处。IT经理网将采访内容编译整理如下:
问:DevOps这个概念是怎么来的?
答:DevOps起源于亚马逊和Google这样的大型互联网公司,这些公司需要员工紧密协作,同时又不希望出现部门割据。
问:开发人员和运营人员的目标有很大差异吗?
答:是的,他们有着相反的目标,开发者一心都在创新上,让事情看上去更酷;而运维人员最关心的则是网站运行的平稳,不要宕机,但开发者可不会关心这个。
我记得2001年2月份发布的“敏捷宣言”是一个里程碑,打那时起开发者开始关心如何走近客户,了解他们的真实需求。开发者开始更多关注如何加快开发周期,写出更容易实现的代码、更好的用户体验,而不是更酷的功能。
相比之下运维人员并未经历类似太多变化,于是DevOps模式应运而生。
问:敏捷开发到底什么意思?你认为这仅仅意味着快速吗?
答:简单来说,敏捷开发意味着更多的迭代:更早更频繁地发布产品更新。先把东西做出来,而不是像过去那样过于忧虑产品是否完美。这就是那个“永远beta版”的概念,30天把原型快速搞出来,然后看看人们到底怎么想。敏捷的字面意思就是快速改变的能力。
如果你能更快发布,你就能跟上市场的节奏随时调整。
问:DevOps与开源运动的关系是怎样的?
答:两者是并行的。DevOps是一个文化运动,借用了开源的很多协作概念,本质上是团队协作的文化。
问:企业如何从DevOps能力中受益?
答:DevOps的目标是流程的自动化——让代码完成过去手工的工作,从而大大节省成本。
DevOps的最终目的是提高你的客户响应能力。如果网站宕机了,你自然就无法服务你的客户了,你发现问题的速度越快,成本就越低。
DevOps团队的特点是能让你为客户提供更多功能,而且不会把网站搞垮。
问:DevOps通常适用于大企业还是斗志昂扬的小企业?
答:DevOps更多会与大企业有关。小企业的协作本来就不是很难。但是类似Google或Netflix这样的企业每天都会推送大量代码,出现bug的几率很高,而Puppet和Chef这样的开发工具能帮助系统管理员将很多工作自动化,并应对最艰巨的基础设施挑战。
问:你最常听到的对DevOps的误解或疑点都有哪些?
答:DevOps不仅仅适用于高科技公司,我一年前听过一个网络研讨会,网站优化是关于中西部一个金融公司如何开展DevOps的,DevOps绝不是硅谷的专属品。
事实上任何希望变得更加敏捷的人都可以运用DevOps。以我的观点,DevOps是IT部门保持其存在感的一种方法。我们经常看到企业中的IT部门被排挤,网站推广因为预算受制于其他业务部门。有了DevOps,IT可以更早地参与到业务流程中,IT主管们可以冲着开发团队嚷嚷:“嗨,伙计们!我们如何实现这个需求?我们需要什么样的自动化工具?”,而不是像过去那样,搞出成吨的代码后黄瓜菜都凉了。
关于DevOps:
(以下摘自Wikipedia)
DevOps(英文Development和Operations的组合)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。[1] 它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。
以下几方面因素可能促使一个组织引入DevOps:
1. 使用敏捷或其他软件开发过程与方法
2. 业务负责人要求加快产品交付的速率
3. 虚拟化和云计算基础设施(可能来自内部或外部供应商)日益普遍
4. 数据中心自动化技术和配置管理工具的普及
5. 有一种观点认为,目前占主导地位的“传统”美国式管理风格(“斯隆模型 vs 丰田模型”)会导致“烟囱式自动化”,从而造成开发与运营之间的鸿沟,因此需要DevOps能力来克服由此引发的问题。
DevOps,你真的了解吗?的更多相关文章
- DevOps is dirty work - Dream in One-Click
真是一晃就到年底,年初许的梦想实现了吗?这么残忍的问题还是不要知道答案了吧:) 这恍若隔世的大半年,不仅没有承接着上篇继续聊Continuous Delivery (CD),反而疑似荒废.然而,梦想还 ...
- DevOps is dirty work - CI drives you crazy
一直很想谈谈Continuous Integration(CI),持续集成. 就在不久前一次朋友聚会上,一个刚刚跳槽到一家创业公司的朋友跟我抱怨说他们没有CI,没有code review,要做点事太累 ...
- DevOps is dirty work - What's the deal
什么是DevOps?终于又回到这个最初的问题. 第一次看到这个词的时候,还身陷于各种敏捷概念轰炸中.用“身陷”这个词其实并不准确,因为那个年代的我也是那些热情洋溢地无处不宣传敏捷的热血文艺青年中的一员 ...
- 如何选择正确的DevOps工具
坦白的讲:世界上没有哪种工具能够像DevOps这么神奇(或敏捷,或精益).DevOps在开发和运营团队之间建立了完美的合作与沟通,因此与其说这是一种神奇的工具,不如说是一种文化的转变. 然而,团队之间 ...
- 荣誉,还是苦逼?| 也议全栈工程师和DevOps
引言 全栈工程师(本文称「全栈」开发者)和 DevOps 无疑是近期最火的词汇,无论是国外还是国内.而且火爆程度远超于想象. 全栈和 DevOps,究竟是我们的新职业方向,还是仅仅创业公司老板的心头所 ...
- 为 Devops 和系统管理员提供的 400+ 免费资源
014年,谷歌索引的数据量大约为200TB(1T等于1024 GB).而且,据估计,谷歌的200TB只占到整个互联网的0.004%.基本上,互联网是一个拥有无限的信息的地方. 因此,为了努力降低搜索和 ...
- `DevOps`相关知识搜集
本文记录的是搞清楚什么是DevOps过程中检索资料时发现的有价值的帖子. 传送门: 我眼中的DevOps 作者简介:申思维,2005年本科毕业于华南理工大学计算机学院.一直从事Web领域的开发,3年多 ...
- TFS在项目中Devops落地进程(上)
经过近2年折腾,基于TFS的Devops主线工程大体落地完毕.在此大体回忆下中间的各种历程. 开始之前简单说下什么是TFS(Team Foundation Server). TFS是微软推出的一款AL ...
- TFS在项目中DevOps落地进程(下)
紧接上篇 TFS在项目中Devops落地进程(上) 再接着说TFS相关之前先插入一个番外篇,虽然跟TFS关系不大但跟DevOps关系很大,觉得有必要在此乱入一下. 番外篇--监控之Applicatio ...
随机推荐
- linux(centos8):awk在系统运维中的常用例子
一,awk的作用 1,用途 AWK是一种处理文本文件的语言, 是一个强大的文本分析工具 2,awk和sed的区别 awk适合按列(域)操作, sed适合按行操作 awk适合对文件的读取分析, sed适 ...
- npm install 几种不同后缀安装模式的区别
--save/--save --dev/nothing / -g 区别,及package.json基本目录结构介绍 https://www.jianshu.com/p/e10f981972ff
- linux 安装配置zerotier
1.在线安装zerotier curl -s https://install.zerotier.com/ | sudo bash 2.添加开机自启 $ sudo systemctl enable ze ...
- Python包安装及使用指南
这里长期更新一些Python第三方包的安装教程,以及使用教程... Pygame 安装教程: Windows: 首先,查看已安装的Python版本:访问https://www.lfd.uci.edu/ ...
- Lambda表达式(一)
Lambda表达式其实就是实现SAM接口的语法糖,作用就是简化代码的冗余,同时可读性也好过匿名内部类. 以下先一步步演示是如何把大段的代码变成一句代码的,加强理解! 第一种正常的写法 1 public ...
- Nexus3常用功能备忘
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 实现图像上像素点与实际位置的GPS对应
作者有话说 这篇随笔是基于我自己完成的一个项目,这个项目虽然看起来较为简单,但是由于我本身不是学这个方向的,因此在做的过程中还是遇到了一些大大小小的问题.经过仔细研究并多次调试代码,终于把这个问题的原 ...
- SpringBoot整合Logback日志框架配置全解析
目录 本篇要点 一.Logback日志框架介绍 二.SpringBoot与Logback 1.默认日志格式 2.控制台输出 3.文件输出 4.日志级别 5.日志组 6.自定义log配置 三.logba ...
- 4G DTU是什么 4G DTU的功能和特点
4G DTU是什么 DTU中文名称是"数据传输终端",根据数据传输时使用的传输方式网络的不同,DTU设备又可以分为很多种类,例如:4G DTU.NB-IOT DTU.LORA DT ...
- C# Base64解码小工具编写
1 界面如下 2 关键代码如下 try { var callback = reqStr.Deserialize<dynamic>(); resStr = Newtonsoft.Json.J ...