速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

InfoQ 趋势报告:DevOps 和云计算

  • 2019-03-11
  • 本文字数:4970 字

    阅读完需:约 16 分钟

InfoQ趋势报告:DevOps 和云计算

本文要点:


  • Kubernetes 成功占领了容器编排市场,成了云无关(cloud-agnostic)计算的抽象。该领域的下一个“热门话题”可能是“服务网格”和开发者体验/工作流工具。

  • 混沌工程已经处于早期采用者阶段。“弹性工程”之前和混沌工程混在一起,现在我们已经把它独立出来,归入创新者采用阶段。

  • 我们正在密切关注边缘计算、边缘机器学习推理以及“无源”计算(originless computing)方面创新性的进展。

  • Nicole Forsgren、Jez Humble 和 Gene Kim 合著的《Accelerate》一书定义了数字转型和高绩效团队领域一些主题,这些主题处于早期采用者阶段。

  • 尽管"AIOps"可能是一个被滥用的时髦词汇,但我们仍然把它归入创新者阶段并保持关注。更具体来讲,是关注机器学习所提供的运维洞见和告警的潜在价值。

  • 我们认识到,将持续集成(CI)和持续交付(CD)混在一起,以及在概念上将实践和工具归为一类都不妥当。我们认为,定位为 CI 工具的应用程序/服务处于晚期大众采用阶段,而 CI 最佳实践仍处于早期大众采用阶段。此外,我们认为 CD 实践处于早期大众采用阶段

  • 我们正在跟踪软件定义交付宣言和“代码 vs 配置”方式(用于交付和管道自动化)的最新成果。



InfoQ 和 QCon 主要关注处于创新者(Innovators)、早期采用者(Early Adopters)和早期大众(Early Majority)阶段的技术。Geoffrey Moore 所说的早期市场是由“技术狂热爱好者和想要赢得先机的远见者”组成的。我们要努力做的,就是找出与早期市场相匹配的技术。同时,我们也在寻找那些有可能“跨越鸿沟”走向大众的技术。在这种背景下,可能值得一提的是,一种技术在采用曲线上的确切位置可能会变化。 例如,目前微服务被湾区公司广泛采用,但它在其它地方也许不太合适,应用并不广泛。


这篇文章主要介绍我们对 DevOps 和云计算的看法。这两个领域侧重于基础架构模式、技术框架中模式的实现、以及软件工程师必须掌握的设计流程和设计技能。


在这份云计算和 DevOps 趋势报告中,我们认为Kubernetes真正地占领了容器编排市场,是默认的云无关计算抽象。 但是,Kubernetes 并非一个完整的平台即服务(PaaS),而平台即服务恰恰是大多数组织高效部署和运维软件所需要的。因此这个领域的下一个“热门话题”可能是“服务网格”和开发者体验及工作流工具。 服务网格用于管理服务间的通信和发布控制。开发者体验及工作流工具能让工程师高效地完成“开发 - 测试 - 部署 - 观察”周期。


我们认为混沌工程已经处于早期采用者阶段,这主要归功于 Netflix 团队和 O’Reilly《混沌工程》作者的推广,以及相关工具的增多,比如混沌工具包Gremlin公司作为服务提供的工具。 根据与 John Allspaw、Casey Rosenthal、Nora Jones 以及其他社区成员的讨论,我们把“弹性工程”从混沌工程独立出来,并将其归入创新者类别。


我们正热切关注边缘计算、边缘机器学习推理以及“无源”计算的进展。 这些技术大多处于创新者阶段,但是很显然,像Cloudflare这样的公共云供应商和创新者正在往其中投入大量资源。


Nicole Forsgren,Jez Humble和Gene Kim合著的《Accelerate》定义了数字化转型和高绩效团队方面的几个主题。 基于与外部贡献者的讨论,我们目前正在跟踪其中一些主题,例如“衡量(高)绩效”、基于证据的转型和变革型领导。 我们认为这些主题处于早期采用者阶段,并热切希望在 InfoQ 上发布更多这些方面的文章。


尽管"AIOps"可能是一个被滥用的时髦词汇,但我们仍然把它归入创新者阶段并保持关注。更具体来说,是关注机器学习所提供的运维洞见和告警的潜在价值。随着软件系统变得日益复杂和更加分布式,这类技术可以完善分布式(全栈)跟踪能力,方便问题检测,并有助于减少故障隔离期间的搜索空间。


我们发现,将持续集成(CI)与持续交付(CD)混为一谈,以及把实践和工具归为一类都不妥当。事实上我们承认,我们发布的这方面的文章以及相关文章主题标签远非完美。 我们认为,定位为 CI 工具的应用程序/服务处于晚期大众阶段,但 CI 最佳实践仍处于早期大众阶段。此外,我们认为 CD 实践处于早期大众阶段。


我们正在密切关注软件定义交付宣言和”代码 vs 配置“(针对交付和管道自动化)方面的最新成果。 目前Atomist和Pivotal团队正在推进这一领域的大量对话(和技术)。


下面这张是 2018 年第一季度的趋势图。2019 年第一季度的趋势图在文章开始。



以下内容来自 InfoQ 云计算频道和 DevOps 频道编辑之间的内部对话:


Daniel Bryant (独立技术顾问、Datawire 产品架构师、InfoQ 新闻经理)


作为十个发起人之一,我认为混沌工程正在进入早期采用者阶段,Gremlin 和 AWS 团队把它作为对传统 DR/BC 的重新想象/扩展进行讨论;此外,我认为极简主义容器镜像(minimalist container images)应归入早期大众 —— 依赖它的自建工具包(比如 LinuxKit)技术归入创新者 —— 分布式追踪可能归入早期大众,通用 DevOps 归入晚期大众,以及容器 ,IaC 和持续交付可能归入晚期大众?

我们需要将服务网格加进来,因为它们是一个超级热门话题,归入早期采用者?

我想听听大家的想法,看是否需要移动一些主题的位置,添加或删除一些主题?


Helen Beal (DevOps 顾问、教练、培训师、演讲者、作家)


我的想法是:

像你说的那样,把 CI/CD 归入晚期大众

把 AIOps 和用于运维的机器学习一起添加到创新者?

'DevOps 工具链’应该在那吗? 归入早期大众?

把电气云(Electric Cloud)和 Xebia Labs 添加到 DevOps 仪表板

将 AI 添加到仪表板?

ChatOps 归入早期大众


Steffen OpelUtoolity管理合伙人)


我同意将 DevOps、容器、IaC 和 CD 归入晚期大众,不用它们的人很快就会落伍。把服务网格添加到早期采用者的建议很好。

我也赞同将 AIOps 作为一个主题添加到创新者中,尽管我认为它更像是“用于运维洞见和告警的机器学习”的广义超集和并能取代它(它涵盖了其它一些领域,比如最近发布的 AWS EC2 预测扩展功能)。

虽然人们对 ChatOps 和全栈跟踪的兴趣与日俱增,但我认为他们的采用情况尚未到达早期大众阶段的标准(至少在“处理大多数/所有操作的既定方式”方面),并且 ChatOps 工具成熟度还有很多不足之处。另一方面,“日志聚合/分析”似乎已超过早期大众阶段的标准(它完善了“集中日志聚合”,也许现在可以合并这些主题了)。

最后,我想把“边缘计算”作为创新者/早期采用者主题(例如 Lambda@Edge、AWS Snowball Edge、AWS Greengrass、Cloudflare Workers 等服务)。一旦广泛应用的公有云(比如 CloudFront,Lambda 以及最近上线的 Cloudflare)提供边缘计算能力,这些能力将快速可用。


Chris Swan (研究员、DXC Technology 副总裁和全球交付组织部门首席技术官)


我赞同丹尼尔、海伦和斯蒂芬的说法。

这里还缺少针对 CD 的"代码 vs 配置"和软件定义交付宣言

关于斯蒂芬强调的边缘计算,“无源”能发展起来吗?目前它还很粗陋,早期的演示是毫无意义还是新趋势的开始还很难说(但综合考虑 IoT 以及对更低 UI 延迟的需求,我倾向于给它一些信任) 。

我可能有点吹毛求疵。人们之所以把 CI/CD 混为一谈,是因为这两种任务往往靠同一些工具完成。但我们都非常清楚,他们根本不一样。 CI 现在无疑处于晚期大众阶段,因为在传统组织中它的实施(相对)容易。我认为 CD 与晚期大众阶段尚有差距,因为首先要把 Dev/Ops 重组为 DevOps,许多公司连这一步还没完成。创新采用曲线中的创新间隔,像一道难以跨越的鸿沟,因为 CD 的采用并不仅仅是技术选型。


Helen Beal 


我认为这是 Chris 等人一个非常重要的澄清。


Manuel Pais (独立 DevOps、持续交付顾问)


关于 CI/CD 的讨论,我担心我们混淆了工具和实践,二者处于不同阶段。我同意 CI/CD 工具正在进入后期大众阶段,但只有部分实践(像 CI 和 CD 书籍中所定义的那样)被广泛应用。 许多组织并没有正确实施 CI(Jenkins最近的一项调查清楚地显示,执行 CI 时所执行的构建远少于你的期望),他们仅仅使用了 CI 服务器。 今年早些时候Dave Farley对(不)创建分支上的批评也说明了这一点。

(注意:之前把它们混为一谈,我也感到很惭愧。但当这个主题处于早期大众阶段时,问题并非像现在这么明显)

如果我们把工具和实践分开,那么我会把工具归入晚期大众,实践仍然放在早期大众。此外,我建议把主题页面和《Accelerate》中的一些实践对应起来,高绩效团队可以把它作为重要实践的参考/框架。

至于其它变化,我的想法有:

DevEx  ——> 归入早期采用者  —— 作为共同关注点由 Atomist 推进

GitOps  ——> 归入早期采用者 —— 由 Weave 推进

Chaos Eng ——> 归入早期采用者  —— 由 Gremlin 推进

AIOps(我们曾称之为“运维洞见和告警的机器学习”) ——> 保持不变

应用程序管道中的不可变基础架构 ——>归入早期采用者

日志聚合/分析 ——>归入早期大众

SRE / CRE —— >需要拆分它们。谷歌仍在探索 CRE(它应该归入创新者),而 SRE 应该归入早期大众

K8s ——>归入早期大众

自助平台 ——>当然归入早期大众

软件定义网络 ——>我不是这方面的专家,但我认为它应归入早期大众

容器/通用 DevOps/基础设施即代码 ——>归入晚期大众

集中式日志聚合 ——>和”日志聚合”重复(见上文,应该在早期大众中单独列出)

我还建议把下面这个新主题添加到创新者:

软件定义交付 ——> 由 Atomist 和SDD宣言推进


Daniel Bryant


感谢大家的精彩讨论。我将会总结出一个主题报告。 我对 CI 和 CD 成熟度之间的差异(以及更低层级上实践和工具之间的差异)特别感兴趣,我们应该对它重点关注一下,它和我们的主题标签有关。

Manuel 建议把 Forsgren、Humble 和 Kim 的《Accelerate》一书优秀成果的关键思想融入到这一版趋势图中,这个建议很棒!这本书正迅速成为业内关键的参考书,就像最近 Manurel 在InfoQ编辑推荐阅读文章列表中推荐的该作者的其它几本书那样。


InfoQ 的编辑团队通过招聘或培训专家来生产新闻和文章,以及分析当前和未来的技术趋势。

关于作者


Daniel Bryant 是组织和技术的变革者。他目前的工作包括:通过引入更好的需求和计划模型在企业中促进敏捷的实施、专注于与敏捷开发相关的架构问题、促进持续集成和持续交付的实施。他目前的技术领域主要包括 DevOps 工具、云计算 / 容器平台和微服务实现。他是伦敦 Java 社区(LJC)的负责人,是多个开源项目的贡献者,为多个知名网站(InfoQ、DZone 和 Voxxed)撰文,并定期在国际大会(QCon、JavaOne 和 Devoxx)上演讲。



Chris SwanDXC.technology 全球交付组织部门的 CTO,之前是 Global Infrastructure Services 的 CTO 以及 CSC 分布式计算的总经理。再往前,他分别是 Cohesive Networks、UBS、Capital SCF 和 Credit Suisse 的 CTO 和总监。在从事这些职位时,他的工作主要面向应用服务器、计算网格、安全、移动、云计算、网络和容器。



Steffen OpelUtoolity 的合伙人,Utoolity 是一家云计算和软件开发流程工具提供商。他最早学习的是 C++,早期专注于富客户端技术,并参与过 RESTful Web 服务架构的转型。行业向云计算的转变激起了他对开发流程自动化的兴趣,他专注于 DevOps 实施,喜欢在敏捷团队中使用 API 驱动开发。


Steffen Opel 是 Utoolity 的管理合伙人。Utoolity 是一个工具软件提供商,提供云计算运营和软件开发流程相关的工具软件。 他接受过正规 C++教育,早期专注于富客户端技术,他很早就开始向 RESTful Web 服务架构转换。 云计算的主要行业转向使他对开发过程的彻底自动化感兴趣,他的重点转移到 DevOps 场景,他在敏捷团队中享受 API 驱动的开发。



Helen Beal 是一位 DevOps 的顾问、教练、培训师、演讲者和作家。 她专注于通过行为、交互和技术方面的改进,帮助组织优化创意转变为价值的过程。 她喜欢骆驼,甚至曾经看到过火烈鸟产卵。 你可以通过 helen.beal@infoq.com 与她联系 —— 尤其是你希望她写某些内容的时候。


nullManuel Pais 是一名专注于团队和工作流的 DevOps 交付顾问。他帮助企业实施自动化的持续交付,知道如何从技术和人性的角度来理解 DevOps。他还是 DevOpsTopologies.com 的联合评论员、InfoQ DevOps 板块的主编里斯本 DevOps 会议的联合创始人、《Team Guide to Software Releasability》一书的联合作者,该书即将出版。Tweet:@manupaisable


查看英文原文https://www.infoq.com/articles/devops-cloud-trends-2019


2019-03-11 08:007290

评论

发布
暂无评论
发现更多内容

采用负载均衡技术总结

superman

一致性hash算法

ashuai1106

极客大学架构师训练营

第五周命题作业

腾志文(清样)

《架构师训练营》第五周 命题作业

java实现一致性 hash 算法

极客李

第五周感悟

路人

极客大学架构师训练营

week5-作业一致性HASH算法的JAVA实现

蒜泥精英

架构师 0 期 | 一致性 Hash 算法

刁架构

极客大学架构师训练营

分布式和异步的技术选型

拈香(曾德政)

缓存 分布式 极客大学架构师训练营 技术选型 异步

架构师训练营 - 第五周学习总结

hellohuan

极客大学架构师训练营

一致性哈希在分布式缓存上的实践

hellohuan

极客大学架构师训练营

架构师训练营第5周作业

R20114

Week5-作业

龙7

架构师训练营 第五周 学习心得

LiJun

深入学习一致性Hash

拈香(曾德政)

算法 极客大学架构师训练营 一致性Hash算法

分布式缓存架构设计

极客李

架构师训练营第五周作业

烟雨濛濛

第五周作业

晨光

第5周 技术选型:技术选型能力反映了架构师的综合水平(一)

陆不得

一致性Hash实现

olderwei

极客大学架构师训练营

week5-作业

蒜泥精英

架构师训练营 第五周 【学习总结】

小K

第五周总结

腾志文(清样)

缓存总结

ashuai1106

架构师 极客大学架构师训练营

架构师训练营 - 第五周 - 总结

sljoai

极客大学架构师训练营 第五周

Vue3 Composition API如何替换Vue Mixins

志学Python

Vue Vue3 composition-api

架构师训练营 -Week 05 命题作业

华乐彬

极客大学架构师训练营 作业 一致性Hash算法

2020-07-04-第五周学习总结

路易斯李李李

第五周作业

重新来过

第五周总结

晨光

架构师训练营第五周-总结

王权富贵

极客大学架构师训练营

InfoQ趋势报告:DevOps 和云计算_DevOps & 平台工程_Helen Beal_InfoQ精选文章