落地DevOps的三种典型模式
赵成
讲述:杜力大小:2.11M时长:04:37
首先谈这个话题需要定义好背景。我们现在所提到的 DevOps 其实是分布式架构场景下的 DevOps,运维是分布式架构场景下的运维,这和之前是完全不一样的。换个更接地气的话说,分布式的系统复杂度远远超出了人力掌控范围,更是超出人脑认知范围,所以开发和运维必然要紧密协作,共同面对新挑战。
结合各大公司落地 DevOps 的情况,赵成总结出了三种典型的参考模式。
第一种模式可以总结为“文化使然,开发主导模式”,代表是 Netflix,他们号称没有运维,甚至连 SRE 角色也不多。运维工作基本都是由开发自助完成的。Netflix 的文化基石是“自由与责任”,无论开发还是架构师,天然地对自己的系统、平台甚至是应用端到端负责,从而逐步构建起了能够支撑海量业务的基础设施和服务平台。这样到了后期,很多繁杂和重复的工作,开发都可以基于平台自助完成,而不是依赖运维的人来完成。
所以,我们仔细观察,就会发现,国外的大厂其实极少提 DevOps 这个概念,因为他们天然就是这么干的,是理所当然的一种研发模式。
这种模式对于组织来讲是最为高效的,但是文化导向之所以能够发挥这么大的作用,也有一个极为重要的前提就是技术团队和人才的能力问题,只有当团队能力足够强的时候,才能够支撑起如此完善的体系建设,再加上国外强烈的工程师文化,让他们能够耐住性子,沉下心来,稳扎稳打。
反观国内,一个是技术人才的能力还达不到这个程度,再就是,国内的公司和产品过度追求业务增速和发展,往往会牺牲一些非功能性的能力。
第二种模式是自上而下的决策,开发和运维“被动”执行,典型事件是阿里巴巴在 2015 年左右发起的 DevOps 转型,这次转型直接取消了应用运维的岗位。究其原因,主要有两方面,一是经过多年技术积累,阿里巴巴的基础设施和平台相对完善。原来基础能力不够的时候,阿里巴巴很多运维工作也是要依赖应用运维这样的角色人肉去完成,但随着平台不断完善,开发完全可以基于平台自助完成。从技术角度,阿里已经完全具备了 DevOps 的基础条件,从组织效率角度,提升研发整体的交付效率也势在必行。
第二个方面是自上而下的决策执行。虽然基础条件具备了,这时无论是开发还是运维,都不具备能力去做组织层面的调整和融合。但是,从研发高层的角度,当意识到 DevOps 转型时机成熟,且经过论证和实践是可以带来效率极大提升的时候(国外大厂的模式已经证明),组织上的职责和岗位调整,就势在必行了。
第三种模式是技术战略项目切入,开发和运维合作共建。所谓技术战略项目,可以理解为当业务发展到一定程度或某个阶段时,技术层面为了更好的适应业务趋势和场景,而做出的一些整体技术架构调整,这里可能包括软件架构、研发组织架构、基础设施建设等等。
比如说当时蘑菇街要对原来的 PHP 单体架构做改造,改造过程中发现了分布式架构体系下的一系列效率问题,然后就开始定位问题,最后发现核心痛点是各种指标缺失。于是就开始解决标准的问题,解决完标准问题之后又着手解决与标准相关的工具问题。
运维在这个阶段,最主要的作用就是与开发共同制定标准,并在后续的架构设计和研发过程中,严格遵从标准,否则,接入不了工具平台,效率和稳定也就谈不上了。
从宏观层面来看,第一种模式优于第二种模式,第二种模式优于第三种模式,但选择哪一种方式还要看具体情况,要记住很多事情都是阶段性正确的。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(2)
- 最新
- 精选
- 加菲猫一、文化使然,开发主导建立;二、开发与运维“被动”建立;三、开发与运维共同建立;我对DevOps也很感兴趣,谢谢分享4
- Linux命令手册那么未来要不要运维?
收起评论