作者:范军 (Frank Fan) 新浪微博:@frankfan7   微信:frankfan7

很多企业,尤其是大企业在产品开发和运维上存在着一些普遍问题,比如开发周期长、人员合作程度不高、开发和运维脱节等等。可看看一些巨型企业,比如Google,Amazon,Facebook,Salesforce等等,人家的规模不比你大,架构不比你复杂?为什么他们能做到大而灵?成功的因素固然有很多,而一个共同的因素是,他们都引入了DevOps的概念。

DevOps是基于Agile和Lean发展而来的一种理念,目的是更好的优化开发和运维的流程,从而更快、更高效的实现产品更新。DevOps是由Development + Operation缩写而来,但绝不是二者的简单相加。引入DevOps需要在企业文化和技术上都要落实一些措施。

在我们进一步介绍该理念之前,本文来探讨一些我见过的IT环境中的问题,尤其是在大企业中有普遍性的问题。

上图想说的是由于组织结构、文化以及技术局限性的多种原因,各个组负责自己的一亩三分地,别组的事情不管我事,我也根本不知道别人在干什么。那产生的后果呢,咱们从项目的各个环节一一道来。

设计阶段

需求分析和后面的环节脱钩。往往大费时间精力制定的需求,在后续阶段中不能很好的执行。可能的原因有:一需求本身的质量不高,没有很好的衡量手段和标准二需求没有体现整个LifeCycle,往往忽视运维中可能出现的问题三只注重Functional Requirements , 而忽略Non-Functional Requirement

另外需求更改是难免的,可合同已经签了。按照Change Control的规定,需要重新评估时间,人力及风险,这一趟下来时间上的损失不说,非常耗精力。

开发阶段

实施人员可能对设计本身的了解不透彻,更别说对需求的把握了。做出来的东西有时走了样,忘了本来的目的是什么。

测试阶段

Unit Testing,integration Testing,   Performance Testing, Stress Testing, UserAcceptance Testing.   整个测试阶段耗时耗力,测试人员有时闲的要死,有时忙的要死。各个测试之间的协调也是问题。

运维阶段

大型复杂项目中往往一个Change需要涉及多个团队,本来30分钟的活儿,你要想每个组都批准Change可能要数天甚至数周。运维中出了问题呢,各个组之间扯皮推脱自是家常便饭。怕的是有的时候根本不知道哪出了问题,也可能整个系统靠个别技术牛人来撑着,其他人没有也不知道如何下手。

解决方案

发牢骚谁都会,那么有解决办法么?当然有,不过这可不是什么灵丹妙药,一吃就灵。需要从上至下,在文化上和技术上都要有下大力气才行。请关注下文将展开DevOps的一些实施细节。


【DevOps】谁说大象不能跳舞?的更多相关文章

  1. 【DevOps】为什么我们永远疲于奔命?

    作者:范军 (Frank Fan) 新浪微博:@frankfan7   微信:frankfan7 在[DevOps]谁说大象不能跳舞?一文之后,本文对DevOps的理念作进一步探讨. 最近在读一本书& ...

  2. 在 Web 级集群中动态调整 Pod 资源限制

    作者阿里云容器平台技术专家 王程阿里云容器平台技术专家 张晓宇(衷源) ## 引子 不知道大家有没有过这样的经历,当我们拥有了一套 Kubernetes 集群,然后开始部署应用的时候,我们应该给容器分 ...

  3. 超大规模商用 K8s 场景下,阿里巴巴如何动态解决容器资源的按需分配问题?

    作者 | 张晓宇(衷源)  阿里云容器平台技术专家 关注『阿里巴巴云原生』公众号,回复关键词"1010",可获取本文 PPT. 导读:资源利用率一直是很多平台管理和研发人员关心的话 ...

  4. 初识Hadoop

    第一部分:              初识Hadoop 一.             谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...

  5. <转>技术团队新官上任之基层篇

    发表于2013-09-04 17:17| 10455次阅读| 来源<程序员>| 35 条评论| 作者高博 <程序员>杂志2013年9月刊技术团队管理EMC高博CTO 摘要:从技 ...

  6. IBM的淘汰之路

    BM曾经在计算领域独领风骚,但是90年被PC产业链上的微软.英特尔等厂商围殴,遭遇最严重的危机; 今天在云计算市场,IBM曾在遭遇同样的危机,这一次不知道它能否安然度过; IBM收购红帽转向混合云,是 ...

  7. 谁能当IBM公司的CEO?

    转自:http://www.ruanyifeng.com/blog/2005/09/ibmceo.html  阮一峰 创业文档 IBM公司的前CEO郭士纳在他的<谁说大象不能跳舞?>一书中 ...

  8. 独家揭秘,106岁的IBM靠什么完成了世纪大转型|钛度专访

    IBM大中华区董事长陈黎明 到2017年2月,陈黎明就担任IBM大中华区董事长整整两年了. 五年前,IBM历史上首位女CEO也是第9位CEO罗睿兰上任,三年前,IBM在罗睿兰的带领下以数据与分析.云. ...

  9. IBM究竟是一家怎样的公司

    每次被问到这样的“简单”问题,我都很纠结: 这家公司,从创始至今已经积累了几十万种技术(2015年蝉联专利排行榜23年之久,仅2015年专利数7355项),开发了上万种产品(从银行的交易系统,到航空的 ...

随机推荐

  1. Spark笔记之数据本地性(data locality)

    一.什么是数据本地性(data locality) 大数据中有一个很有名的概念就是"移动数据不如移动计算",之所以有数据本地性就是因为数据在网络中传输会有不小的I/O消耗,如果能够 ...

  2. 以后的博客将更新到自己的域名pythonsite.com,欢迎访问

    以后的博客将更新到自己的域名pythonsite.com,欢迎访问

  3. Madgwick IMU Filter

    论文链接:http://202.114.96.204/cache/13/03/x-io.co.uk/35c82431852f2aa7d0feede9dc138626/madgwick_internal ...

  4. Twisted框架

    Twisted是一个事件驱动型的网络模型.时间驱动模型编程是一种范式,这里程序的执行流由外部决定.特点是:包含一个事件循环,当外部事件发生时,使用回调机制来触发相应的处理. 线程模式: 1.单线程同步 ...

  5. LTE:eMBMS架构

    一个MBSFN区域是由一个或多个传输相同内容的小区组成的特殊区域.如图1所示,小区8和9都属于MBSFN区域C.一个MBSFN区域可由多个小区组成,一个小区也可以属于多个(至多8个,从36.331中的 ...

  6. jquery-事件之页面框架加载后自动执行

    jQuery事件之页面框架加载后自动执行 1)概述 HTML执行是按自上而下编译,而<script>一般写在body结束之前.如果在HTML加载的过程中卡住, 比如加载图片等,没有显示出来 ...

  7. javascript-序列化,时间,eval,转义

    一:序列化 JSON.stringify(li) 将对象转字符串 JSON.parse(str1) 将字符串转对象 li=[11,22,33] [11, 22, 33] li [11, 22, 33] ...

  8. APMServ5.2.6win10系统Apache、MySQL5.1启动失败解决办法

    今天想在本地测试网站源码能否正常运行,如果可以就转空间了,然而下载了APMServ之后发现系统Apache.MySQL5.1启动均失败,小白的人表示只能借助百度,用了一个小时的时间终于解决了,虽然坎坷 ...

  9. PHP时间戳和日期转换

    获取当前时间 <?php var_dump(time()); //获取当前时间戳 int(1502245603) 时间戳转换为时间,可以用date(‘Y-m-s h:i:s’, 具体时间戳来实现 ...

  10. python生成器、装饰器、正则

    包子来了[4],被[mayun]吃了! 包子来了[4],被[mahuateng]吃了! 做了两个包子 包子来了[5],被[mayun]吃了! 包子来了[5],被[mahuateng]吃了! 做了两个包 ...