【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

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:007158

评论

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

Karmada跨集群优雅故障迁移特性解析

华为云开发者联盟

云原生 后端 华为云

与时俱进「风险系统保障质量之路」非同寻常

京东科技开发者

自动化 风险识别 风险控制 预警监控 风险系统

室内高清led电子显示屏的定义

Dylan

LED显示屏 全彩LED显示屏 led显示屏厂家

百度面试被算法血虐,闭关肝完445页算法神仙笔记成功入职字节

钟奕礼

Java 程序员 java面试 java编程

PCB layout有DRC,为什么还要用CAM和DFM检查?

华秋PCB

PCB PCB设计 PCB工具

开源共建 | 中国移动冯江涛:ChunJun(原FlinkX)在数据入湖中的应用

袋鼠云数栈

flink 开源

centos安装python3/pip3项目所需的第三方模块(在线安装&&离线安装)

A-刘晨阳

Linux 运维 Python3 11月月更 pip3

【Linux】之【CPU】相关的命令及解析[lscpu、mpstat]

A-刘晨阳

Linux 运维 cpu 命令 11月月更

聊聊Mybatis的数据源之工厂模式

急需上岸的小谢

11月月更

从零开始学习Java系列之你为什么要学Java?

千锋IT教育

Linux系统保存文件命令的详细介绍

源字节1号

软件开发 前端开发 后端开发 小程序开发

算法基础:区间合并算法及模板应用

timerring

11月月更 区间合并 算法学习

云小课|云小课带您快速了解LTS可视化查看

华为云开发者联盟

云计算 后端 华为云

自动驾驶的「数据引擎」,该如何“降本”、“增效”和“精准化”?

澳鹏Appen

人工智能 自动驾驶 无人驾驶 智能驾驶 数据标注

江西省四家等保测评机构名单详解

行云管家

江西 等保测评 等保测评机构

大数据分析如何进行?瓴羊Quick BI成为了很重要的工具

小偏执o

动手实践丨基于ModelAtrs使用A2C算法制作登月器着陆小游戏

华为云开发者联盟

人工智能 华为云 A2C算法

携手!Kyligence 支持 Amazon EMR Serverless,赋能云上企业降本增效

Kyligence

数据分析 OLAP

聊聊Mybatis的数据源之PooledDataSource

急需上岸的小谢

11月月更

百度架构师手写万字Spring Security实战笔记,一篇就搞懂

小小怪下士

Java spring springsecurity

ElasticSearch 集群迁移最佳实践

冰心的小屋

elasticsearch

桌面端软件的开发框架如何选型

Onegun

macos windows 桌面端 桌面应用

高并发下丢失更新的解决方案

京东科技开发者

幻读 脏读 不可重复读 更新丢失

【昇思生态城市行】南京站圆满举办, 昇腾携手伙伴见证多项重磅发布!

Geek_2d6073

云服务器买谁家的好?为什么?理由是什么?

行云管家

云计算 服务器 云服务器

5种典型 API 攻击及预防建议

SEAL安全

API API安全

Centos7安装Mysql5.7(超详细版)

A-刘晨阳

MySQL Linux 运维 11月月更

炎凰数据完成超亿元 A1 和 A1+ 轮融资,推出异构数据即时分析平台

晨山资本

大数据 大数据处理 大数据分析

主流BI软件,哪一个软件使用效果更好?

夏日星河

隐语 PSI benchmark 白皮书

隐语SecretFlow

密码学 隐私计算 PSI 安全多方计算 隐语

直播预告lApache Hudi 中文社区技术交流会第六弹

StarRocks

数据库

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