AICon全球人工智能与机器学习技术大会9折特惠中,点击立减¥480>> 了解详情
写点什么

人工智能正在接管 DevOps 吗?

2021 年 10 月 13 日

人工智能正在接管DevOps吗?

对于许多开发人员来说,预测 DevOps 的下一步已经成为他们最喜欢的一种消遣。在过去的十年里,我们看到我们的行业迅速变化,在同一时期,程序员的角色也发生了根本性的变化。


事实上,尤其是那些(我们应该说)特定年龄的开发者中,“传统”开发者的角色似乎已经不复存在。与传统的软件开发生命周期(即软件的规划、构建和发布)不同,我们中的许多人现在都在多职责团队中工作,在这些团队中,开发和运维并存,并且越来越难以区分。


这种模式被称为DevOps,但只是在最近开始流行。而且 DevOps 本身只花了几年(或者几个月?)就开始改变和适应。现在,我们正漂泊在首字母缩略词的海洋中(包括最近的DevSecOps),这些首字母缩略词表示一种稍微不同的工作方式,每个首字母缩略词对未来的看法也略有不同。


其中最新的是AIOps。在这个愿景中,AI 工具正在慢慢取代开发者的角色——就像 DevOps 以前做的那样——并最终将完全取代 DevOps。


评估这一预测是否正确是一件棘手的事情,但在本文中,我们仍将尝试。我们将看看 AI 承诺为开发过程做些什么,评估它是否真的能够从人类开发者手中接管,然后看看 DevOps 在几十年后可能会是什么样子。

自动化的前景

首先,为了理解为什么 AI 工具被 DevOps 团队如此迅速地采用,了解它们承诺能够实现什么是非常有用的。这一承诺基本上可以分为两部分:


  • 一方面,AI 工具的使用“仅仅”是过度紧张的开发人员掌握他们所使用的日益复杂的系统的一种方式。

  • 另一发面,AI 工具提供了一系列自动化代码开发和部署技术,从根本上改变了软件的制作方式。


关于前者——让我们的生活更轻松的 AI 工具——我们只需看看过去十年中云基础设施模型的激增,就知道为什么人工智能是必要的。如今,大多数公司都使用某种形式的混合或云基础设施,如果没有某种形式的人工智能帮助,管理这些基础设施几乎是不可能的。事实上,混合和多种云基础设施、容器和超大规模应用程序等微服务架构,创造了一个比以往任何时候都更复杂的企业 IT 环境。


其次是人工智能工具采用的第二个方面——事实上,一些人工智能工具,如 GitHub 的人工智能编码助手或微软的 DeepDev,不仅让我们的生活更轻松,还为代码开发和分发开辟了新的可能性。例如,人工智能系统评估单个用户需求的速度,使得使用 AI 来调整和指定每个用户的默认Web浏览行为成为可能,从而降低了它们在使用我们的软件时对特定类型恶意软件的脆弱性。

DevOps、AIOps 和 NoOps

由于 AI 工具的实用性,除了最顽固的 DevOps 团队,它们已经被所有团队广泛迅速采用。事实上,对于现在运行多个不同云的团队(差不多是所有团队,非常多),人工智能接口几乎已经成为他们发展和扩展他们的DevOps程序的必要条件。


这种转变最明显、最具体的结果是开发人员花时间查看的数据和系统。例如,过去运维团队的一个主要角色是构建和维护一个仪表盘,所有工作人员都可以查看这个仪表盘,该仪表盘包含一个软件上的所有适当数据。


如今,这一中心任务已经基本过时。随着软件变得越来越复杂,用一个仪表盘包含某一特定软件的所有相关信息的想法开始听起来很荒谬。相反,大多数 DevOps 团队在使用人工智能工具“自动”监控他们正在使用的软件,并且只有在明确出现问题时才显示数据。


这是我们作为开发人员和运维人员工作方式的重大转变,因此它被赋予了自己的首字母缩略词——AIOps,也就不足为奇了。事实上,有些人甚至更进一步,声称这种对人工智能工具的依赖现在意味着我们正在进入NoOps时代。然而,关于哪个角色被取消存在分歧——无论 NoOps 是指“没有开发人员”还是“没有运维”。

AI 革命

所有这些关于软件开发哲学背景的思考听起来可能有点抽象。直到你看到数字,从中可以明显看出,人工智能已经对软件的发布速度(和质量)产生了巨大的影响。


GitLab 最近对 4000 多名开发人员进行了调查,得出了一些确切的数据。调查发现,一些公司发布新代码的速度比以前快了十倍。很明显,75%的用户使用人工智能和机器学习来测试和审查预发布的代码。这比一年前的 40%略高。



图片来源


这对于开发人员来说是个好消息,或者至少对于那些希望快速生成大量代码的人来说是个好消息。不幸的是,这并不总是与生成优秀代码相同。例如,从勒索软件攻击趋势可以明显看出,测试不良的代码正迅速成为许多组织的一个显著漏洞源,人工智能驱动的测试系统的出现对减少这一漏洞几乎没有什么作用。


尽管如此,前进的方向是显而易见的。再过几年,DevOps 团队中的绝大多数似乎都将依赖人工智能工具,软件的发布速度将是以前的数倍。这让我们回到了我们开始的问题——考虑到人工智能工具现在做了这么多 DevOps 工作,我们还需要 DevOps 人员吗?


好吧,既是,也不是。原因如下。

挑战

在最肤浅的层面上,可以通过一个非常简单的测试来回答这个问题。随着人工智能工具在整个开发部门的应用,开发人员的工作量是否减少了?问一个普通开发者的问题,你会得到一个笑声。答案是否定的。


这是因为,随着 DevOps 团队在其软件的日常管理上花费的时间越来越少,他们过去在这方面花费的时间现在被更具价值的任务占用了——战略规划、元分析,以及确保他们的开发目标与管理目标一致。事实上,许多人认为会使DevOps过时的人工智能“革命”似乎使团队比以往任何时候都更庞大、更繁忙。这是因为它的副作用是使开发周期大大加快。


这一点得到了业务管理者的充分理解。在最近对ZDNet的采访中,iTech AG 的执行副总裁 Matthew Tiani 指出,DevOps 现在“通过增强的技术工具集(包括源码管理、CI/CD、编排)得到了增强。”


他还补充说,DevOps 的成功实施利用了“一种兼容的开发方法,例如敏捷和 scrum,以及一种促进和鼓励开发人员和运维人员之间协作的组织承诺。”

学会共存

实际上,这些因素和趋势意味着 DevOps 团队越来越关注业务目标,而不是技术挑战。这当然是一个变化,但这对于我们生产的软件的质量应该不是一个消极的变化。可以说,事实上,人工智能工具使团队能够将人力资源集中在他们最擅长的地方——创造性、整体性和战略性任务中。


你不需要找太远的证据。举个例子,Vue JS 现在是世界上增长最快的开发框架,现在已经有240000多个在线网站是用这个框架构建的。在人工智能工具出现之前,一个新的复杂的开发框架可以如此迅速地在全世界推广的想法是可笑的。现在,在人工智能工具的支持下,DevOps 团队有了更多的自由来勇敢地做出决策,相信他们的工具足够先进来应对技术挑战。


这意味着人工智能工具不太可能取代 DevOps,或者至少在短期内不会取代 DevOps。正如我们在采用DevOps的之前趋势中看到的那样,开发团队仍然需要战略领导,无论他们的技术工具如何先进。而且,尽管人工智能现在在许多领域都有很强的能力,但它们仍然缺少以真正创造性的方式响应用户需求的能力。

最后

总而言之,我们可能还需要人力开发人员一段时间。尽管他们的角色可能与十年前完全不同,但这就是在如此发展变化的行业工作的代价(和乐趣)。


作者介绍


Sam Bocetta 曾是一名安全分析师,他职业生涯的大部分时间在海军担任网络工程师。他现在已经半退休,向公众传授安全和隐私技术。Sam 的大部分工作涉及弹道系统的渗透测试。他分析了我们的网络,寻找切入点,然后根据我的发现创建了安全漏洞评估。此外,他还帮助规划、管理和执行复杂的黑客攻击演练,以识别漏洞并降低海军(路上和海上)使用的企业系统的风险态势。他的大部分工作集中在识别和防止应用程序威胁和网络威胁,降低攻击向量区域,消除漏洞和常规报告。他能够发现弱点并制定新的战略,支持我们的网络抵御一系列网络威胁。Sam 与架构师和开发人员密切合作,为应用程序中发现的漏洞确定缓解控制措施,并执行安全评估,以模拟各种威胁的策略、技术和程序。


原文链接:


Is Artificial Intelligence Taking over DevOps?

2021 年 10 月 13 日 15:481

评论

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

程序员之禅(三)

每天读本书

每天读本书

如何解决移动直播下的耳返延迟问题

融云 RongCloud

音视频 移动直播

瓦力量化交易系统开发|瓦力炒币机器人软件APP开发

开發I852946OIIO

系统开发

2021“金三银四”刷爆朋友圈的“Java核心面试知识手册”这波Offer稳了

Java架构之路

Java 程序员 架构 面试 编程语言

农田治理效率低下还赔本?智慧农业力保粮食品质,效率事半功倍

一只数据鲸鱼

物联网 数据可视化 智慧城市 智慧农业 农业管理

CentOS安装Docker运行环境

wjchenge

Docker Centos 7

中国程序员最容易发错的单词

happlyfox

GitHub 学习 程序人生 3月日更

大赛报名|首次聚焦口罩场景!第三届 106 点关键点定位大赛开启

京东科技开发者

人工智能 深度学习 计算机视觉

萌新不看会后悔的C++基本类型总结(一)

花狗Fdog

微服务指南

信码由缰

DevOps

工作中,有哪些SQL是我们必须要掌握的?

xiezhr

oracle sql SQL语法 3月日更

酷睿i7-10870H对比锐龙7 5800H游戏性能, 英特尔仍是游戏本CPU的更优选

新闻科技资讯

CodeHub#4 启动报名| 荷小鱼:K12 在线教育应用的开发实践

蚂蚁集团移动开发平台 mPaaS

在线教育 mPaaS codehub 离线包

小树量化交易系统开发|小树炒币机器人软件APP开发

开發I852946OIIO

系统开发

【LeetCode】用栈实现队列Java题解

HQ数字卡

算法 LeetCode 28天写作

百亿级流量的百度搜索中台,是怎么做可观测性建设的?

百度Geek说

中台 云原生 #百度#

基于 Wasm 和 ORAS 简化扩展服务网格功能

阿里巴巴云原生

Docker 容器 微服务 云原生 k8s

【得物技术】会议室巡检系统(哮天犬)部署分享

得物技术

分享 部署 巡检 得物技术 会议室

想看新指标?教你轻松写prober插件

滴滴云

运维 滴滴夜莺 Obsuite prober插件

凡尔赛一波:开年闭关2月从小厂跳槽逆袭,成功入职美团(面经+心得)

程序员小毕

Java 程序员 面试 跳槽

Nginx 模块系统:前篇

soulteary

nginx 动态模块

DataPipeline通过华为鲲鹏兼容性认证,以自主科技创新推动中国信息产业进步

DataPipeline数见科技

大数据 数据融合

金三银四如何突击面试美团?面试题(含答案)+学习笔记+电子书籍+学习视频

比伯

Java 编程 架构 面试 程序人生

英特尔:i7-10870H 游戏性能超 R7 5800H,更强的 11 代酷睿 H 在后面

新闻科技资讯

重磅!Flutter中网络图片加载和缓存源码分析,BAT大厂面试总结

欢喜学安卓

android 程序员 面试 移动开发

企业级链表设计思路:

大忽悠

3月日更

舒畅,阿里大牛终于把困扰我多年的「Spring全家桶」讲明白了!十年IT老兵亲述Spring实战经验

Java架构之路

Java 程序员 架构 面试 编程语言

Pano React Native SDK 来了!快速实现移动端音视频和白板

拍乐云Pano

flutter ios android RTC React Native

腾讯T2大牛手把手教你!2021新一波程序员跳槽季,算法太TM重要了

欢喜学安卓

android 程序员 面试 移动开发

华山版强势来袭!阿里巴巴Java性能优化2021年3月版(面试必备)

Java架构追梦

Java 阿里巴巴 架构 面试 性能优化

当AI开始改造“文房四宝”:腾讯教育的脑洞与逻辑

脑极体

数据cool谈(第1期)数据库寻路,开源有态度

数据cool谈(第1期)数据库寻路,开源有态度

人工智能正在接管DevOps吗?-InfoQ