极客视点
极客时间编辑部
极客时间编辑部
113240 人已学习
免费领取
课程目录
已完结/共 3766 讲
2020年09月 (90讲)
时长 05:33
2020年08月 (93讲)
2020年07月 (93讲)
时长 05:51
2020年06月 (90讲)
2020年05月 (93讲)
2020年04月 (90讲)
2020年03月 (92讲)
时长 04:14
2020年02月 (87讲)
2020年01月 (91讲)
时长 00:00
2019年12月 (93讲)
2019年11月 (89讲)
2019年10月 (92讲)
2019年09月 (90讲)
时长 00:00
2019年08月 (91讲)
2019年07月 (92讲)
时长 03:45
2019年06月 (90讲)
2019年05月 (99讲)
2019年04月 (114讲)
2019年03月 (122讲)
2019年02月 (102讲)
2019年01月 (104讲)
2018年12月 (98讲)
2018年11月 (105讲)
时长 01:23
2018年10月 (123讲)
时长 02:06
2018年09月 (119讲)
2018年08月 (123讲)
2018年07月 (124讲)
2018年06月 (119讲)
时长 02:11
2018年05月 (124讲)
时长 03:16
2018年04月 (120讲)
2018年03月 (124讲)
2018年02月 (112讲)
2018年01月 (124讲)
时长 02:30
时长 02:34
2017年12月 (124讲)
时长 03:09
2017年11月 (120讲)
2017年10月 (86讲)
时长 03:18
时长 03:31
时长 04:25
极客视点
15
15
1.0x
00:00/04:37
登录|注册

落地DevOps的三种典型模式

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

全部留言(2)

  • 最新
  • 精选
  • 加菲猫
    一、文化使然,开发主导建立;二、开发与运维“被动”建立;三、开发与运维共同建立;我对DevOps也很感兴趣,谢谢分享
    4
  • Linux命令手册
    那么未来要不要运维?
收起评论
显示
设置
留言
2
收藏
79
沉浸
阅读
分享
手机端
快捷键
回顶部