你离DevOps to Production 究竟有多远?

在上一篇文章《传统企业DevOps基础设施架构规划之道》里面简单提到,区别于互联网企业,传统企业在实施DevOps时,一般只能实现DevOps to Pre-Production,甚至只是DevOps to UAT,极少能做到DevOps to Production的。当时并没有深入地展开讨论。本文尝试接着对这个问题做进一步的分析讨论,寻找导致这个问题背后的深层次原因。

在前面那篇文章里面也提到过,现在的传统企业大多遵循ITIL。这意味着在软件开发过程中存在变更管理(Change Management) 环节。简单来说,就是对生产环境的部署必须通过人工审批。一般来说,在操作层面,开发人员提前通过一个变更管理系统提交变更单,必须详细列明变更涵盖的改动、测试的结果、变更实施的具体时间、具体的部署与验证步骤、回滚的策略等,巨细无遗。变更提交后,必须经过相关人员的层层审批,然后才能部署。在这个过程中,只要其中有一层拒绝审批,整个变更单就得重新修改提交,然后从头开始审批。整个过程相当的费时费力。笔者曾经就职于一间大型跨国外资银行,曾无数次参与这种变更的审批流程,深感其中的繁琐。由于存在这样一个人工审批的环节,导致自动化的持续交付流水线不能打通生产环境的部署。DevOps就此与生产环境脱节。但是,这会是传统企业不能实现DevOps to Production的根本原因吗?

我认为不是。我认为变更管理只是表面的原因。要探讨深层的原因,或许我们需要回过头来审视一下为什么传统企业需要变更管理这一环节。很多传统企业,尤其是上市的大型企业,或者是金融类的企业,它们往往受到相关管理机构非常严厉的监管。对它们来说,保持业务连续性,以及IT系统的稳定性是非常关键的事情。生产变更导致业务出现问题可能会使企业陷入巨大的风险之中,所带来的财务和声誉的损失可能会相当严重。所以,它们必须引入ITIL和变更管理来保证对生产环境的变更都是经过审批的 。从某种程度上来说,可以认为它们是害怕与拒绝变化的。变化意味着有可能犯错,意味着危险。为了不犯错,宁可少变化或不变化,对变化的恐惧,才是其不能实现DevOps to Production的根本原因。但是,DevOps意味着拥抱变化。如何克服这种恐惧感,或许我们可以从互联网企业那里找到答案。

敏捷有句老话,如果你越害怕做一件事情,你就应该越频繁地去做它。对于部署,同样适用。互联网企业每天的部署次数非常多,如此频繁的部署往往意味着他们其实是在利用快速的上线来快速试错。允许犯错是互联网企业一个区别于传统企业的明显的基因。是人,就会犯错误。允许犯错是对人性的尊重。犯错并不可怕,犯错后只顾追责与逃责才可怕。与此形成对比的是,互联网企业并不会过多的追责,而是通过完善的容错机制让错误以尽可能低的成本尽早得到修复。犯错是安全的。犯错与纠错的成本是非常低的。这得益于频繁的部署造就的每次部署的细粒度。每次部署的改动都是很细微的,可能只是改一个图片的样式,或者是隐藏一个按钮,又或者是打开某个特性开关。部署的版本不正常工作?没问题,反正几分钟后的下一次部署就可以纠正。对用户更喜欢哪一个页面没有把握?没问题,同时部署两个页面做比较,看用户喜欢哪一个,掌握了第一手数据后立刻把受欢迎的那个页面部署到所有环境。有时候,互联网企业还会主动犯错,引入一些意外情况,以考察生产环境应对突发事件的能力。这方面最广为人知的就是Netflix的Chaos Monkey。互联网企业就是通过频繁的细粒度的部署以及完善的容错机制来消弭部署带来的风险。

对于互联网企业来说,生产环境部署是很轻量级的,是很稀松平常的事。当然,表面上看来很简单,实则非常不简单。不简单的背后离不开我在上一篇文章里面提到的非常强大的DevOps基础设施的支撑。例如,快速试错离不开A/B测试,蓝绿部署,金丝雀发布等部署策略的使用,这需要高度灵活的环境编排与基础设施即代码的能力;高频部署需要非常高效的持续交付流水线保障效率与非常完善的自动化测试保障质量;高效的纠错离不开完善的生产数据监控。除此之外,软件架构也需要考量。特性开关是实现高频部署的很重要的一环,软件架构必须具备足够的适应性与响应力,满足对特性开关的灵活设置。

罗马并非一日建成的。我相信入AWS,Netflix这些互联网企业也是经过很长时间的摸索与实践才走到了今天。我们只看到它们风光的一面,却很少去想,它们沿途走来也必定经历了许多炮火与血泪。DevOps之路并非可以一蹴而就,需要经历,沉淀与积累。对于传统企业来说,表面上只差最后一步,实则差距巨大。这种差距来自于基础设施建设与自身能力的薄弱,更来自于与生俱来的对变化的恐惧。越害怕变化,越急于求成,对基础设施的建设与能力的沉淀就做得越差,越没有信心,反过来就越害怕,形成恶性循环。正如笔者曾经参与的一个项目,领导强行要求把变更审批流程嵌入持续交付流水线中,然而实际的工作并没有发生任何变化,对外就声称实现了生产环境的自动部署。这其实是在自欺欺人,没有意义,团队根本就还没达到那个水平。其实最应该做的是,沉下心来,踏踏实实地构建底层的基础设施,不断尝试与总结,锻就自己的能力,积累自已的经验,一步一个脚印,逐渐建立信心 。纵使最后可能还是不能完全摆脱固有流程,也很难达到互联网企业的水平,但至少我们能够做到真正的拥抱变化,而不是惧怕它。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343

推荐阅读更多精彩内容

  • 在过去的三年中,我作为 DevOps 的咨询师参与了很多企业的 DevOps 转型咨询以及技术实施,也在不同的社区...
    顾宇阅读 9,878评论 12 84
  • 何为DevOps,知乎的漫画 链接:https://www.zhihu.com/question/24413538...
    生活的探路者阅读 1,477评论 0 8
  • 前言 DevOps方案实施在互联网行业中已经相对成熟了,而在游戏行业中还处在起步的初级阶段(据个人了解的身边游戏公...
    云时代构架杨彪阅读 2,541评论 0 8
  • 看到这个的时候,突然想起了一起实习的美术老师。听她上的公开课,黑白画! 这类型的真的很少画,也是因为她让我知道水溶...
    一大碗酸菜鱼阅读 161评论 0 1
  • 今天7号,我在赶着完成本次007作业。 今天立冬,改变始于今天! 我想借助007和简书的平台给自己一个承诺,并且把...
    丁于_18d4阅读 510评论 1 46