2021年已经走进尾声,这一年全球依旧遮蔽在疫情的阴霾之下,这并不是什么好事情。然而,由疫情所激发的信息技术爆发却是一件好事。
在过去十年,我们见证了数字化转型的快速发展,也见证了DevOps 概念的诞生;而在过去一年中,DevOps 经历了前所未有的飞速成长。
接下来,本文就为大家介绍在过去的一年中DevOps 经历了哪些蓬勃发展。作为时代洪流中的当局者,我们又该怎样应对?
01 2021年我们见证的DevOps发展
1、DevOps成为任何数字业务转型的核心
由于买方行为的重大变化和持续的供应链危机,各种规模的组织都不得不调整其业务模式。DevOps 团队是所有主要数字业务转型计划的核心,因此对 DevOps 专业知识的需求正在迅猛上升,呈现了严重的供不应求趋势。
据预测,未来 10 年我们将看到比过去 40 年更多的数字化转型。如果没有开发人员和工程师携手合作,如果不能做到更快速地构建和部署,恐怕一些企业的发展愿景将难以实现。
2、低代码值得依赖吗?
疫情导致人们对驱动数字工作流的需求激增。低代码的出现,可能减少专业开发人员构建应用程序所需要的时间,这是好事。
但是,值得注意的是,低代码目前依旧难以胜任复杂框架的构建,过程代码构建依旧不可替代。从这一维度上来说,低代码可以在比较低层次上加快开发人员的部署速度,但无法替代更加高级的功能构建。
或许,下一代的低代码将很快由非专业的个人来参与开发,届时涌来如此多的代码会吞没 DevOps 管道吗?这还有待观察。
3、微服务优势凸显
构建应用程序的架构用松散耦合的服务来构建框架的核心概念可以追溯到1990 年代。下一个时代,将是面向服务框架 (SOA)的天下。
当然,微服务本身已经存在好几年了。然而,随着容器作为构建微服务的软件工件的兴起,微服务的优势得到有力凸显:微服务构建不仅需要更少的时间,而且更易于维护且更具弹性。
4、可观察性是DevOps的一项重大进步
可观察性的概念可以追溯到线性动态系统。可观察性的最基本形式就是——衡量外部输出的信息,从而推断出系统内部状态的程度。
在2021年,众多IT供应商推出了各种类型的可观察性平台。这些可观察平台使 DevOps 团队可以更轻松地查询机器数据,在问题造成进一步中断之前主动发现问题产生的根本原因。
与通常仅提供预定义指标来识别特定平台的监控平台相比,这无疑是重大进步。
5、AI 将更好地改变 DevOps
管理 DevOps 环境涉及高度的复杂性。尤其是在数据爆发的现在,数据的快速扩散使 DevOps 团队难以有效地载入、摄取和解锁数据,而想要根据信息做出良好的业务决策就更难了。
AI 可以加快软件发布步伐,帮助企业实现持续交付。这使程序员能够以大约 10倍的速度发布软件,并允许在发布程序之前对其进行审查。
由此,从挑战大量高度复杂数据上来说,DevOps 的未来将由人工智能驱动。如果是要集成和分析数据,人工智能驱动的解决方案将是第一选择。
Gartner指出,到 2023 年,40%的 DevOps 团队将利用具有内置 AI 功能的应用程序和基础设施监控解决方案。Gartner预测,AIOps市场将以每年在3亿至5亿美元之间的惊人速度增长。
02 2022年DevOps实践的4个关键点
1、评估流程永远都是第一步。
DevOps 其实不是一个非常好理解的概念。如果我们不能很好了解DevOps 是什么以及它对组织的意义,那将可能是一个灾难。
不仅如此,团队中的每一个人都需要同步自己对 DevOps 的了解,只有团队充分沟通且“同意”,DevOps 实践才能顺利。这也就是为什么所有公司在切换至 DevOps 时的难点和重点都是——文化建设和学习。
此外,对开发周期的评估也应该是全方位的、从头到尾的。开发的不同流程,有不同的瓶颈,只有找到当前流程不足的领域,才能在实施 DevOps 时锁定重点。
2、协作和目标是DevOps团队的预备动作。
在实施 DevOps之前,就应该要确定团队有没有准备好一起工作和沟通。向每一位成员灌输强烈的协作意识,并为他们提供有助于他们沟通和协作的工具。
此外,明确的目标则为DevOps 实践设立方向,否则任何DevOps实践都将毫无意义。通常,我们可以从一个更小、更容易实现的目标开始,之后再转向更大、更复杂的目标,以防止一次性改变太多带来不可修复的破坏。
3、自动化是DevOps 的重要组成部分。
在DevOps过程中,我们应该尽可能多地使用自动化手段。无论是扫描错误配置的代码还是自动化测试,现下都有各种不同的自动化工具来实现,这对效率的提升无疑是巨大的。
在这个基础上,如果还想进一步的自动化,项目就不得不考量团队是否能跟上了。所以,最好的办法是,从需要大量时间和手工的工作入手,去一步步实现自动化。采用自动化之初,也最好让团队先监控几周,看看进展如何。
4、了解关键指标是重中之重。
从实施DevOps的一开始就应该设置关键指标。如果没有指标,我们将无法跟踪进展,也无法及时发现问题。
大多数组织需要关注的DevOps关键指标都涉及这3点:交付时间、部署时间和平均恢复时间。而这三项指标都能在飞算SoFlu全自动软件工程平台上得到很好的体现。
飞算SoFlu全自动开发平台项目发布的应用服务,在监控运维指标方面已集成健康检查、审计、统计和HTTP追踪等运维性能指标数据,所有的这些特性可以通过JMX或者HTTP endpoints来获得。
同时还可以与外部应用监控系统整合对接,可以方便地通过第三方系统进行监控告警,比如 Prometheus、 Influxdb 、Grafana等。这些系统提供了非常好的仪表盘、图标、分析和告警等功能,使用户可以通过统一的接口轻松地监控和管理应用。
就以 Prometheus+Grafana环境为例,全自动开发平台项目能够以美观漂亮的界面展示程序IO、内存、JVM等性能指标情况:(如下图所示)
详情请戳:www.feisuanyz.com