DevOps自诞生以来已历经多年,毫无疑问将在2021年继续发展。随着众多组织追求数字化转型的最佳实践,了解行业领导者对DevOps未来走向的看法显得尤为重要。以下是对2021年DevOps发展趋势的分析。
1. 微服务迁移成为必然趋势
WIPRo LiMITed公司的DevOps首席工程师SacHidananda PattnAIk指出,从单体应用向微服务和容器化架构的转型,是所有组织数字化转型过程中的关键步骤。KubeRnetes的采用将日益普及,而在多云环境下,TeRRafoRM将成为自动化基础设施的理想选择。
2. 混合部署模式将成为常态
DevelopeR Relations公司的副总裁Stephen CHin表示,2020年远程工作加速了向云端的迁移,DevOps理念也逐渐成为企业运营的重要组成部分。进入2021年,行业将在多个方面采纳混合模式,首先是混合型劳动力的出现,结合远程与现场团队的优势;其次,商业模式将融合虚拟与本地网络的元素;最后,随着组织现代化堆栈以利用云原生技术,混合部署将成为标准,需注意并非所有服务都能迁移至外部。积极接纳混合业务模式的公司将引领2021年的市场。
3. DataOps的崛起
Rakuten公司的高级DevOps工程师NiRav ChotAI表示,DataOps将在2021年迎来蓬勃发展,疫情促使组织在远程工作中数字内容消费大幅增加,迫使自动扩展和自我修复系统的实现达到新高度。过去,DevOps主要用于日志记录和监控,而现在应该更加强调利用数据和指标提供有价值的见解,结合机器学习模型来预测事件和中断,并开发能够从数据中学习的自动化以提升预算规划。许多组织已经开始探索MLOps/AIOps。
4. 弹性测试将成为主流
NeotYs公司的产品主管PatRick Wolf指出,可观察性、性能测试和弹性测试的交集将成为市场关注的焦点。随着AWS和Google等行业领头羊发布的新挑战,以及各行业数字化转型的加速,市场逐渐认识到,仅靠公共云或私有云的无限扩展并不足够。
5. GitOps的常态化
为了使开发过程更加高效,开发人员需要掌握相关工具。GitOps正是DevOps通过开发者工具推动操作的一种方式。梅西百货的首席架构师SouMen SaRkaR认为,GitOps是一种实现持续交付的方法,利用Git作为基础设施和应用程序的真实来源。当在Git中提交并批准更改时,自动化的持续集成/持续交付管道将相应地更新基础设施。此外,GitOps还会利用差异工具对比实际生产状态与源代码管理状态之间的差异,并在发现不一致时通知相关人员。GitOps的目标在于加速开发进程,使团队能够安全地对KubeRnetes中的复杂应用进行更改和更新。
6. 更多组织将业务迁移至无服务器架构
ADP Lifion公司的站点可靠性工程经理SHivaRaMakRishnan G表示,2021年将是越来越多组织转向无服务器架构的一年。按需付费模式将使得企业仅在使用时产生费用,但需考虑基于k8s pod的微服务,以便在需要时在无服务器环境中运行相应服务。
7. NoOps的出现
ClickIT SMaRt Technologies的首席执行官Alfonso Valdes认为,未来会有更多托管服务的出现,DevOps运营将减少,从而降低客户的运营成本。无服务器应用和服务如AuRoRa、FARgate、AMazon S3等将更为普遍,并且AMazon ECS/EKS在数据中心的应用将减少对数据中心的维护和开发需求。越来越多的云原生原则和特性也将在数据中心得到应用,例如Knative。
8. BIzDevOps的兴起
Petco公司的DevOps经理Chad PRey指出,随着企业从DevOps中获得的价值不断增长,架构和公司层次结构也朝着成本优化的方向演变。FAaS的应用如无服务器和LaMbda等仍在起步阶段,但运营问题正逐步得到解决,行业对其发展潜力的认识不断增强。
9. 基础设施即代码(IaC)的重要性上升
沃尔沃汽车公司的高级解决方案架构师NiRaj TRIPatHi强调,基础设施即代码(IaC)是云中DevOps的核心原则。无论是内部设施还是云中的服务器、网络和存储设备,都可以通过IaC进行定义,这使得组织能够实现基础设施的自动化和简化。此外,IaC还提供了基础设施版本控制系统,团队能够在出现灾难性故障时快速回滚到最近的有效配置,以减少停机时间。
10. 自动化与混乱工程的重要性日益增强
直布罗陀印度发展中心的NikHil BhandaRi表示,从构建到发布,所有过程都应实现自动化。快速、可重复、灵活且可靠的自动化是任何项目成功的关键。系统行为与客户体验密切相关,越早进行测试,就能为客户提供更优质的体验。
11. 云原生方法将实现标准化
行业专家Ben Sapp表示,随着云计算在过去十年的蓬勃发展,容器化逐渐成为标准化做法,未来一切都将趋向标准化。这种转变与大型机时代的变化相似,尽管还有许多趋势和机遇尚待挖掘,但行业仍在不断探索未来的颠覆者。当前的一切与五年前的最佳实践基本相同,DevOps和云原生方法已实现了许多目标,包括管道、托管、存储和负载平衡等。
12. 安全性将日益重要
行业专家Cloud SkiFF指出,从DevSecOps的角度来看,能够有效追踪基础设施中不受控制的变化是至关重要的。虽然代码的基础设施非常优秀,但其中存在许多可移动的部分:代码库、状态文件以及实际的云状态。这些变化可能由于多种原因产生,包括开发人员通过Web控制台进行的未通知更新,以及云计算提供商的不可控更新。因此,在基础设施迁移与代码库之间的协调将面临挑战。
13. 混沌工程将变得愈加重要
InteRnational technology VentuRes的首席技术官Kelvin Meeks表示,混沌工程在越来越多的组织中将成为DevOps规划讨论的重要组成部分。混沌工程是一种在生产环境中实验软件系统的学科,旨在增强系统抵御突发事件的能力,但大多数组织仍未广泛采用此方法。
14. 更加关注即时日志以快速验证结果
ADESA平台稳定性主管CRAIg Schult表示,在后期部署中,使用日志验证发布成功与否或是否存在严重错误变得至关重要。人们需要构建的最大连接是定义人工流程,并随之实现自动化的飞跃。通过一键部署和即时日志,可以迅速验证成功或失败,并触发回滚。然而,复杂性和跨服务的依赖关系也随之而来,因此需要考虑是否可以回滚某些内容,或者是否需要对其他服务进行进一步测试。
15. DevSecOps将成为DevOps的默认组成部分
JFRog公司的首席技术官Eldad ASSis表示,DevSecOps中的“Sec”部分将逐渐成为软件开发生命周期不可或缺的一部分,安全性“向左移动”的理念将成为新常态,持续集成/持续交付管道中将减少专门的安全步骤,而安全的自动感知和操作将融入所有流程步骤中。从开发人员的集成开发环境(IDE)开始,涵盖依赖关系和静态代码分析,安全性及其自动识别和响应将成为流程的每个环节。在未妥善解决这些问题的情况下,不应发布软件组件,而开发人员所面临的最大安全挑战则是使用开源软件。
