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 ...
随机推荐
- nginx安全: 配置http基本验证(Basic Auth)(nginx 1.18.0)
一,http基本验证的作用: 1,http基本身份验证会从浏览器弹出登录窗口, 简单明了,容易理解, 对于面向终端用户的前台来说,不够友好, 但对于内部员工操作的后台还是很有用,通常作为一层安全措施应 ...
- Anderson《空气动力学基础》5th读书笔记 第2记——流体静力学初步
与物体在水中受到水的浮力一样,空气中的物体也会受到空气的浮力,但由于这个浮力往往比较小,实际中的很多问题我们常常将它忽略,而对于像热气球这样的靠空气的浮力产生升力的飞行器来说,空气的浮力是不能忽略的. ...
- centos下搭建Jenkins持续集成环境
1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装. 1 wget -O /etc/yum.repos.d/ ...
- Spring Boot学习笔记(一)——Eclipse安装STS插件
一.简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式进行配置,从而使开发人员不再需要定义样板化的配 ...
- PostgreSQL 报错 Problem running post-install step.Installation may not complete correctlyThe database cluster initialisation failed.
在点击完next后安装进度条到最后会弹出题目这个错误 之前选择locale选择china/Singapore 或者china/hongkong都会报错 我的解决方案是 不选择,使用默认的就不会报错,并 ...
- hashmap源码面试分析
HashMap源码问题解析 问: 说一说对hash的理解 答: hash是对任意长度的输入输出为相同长度的输出 问: hash算法的问题 答: hash冲突问题 问: hash冲突是否可以避免 答: ...
- 没人比我更懂 HashMap :)
哈,标题开个玩笑,0202 年的段子哈. 一.首先看一下 HashMap 的构造函数 /** * Constructs an empty <tt>HashMap</tt> wi ...
- Python列表lists索引关于字符串小纪
看的出'字符串列表'中的空格也是计算在内的
- 由python工作区导致的python代码能运行,但是PyCharm画红线的问题
原文:https://www.zhihu.com/question/63028700 PyCharm在遇到模块找不到时,会使用红色波浪线提醒开发者. Python有一个工作区的概念,在默认情况下,当你 ...
- 浅谈HiZ-buffer
最近在看基于GPU的遮挡裁剪相关的技术,它本身也是GPU-Driven Rendering Pipleline的其中一环.这项技术充分利用compute shader并行计算的威力,在加速遮挡查询的效 ...