智能自动化三方法打破DevSecOps筒仓

CI/CD的广泛应用增加了复杂性,需要构建新的通道消除DevOps和安全团队之间的鸿沟,也迫切需要新的自动化手段。

译自 3 Ways Intelligent Automation Can Break Down DevSecOps Silos,作者 Saif Gunja 领导 Dynatrace 自动化解决方案的产品营销,重点关注 DevOps、平台工程和站点可靠性团队。 Saif 从他之前在 VMware、Apple 和 Deloitte 的角色中积累了 10 多年的信息技术(IT)和营销经验。

如今,DevOps 团队被期望以创纪录的速度交付新的应用和服务。但与此同时,他们架构、技术栈和软件供应链的复杂性继续螺旋上升。在这种复杂性之中,且在持续集成/持续交付(CI/CD)的时代,约三分之一的首席信息官(CIO)(34%)报告说,他们的团队为了跟上创新节奏不得不在安全性上做出了妥协。这种日益增加的速度和日益升高的复杂性要求采用一种新的方法,这种方法消除 DevOps 和安全团队之间的壁垒。它还要求采用一种新的自动化方法。

DevSecOps运动

团队需要集成开发、运营和安全流程的需求催生了 DevSecOps 运动。DevSecOps 旨在打破 DevOps 和安全团队之间的手动交付和延迟。因此,DevSecOps 被视为能够实现更快的发布周期而最小化漏洞风险的最有前途的方法之一。

然而,DevSecOps 的采用还有很长的路要走。只有 25% 的安全团队报告说,他们可以访问生产环境中运行的应用和代码的全面、准确和持续的报告,这表明他们对 DevOps 流程了解有限。为了解决这一差距,组织必须找到方法消除手动工作,以支持 DevOps 和安全团队之间的流程和信息交换。他们需要实现智能自动化,以推动部门之间进行更智能的协作和决策。

什么是智能自动化?

智能自动化是一种基于实时数据得出可靠答案并综合运用预测性、归因性和生成式人工智能(AI)技术的自动化信息技术(IT)流程。

预测性AI模型根据过去的学习推荐未来行动,但针对实时数据采取行动。使用故障树分析的归因性AI根据从动态拓扑和依赖关系图中派生的上下文关系确定根本原因。利用来自预测性AI的见解和归因性AI的精确答案,智能自动化可以使用大语言模型的生成式AI来编写特定响应并生成自定义运行手册和工作流程。

通过协同地将这些不同的AI方法集成到一个框架中,组织可以利用每种方法为特定的自动化用例带来的好处。为了有效地实现这种集成,组织需要将安全性和可观测性数据汇集到一个可扩展的单一分析平台中,该平台针对隐私合规性进行了优化。统一的平台方法打破了数据孤岛,维护了数据集之间的上下文,并使团队能够自动化更多DevSecOps流程。

下面是三个关于支持DevSecOps的智能自动化实践的例子。

1:自动化发布验证的质量门

质量门是交付过程中的一个关键部分,团队在其中验证代码,以确保它满足性能和质量标准以及服务级目标(SLO)。验证测试运行的结果,包括功能、集成、性能等,历史上一直是一个需要DevOps和安全团队输入的手动过程,这反过来使其成为许多项目的天然瓶颈。

然而,随着云原生环境和当代持续集成/持续交付(CI/CD)实践的兴起,明确需要使用清晰、一致和有效的质量门来自动化验证测试。自动化对于验证代码、对软件测试结果执行数据分析以及生成测试后报告至关重要。

自动化发布验证流程的许多手动和重复阶段意味着显着的时间节省和生产力提升。但真正的好处来自于当团队能够引入智能自动化时,其中预测性、归因性和生成式人工智能(AI)聚合在一起以预测可能影响服务级目标(SLO)的发布验证问题、确定其根本原因和下游影响,并制定和执行动态响应。

除了节省时间外,这种协调方法还提高了准确性,并在DevOps、站点可靠性工程和安全团队之间制定了标准。

2:带封闭循环的自动补救

工单通常充当安全和DevOps团队之间的主要通信平台。在大多数组织中,发出和响应工单可以是一个高度手动的过程。然而,手动方法为人为错误带来了巨大空间,这可能导致代价高昂的错误和延迟。

自动化工单分配是解决这些问题的重要第一步。自动化工单分配的关键是明确分类错误类型和定义所有权信息。但即使团队实现了工单分配的自动化,他们仍需要补救基础问题。自动化补救是一个更难解决的问题。

为了实现自动化补救,团队需要准确的答案。基于人工智能(AI)的智能自动化为高度可变和动态的应用环境提供了一个可适应和可靠的基于答案的框架。

当涉及到自动识别和响应问题时,归因性AI可以进行自动化根因分析(RCA),以准确定位问题的成因。然后,系统可以通知负责的团队并触发自动响应,例如应用更新的配置或回滚到先前的版本。通过利用归因性和预测性AI功能,团队可以通过触发补救工作流和自动运行手册来自动检测、标记、分配和解决安全性或性能问题,时间只需几秒钟。

3:渐进式交付与功能标志

智能自动化也可以通过使组织更容易将功能标志嵌入其管道来支持渐进式交付。功能标志允许开发人员在发布新功能或代码时通过快速切换开关来维护更多的控制权。如果新功能或代码行引入缺陷,损害软件性能或稳定性,这可以防止用户或客户体验退化。

开发人员可以使用由可观测性数据驱动的智能自动化来支持这些做法,通过实时了解其应用程序的运行状况。这使他们能够快速确定新的版本何时降低了用户体验,以便他们可以立即作出响应并通过切换功能标志开关来缓解影响。

通过将关键性能指标(KPI)例如错误率和响应时间馈送到由归因性人工智能(AI)提供支持的平台中,开发人员可以立即识别是什么触发了系统行为的变化并了解其对用户体验的影响。除了减轻负面影响外,使用功能标志还可以识别新的版本何时对关键性能指标有积极影响。这使开发人员可以将版本快速扩展到更广泛的用户群。

通过使用这些见解来决定何时切换功能标志的开关,开发人员有了一种更确定的方法来加速创新而最小化服务中断的风险。因此,他们可以专注于持续并主动优化用户体验并为业务带来价值。

DevSecOps的统一平台方法

为了在软件交付的快速节奏和云原生环境中的数据爆炸面前获得优势,组织需要一种方法来统一数据并有效利用人工智能(AI)。

归因性、预测性和生成式AI方法共同为广泛的DevOps和安全自动化用例提供了好处。智能自动化使用统一的平台方法有效地协同应用这些协同的AI方法,为整个组织的各种用例提供可观测性数据的最大优势。

通过聚合任何源的上下文数据,无论是云托管的还是内部部署的,开发、安全和运维团队都可以从同一丰富的数据集协作工作。因此,智能自动化消除了部门数据壁垒,并确保从AI系统获得精确和可信的答案,以驱动更快、更安全、更可靠的软件版本发布。随着团队能够自动化更多流程,他们也可以在不损害安全性的情况下推动更大规模的DevSecOps采用。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注