DevOps工程师成长秘籍

DevOps一词的来自于Development和Operations的组合,其概念早先升温于2009年的欧洲,因传统模式的运维之痛而生。


前几天偶然间看到阿里巴巴在高薪招聘DevOps工程师:

那么,什么是DevOps工程师呢,如何才能成为一个成功的DevOps工程师呢?

1

首先,我们来看一下DevOps是什么。

DevOps一词的来自于Development和Operations的组合,其概念早先升温于2009年的欧洲,因传统模式的运维之痛而生。

DevOps是为了填补开发端和运维端之间的信息鸿沟,从而改善团队之间的协作关系。不过需要澄清的一点是,从开发到运维,中间还有测试环节。DevOps其实包含了三个部分:开发、测试和运维。

DevOps突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、发布更加快捷、频繁和可靠。

换句话说,DevOps希望做到的是软件产品交付过程中IT工具链的打通,使得各个团队减少时间损耗,更加高效地协同工作。

2

DevOps的好处

DevOps的一个巨大好处就是可以高效交付,这也正好是它的初衷。Puppet与 DevOps研究与评估(以下简称 DORA)协会主办的2016年DevOps调查报告中,根据全球4600位各IT公司的技术工作者的提交数据统计得出结论:高效公司平均每年可以完成1460次部署。与低效组织相比,高效组织的部署频繁200倍,产品投入使用速度快2555倍,服务恢复速度快24倍。

在工作内容的时间分配上,低效者要多花22%的时间用在为规划好或者重复工作上,而高效者却可以多花29%的时间用在新的工作上。所以这里的高效不仅仅指公司产出的效率提高,还指员工的工作质量得到提升。

DevOps另外一个好处就是会改善公司组织文化、提高员工的参与感。员工们变得更高效,也更有满足和成就感;调查显示高效员工的雇员净推荐值(eNPS:employee Net Promoter Score)更高,即对公司更加认同。

对于工程师而言,他们也是DevOps的受益者。微软资深工程师Scott Hanselman说过“对于开发者而言,最有力的工具就是自动化工具”(The most powerful tool we have as developers is automation)。工具链的打通使得开发者们在交付软件时可以完成生产环境的构建、测试和运行;正如Amazon的VP兼CTO Werner Vogels那句让人印象深刻的话:“谁开发谁运行”。(You build it, you run it)

3

DevOps的现状

目前在国外,互联网巨头如Google、Facebook、Amazon、LinkedIn、Netflix、Airbnb,传统软件公司如Adobe、IBM、Microsoft、SAP等,亦或是网络业务非核心企业如苹果、沃尔玛、索尼影视娱乐、星巴克等都在采用DevOps或提供相关支持产品。

其实DevOps早在九年前就有人提出来,但是,这两年才开始受到越来越多的企业重视和实践。DORA发布的最新《DevOps现状调查报告(State of DevOps)》发现,最近几年 DevOps团队的人员规模都保持着持续上涨。三年之前,只有 16%的受访者身为 DevOps团队成员,但如今这一比例几乎翻了一番(达到 27%)。

根据国外一项调查表明,在2016年,74%的受访者已经接受了DevOps,而2015年这一比例为66%;另外,在大企业中已经有81%开始接受DevOps:

4

为什么DevOps近两年才得以重视?

因为DevOps的发展是独木不成林的,而现在有越来越多的技术支撑。微服务架构理念、容器技术使得DevOps的实施变得更加容易,计算能力提升和云环境的发展使得快速开发的产品可以立刻获得更广泛的使用。技术的发展使得DevOps有了更多的配合。

早期时,大家虽然意识到了这个问题的,但是苦于当时没有完善丰富的技术工具,是一种“理想很丰满,但是现实很骨感”的情况。DevOps的实现可以基于新兴的容器技术,也可以在自动化运维工具Puppet、SaltStack、Ansible之后的延伸,还可以构建在传统的Cloud Foundry、OpenShift等PaaS厂商之上。

事实上,DevOps正在成为 IT行业的新标准,并且已经被业界广泛采纳,常见于云计算和容器技术。

同时,许多组织正尽力去理解 DevOps的全貌,这主要受限于他们专业知识上的缺乏和各种组织结构上的挑战。尽管面临这些挑战,DevOps还是渐渐成为一个主流运动,各个公司已经注意到DevOps加速发布的无限价值潜力:谁创新速度最快,谁频繁更新…谁就可能打通创新的任督二脉。DevOps正在改变着 IT组织发布软件的方式,这就像敏捷运动在过去十多年中所产生的影响。

5

DevOps工程师

现在,我们可以来看一下什么是DevOps工程师了。

采用DevOps的主要意图是在开发和运营团队之间建立更好的工作关系。有些建议是将团队安排在一起,将他们包含在彼此的流程和工作流程中,甚至创建一个能够完成任务的跨职能团队。不过在这种方式中,Dev仍然是Dev,Ops仍然是Ops。

DevOps工程师一词试图将Dev与Ops之间的差距模糊起来,并表示最好的方法是请一些可以搞定Dev角色以及处理所有Ops职能的工程师。简而言之,DevOps工程师可以是开发,主要是他们能通过运营的心态思考问题并具有以下技能:

1. 熟练使用各种操作和自动化工具的经验;

2. 强大的脚本能力;

3. 在频繁测试和增量的时候从容不迫;

4. 了解Ops问题的来龙去脉,能在源头杜绝问题扩散;

5. 技能和逻辑相对开发更全面,让团队更好的协作。

亚马逊CTO Werner Vogels认为:

把运营的责任和职能放在开发身上,从客户和技术的角度,大大提高了服务质量和包容度。传统模式只是把包带到部门墙就甩手不管了。我认为最好的方式是谁建立,谁运行……开发接触到运营,也带来了与客户的日常联系。这个客户反馈循环对于提高服务质量非常重要。

Dev迁移到DevOps角色比以往任何时候都容易。交付自动化日益改善,DevOps平台通过最少的脚本轻松就能实现自动化。

Ops工程师能否迁移到DevOps角色?当然!但相对开发可能挑战更大一些,因为转换之前,严谨的编码技巧也得学习学习。不过编码启动阵营的变化,这可能相比几年前更容易过渡一些。

开门见山,成为DevOps工程师的关键是关注以下几点

1、零触摸式的自动化

你应该深刻了解下自动化,诸如基础设施配置,CI/CD管道,发布管理,安全补丁甚至客户反馈等所有内容的想法……这些可以让组织创新脚步更快:免去手工切换,并在引入后立即追踪并修复错误。

在这里就可以开始适度增加版本更新周期并获得客户的快速反馈,从而帮助您更快地改善产品和响应市场需求。这步可以带着你一直走向DevOps的最终涅磐。

DevOps交付管道的完全自动化,多去找找相关开源方案学习精髓之处吧,本文没什么捷径提供。

2、宽容度高的行动心态

开发在设计软件时多走一步,考虑一些常见的操作陷阱。这个环节如果开发环节就能注意到,那就非常好了,而不是遇到问题,然后才修复。

尝试通过创建一个作为设计评估模板一部分的清单来标准化这类过程。Microsoft有部分团队就总结了一些清单,其中考虑了部署和基础架构的要求。

坚信团结的力量。鼓励通过团建,跨团体游戏之类的形式相互认识。长久以往,可能会发现Slack渠道的沟通也不那么麻烦了,对每个人都开放包容,有助于更好地理解和对交叉团队的问题感同身受。

如何衡量DevOps的成功?

最终,您所有的努力都要转化为更快创新的业务目标。

DevOps策略成功的一些关键指标如下。

部署频率——部署到生产要多久?通过自动化,你可以随着每一个变化的生产进行持续部署。这是一个到达过程,每天至少一次作为目标并没有什么不妥。

代码更改的交付时间——将代码更改部署到生产中需要多久?这将衡量自动化管道的效率。目标:建议是不到30分钟,最好再结合自己实际情况调整。

回滚率——出错回滚频繁吗?这很可能意味着自动化流程需要改进,因为DevOps的整个目标是创建可预测且无错误的版本。如果回滚率高,那至少得提高回滚速度。这个是快速恢复的一个基本能力,把对业务的影响降到最低。

写在最后

真正意义上的DevOps工程师难找,这块目前为止还是个不断发展的领域。说得讽刺些,许多为这些角色做背书的公司也并不知道DevOps具体是怎么回事。所以万一你被聘成了DevOps工程师,那你就得用这个聘请理由驱动手头的事情做出改变,说的大白话一些,你得让DevOps落地跑起来。

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

推荐阅读更多精彩内容

  • 前言 DevOps方案实施在互联网行业中已经相对成熟了,而在游戏行业中还处在起步的初级阶段(据个人了解的身边游戏公...
    云时代构架杨彪阅读 2,537评论 0 8
  • 文/伍斌 【摘要】 DevOps原则所追求的愿景,就是“让业务所要求的那些变化能随时上线可用”; DevOps的起...
    ThoughtWorks阅读 1,522评论 0 14
  • 用工具堆砌的DevOps 幻觉 在第一届 DevOpsDays结束后,DevOps 运动则如星火燎原之势在全球发展...
    顾宇阅读 3,153评论 2 16
  • 今天有幸,我跟老友再次搭乘上次大哥的车去游览榆次老城。天气十分不作美,雾霾严重,本来一个多小时的路程,因...
    红尘炼心96阅读 256评论 2 1
  • 最近几天的情绪都不太好,一是天天中午吃西红柿鸡蛋茄子土豆鸡蛋,天天晚上喝粥吃馒头,感觉吃得特别压抑,情绪一来,又没...
    112233D阅读 149评论 0 0