【阅读原文】戳:阿里云容器服务AI助手2.0 - 新一代容器智能运维能力
前言
随着智算时代的到来,人工智能与大模型的发展正引领着一场前所未有的技术变革,AI工具的广泛应用更可谓是推动了各行各业的创新与发展。
智能运维AIOps,是阿里云容器服务团队追求基础能力建设的目标终态。大模型LLM技术阶跃式发展当前已达到一定程度“可采纳”、“可信赖”的水平,那么下一时代的智能运维AIOps形态也将成为通过AI能力结合已有沉淀的专家诊断体系,以及结合可观测运维体系的丰富数据提供数据驱动力。
为了能够让K8s(Kubernetes)用户借助AI快速上手和自动化、智能化地解决运维难题,2023年云栖大会上,阿里云容器服务团队正式发布ACK AI助手。在过去的近一年中,AI助手持续在线上稳定运行,并累计为上万用户提供服务。2024年11月,阿里云容器服务团队进一步深度融合现有的运维可观测体系,在场景上覆盖了K8s用户的全生命周期,正式推出升级版AI助手2.0,旨在更好地为用户使用和运维K8S保驾护航。
AI之于K8s的意义所在
在正式介绍ACK AI助手之前,我们将结合K8S用户的痛点及其所需的平台能力谈谈AI之于K8S的意义,也是我们发布并持续迭代ACK AI助手的意义之所在。
K8S已然是业界主流
根据CNCF 2023年的用户调研,当前IT生产系统有89%选用Kubernetes架构,这一数据在2022年是76%。可见Kubernetes已然凭借其强大的能力成为业界IT架构的实施标准。
但正因如此,K8s的痛点——较高的运维复杂度和学习成本,也逐渐浮出水面。正如2022年CNCF调研报告所显示的那样:“Kubernetes的使用者反馈使用容器服务的最大障碍和挑战是面对复杂的概念和运维体系的巨大学习成本”(参考 https://www.cncf.io/reports/cncf-annual-survey-2022/)。2023年CNCF调研数据相较于2022年更加凸显复杂性和可观测性问题,安全性和高学习门槛的难题仍不容小觑。(参考:https://www.cncf.io/reports/cncf-annual-survey-2023/)
较原有观测能力,AI助手“革命性”地缩减平均问题解决时间(MTTR)
事实上,在借力AI之前,针对K8s复杂体系的运维痛点我们已有了一些沉淀。阿里云容器服务现有的强大的可观测体系为广大用户提供了全方位的运维支持,包括提供容器场景上下层全面覆盖的数据、经过专业团队经验沉淀的预制监控大盘、默认报警规则等,为集群稳定性、超大流量系统性能提供保障,同时覆盖日常的异常问题诊断等,解决各大业务场景的实际运维挑战。
但是,可观测能力虽强大到能做到凡是遇到异常问题都能提供数据支撑,多年来异常排查链路过于冗长的问题以及相关专业知识学习门槛过高的问题仍然没有得到妥善解决。下图展示了一次典型的K8s上应用异常恢复的过程:
由此可见,虽说可观测体系提供了非常全面的数据支持,但还是需要用户配置上合适的“关键”报警规则、找到对应的监控大盘、看懂监控大盘中的关键指标以及当前的K8s异常事件才能完成“发现异常问题”这一关键运维步骤,然后再根据从监控信息获取的异常根因定论,结合自身使用K8S的经验找出对应问题的SOP解决方案,最终才能彻底解决问题。不管是面对日常运维还是处理紧急线上异常都是如此。通过可观测体系从发现异常到定位问题再到解决问题,整个过程几乎每个环节都需要有K8s观测、运维经验的人员参与。并且当前的运维观测体系散落在各个业务的角落,可谓是进一步增加了用户集中定位问题的时间精力成本。因而,一个完整问题的解决的MTTR(平均故障解决时间)往往非常冗长,这无疑增加了用户造成业务影响甚至资损的风险。
我们再来看看AI助手是如何协助用户解决问题的。如下是AI助手“智能诊断”一个异常应用的路径:
可见阿里云容器服务AI助手只需要点击发起异常诊断,即可获得异常根因结论。AI助手会自动查询相关实体的异常观测数据,如应用的状态、指标、事件等,结合专家诊断经验与LLM判断力快速给出问题结论和分析过程,以及最后会给出该问题的SOP解决方案。MTTR缩短为一步,真正做到在1分钟内发现问题、5分钟内定位问题并给出解决方案、最终让异常问题在10分钟内解决并闭环。
阿里云容器服务AI助手-新一代容器智能运维能力
阿里云容器服务AI助手是我们容器服务团队于2023年推出的一款容器智能运维产品,旨在精准高效地帮助用户解决K8S使用和运维相关的问题。经过我们的不懈努力与迭代,最新的ACK AI 助手2.0版在问题诊出率(是否针对问题给出正确的结论)和问题采纳率(AI助手给出的答案是否被用户采纳)两大关键指标上已取得重大突破,诊断成功率超过80%,根因定位率达到70%以上;应答文档采纳率超过50%,内容采纳率超过40%。接下来我们将详细介绍ACK AI助手的能力及其为用户带来的便利。
AI助手1.0
在2023年我们正式上线了AI助手1.0版本,主要提供了智能快速诊断和智能问答两大能力,以下我们对其能力和交互做些简要的回顾:
- 智能快速诊断 -
在智能快速诊断的场景下,ACK AI助手能够通过ACK可观测体系自动获取ACK集群上的异常监控状态,并结合K8s的拓扑结构快速下钻浅析问题根因,同时融入阿里云容器服务ACK团队多年沉淀的K8s异常诊断、故障恢复的经验,结合ACK已有的专业故障诊断系统(专家系统)的沉淀迅速给出较为准确的诊断结论。(参考:https://help.aliyun.com/zh/ack/ack-managed-and-ack-dedicated/user-guide/pod-troubleshooting-1)
下图展示了一个Pod在尝试拉取镜像时失败导致Deployment出现异常的场景,ACK AI助手可以通过控制台Deployment/Pod 列表“状态”一栏的“智能诊断”按钮直接唤起,并快速对当前异常进行诊断同时给出修复建议:
在主要Kubernetes实体对应列表页的异常状态下均可找到AI助手入口,方便用户在需要时随时快捷唤起并发起诊断。
- 智能问答 -
为了能够让用户尤其是小白用户快速了解容器领域的专业知识,降低学习成本,ACK AI助手的智能问答功能可随时随地通过右下角的icon图标唤起,在这里用户可向其咨询任何与K8s和ACK产品相关的问题,我们参考阿里云卓越架构(参考:https://help.aliyun.com/document_detail/2362204.html),针对稳定性、安全性、成本优化、高可用、高性能这五个维度,同时结合我们的可观测数据及容器服务ACK团队多年来的运维经验、Multi-Agent RAG增强LLM训练,旨在令AI助手更加直接更大程度地解决对应K8s领域问题:
AI助手2.0
经过一年的迭代,ACK AI助手已实现了功能上的全面升级。2024年的云栖大会上,我们推出了ACK AI助手2.0版,与我们现有的观测、诊断、安全性建设相关业务深度结合,旨在于更高维度更大范围为K8s用户保驾护航:
AI助手2.0所提供的能力主要覆盖这几个方面:集群构建(集群规划、辅助生成)、集群运维(智能诊断、智能体检)、集群优化(集群与应用优化、成本优化)、集群安全(集群安全分析、应用安全分析),覆盖从Day 0规划与设计到Day 1部署与初始配置再到Day 2持续维护与优化整个生命周期的运维管理。
lifecycle定义参考:
https://codilime.com/blog/day-0-day-1-day-2-the-software-lifecycle-in-the-cloud-age/
以下我们将按照从Day 0到Day 2的顺序向各位直观展示增强版AI助手如何在运维全生命周期中为用户提供支持。
- Day 0-规划与设计 -
对于使用控制台创建集群的用户,AI助手会在其进入创建确认页时自动被唤起,并基于ACK专家的相关经验快速对即将被创建的集群的配置进行快速分析,从稳定性、安全性、性能和网络等多个维度提供优化建议:
除此之外,我们在创建集群页提供了划词咨询功能,用户可以通过此途径便捷地唤起AI助手对选中字段进行解释,从而扫除知识盲点造成的障碍:
非控制台用户同样能受益于AI助手,它可以辅助生成包括Terraform等在内的基础设施即代码(IaC),大大简化集群资源配置的编排过程:
AI助手专家般的辅助支持使得集群部署的效率显著提升,用户不必再过度聚焦繁琐的配置细节,而是可以更关注自身业务的发展。
- Day 1-部署与初始化配置 -
创建集群后,许多应用需要通过编写YAML来部署,而编写出生产可用的YAML 定义显然对于未深入了解K8s的用户而言确实有一定难度。针对这一点,AI助手提供了两大相关核心能力:YAML生成和YAML优化,二者均可在控制台YAML创建页通过对应按钮唤起:
对于YAML生成功能,AI助手可以从零创建YAML文件,或在现有的Deployment、StatefulSet等基础上快速生成所需Service、VPA等配置。这一功能能够帮助用户高效创建符合生产标准的资源定义;YAML优化功能则是针对用户已存在的YAML文件提供优化建议,包括资源限制、健康检查、自动扩缩容等最佳实践的融合,确保配置的最佳实践得以应用:
AI助手的这两大功能可以帮助用户迅速掌握K8s应用部署的技巧,使之能够“站在巨人的肩膀上”迅速迈出生产环境部署的第一步。
- Day 2-持续维护与优化 -
随着集群上业务规模的增长,越来越多的难题浮出水面。首先是针对一些偶发的集群异常和故障,我们缺乏降低风险的长效机制,相关处理速度也有待提高。除此之外,集群维度的安全风险状态也是用户高度关注的一大问题。而伴随着业务的扩张,成本管理也变得愈发重要。
为了满足客户在稳定性、安全性和成本这三个关键领域的需求,AI助手提供了针对性的功能支持。
稳定性
集群智能体检
为了提升集群的稳定性,AI助手提供了智能体检功能,用户可以通过控制台上的“AI智能体检”按钮直接唤起,体检程序将从稳定性、安全性和成本等方面自动分析并生成全面的集群风险分析报告,比如组件版本是否需要升级、配额是否充足、资源使用情况是否存在风险等重要信息等。要实现集群体检能力,ACK进行了大量的数据采集与分析。数据源包括可观测性数据、FinOps与安全套件、集群巡检等,结合ACK的20多个领域检查项,运用增强型大模型进行深入分析。用户只需简单点击控制台上的智能体检按钮,即可快速启动体检程序,系统将自动生成全面的集群风险分析报告。接下来我们看一个实际的例子:
通过AI助手的集群一键体检能力,在稳定性上诊断出集群具有CoreDNS的单点故障风险,即CoreDNS多个副本部署在同一个节点上。CoreDNS作为K8s集群DNS解析的重要组件,如果节点宕机不可用,会影响整个集群的DNS服务,而AI助手成功的为我们发现了这一稳定性风险:
智能体检功能能够让用户在问题发生前,提前识别出潜在风险并进行处理,从而维护集群的稳定,从源头预防重大故障的发生。
智能诊断
在AI助手1.0中我们提供了Deployment、Pod、Event、Node等K8s实体的智能诊断,AI助手2.0对诊断的场景做了更加全面的覆盖,主要有几个:
• API调用诊断:控制台调用云产品API如果发生错误,会有弹窗提示,对此AI助手提供了针对相关错误的诊断能力并在错误弹窗上提供入口,告知用户问题产生的原因以及对应优化的建议。
• 集群日志分析:对于集群存在异常的日志,AI助手提供了对日志进行一键分析的能力。
• 管控任务的诊断:ACK目前提供的运维操作更多的是基于任务维度的,因此我们也针对失败的任务提供了智能诊断的相关能力。
• 集群报警诊断:结合用户收到告警后会前往告警历史列表查看的使用习惯,我们在告警页面提供了相应的智能诊断入口。
• 组件诊断:对于安装、升级、变配失败的组件,我们同样提供了智能诊断能力及入口。
以上所有智能诊断相关能力都在控制台上通过显眼的按钮透出,用户能够通过其一键唤起AI助手进行诊断,从而大大减少定位、排查、解决集群问题的时间。
安全性
针对安全性这一领域,AI助手2.0提供了智能安全分析能力,旨在基于容器服务的安全能力,并结合专家知识、容器领域大模型,将集群安全风险快速透出。
智能安全分析包含以下几个方面:容器镜像安全扫描、安全策略辅助配置、集群节点CVE检查、工作负载配置风险扫描、集群运行时风险监控。
下图展示了CVE漏洞解读与安全策略生成相关功能:
AI助手通过大模型驱动的安全分析,为客户提供详尽的自然语言安全报告,同时提供一键跳转的解决方案,帮助客户快速发现集群安全风险并快速实施修复操作。
成本
节约成本是用户选择业务上云和使用K8s的主要目的之一。随着业务的扩张,帮助用户节约成本是我们的责任。针对这一点,我们提供了应用和集群的双重成本智能分析优化能力,包括以下两个方面:
• 资源配置优化:通过集成资源画像功能,帮助用户找到更合适的资源请求(request)和限制(limit)配置,以实现更合理的资源分配策略。
• 闲置资源检测:检查包括ECS、SLB和EIP在内的各种资源的占用情况,分析后提供闲置资源清单,以帮助用户减少不必要的开支。
借助AI助手,客户能够快速识别并解决成本浪费问题,提升整体运营效率。
展望
ACK AI助手是我们阿里云容器服务团队进行的一次尝试,虽说当前还并未达到我们最满意的终态,但在我们的不懈努力下,AI助手2.0版本已能提供相当自然流畅的人机对话机制,即便是初涉该领域的小白用户甚至是非技术人员,都能够轻松与之进行交流并获取有用信息或者针对特定任务的指导。这不仅降低了使用K8S的门槛,更是极大程度地提升了用户体验。
当下我们正在加强对于监控数据的处理,旨在追随并借助先进的机器学习算法和深度神经网络模型,从而实现AI助手对海量日志及指标信息的实时分析,使之能够自动识别潜在问题并预测可能出现的风险点,它不仅能够快速定位异常模式,还能够深入挖掘背后的原因,为用户提供全面而精准的数据洞察。我们也会持续沉淀和优化背后的知识库,旨在让AI助手面对新型挑战时作出更为准确合理的判断。
将“从发现问题到解决问题”这一整个流程平滑无缝地衔接是我们持续研究的重点,旨在让AI助手在检测到异常后,立即启动根因分析程序,并根据预设规则或者历史案例推荐最合适的解决策略。对于简单且常见的故障类型,AI助手可以完全自动化地执行修复操作;而对于复杂度较高的或者必须要人为介入决策的情形则会提供详尽的操作指南和支持工具,协助用户高效完成运维工作。这种端到端的服务模式不仅能大大缩短故障恢复时间,也大大降低了工作负担和人工成本。
ACK AI助手作为国内首家推出云原生容器场景的原生AI产品功能,于2023年云栖大会被推出并宣发,其2.0版本已于2024年11月发布上线并全面对外开放。我们诚邀大家一起来体验AI助手,感受其带来的便利,同时也敬请期待ACK AI助手后续的产品能力迭代演进与发展。
我们是阿里巴巴云计算和大数据技术幕后的核心技术输出者。
获取关于我们的更多信息~