用大模型自动完成K8s系统的混沌工程全流程。
ChaosEater: Fully Automating Chaos Engineering with Large Language Models
- 基于LLM构建自动化代理工作流,完成需求定义到测试的全部环节。
- 在大小K8s系统上稳定完成混沌实验,成本显著降低。
- 适合希望减少人工投入的运维与研发团队。
混沌工程(Chaos Engineering, CE)是一种提升分布式系统弹性的工程技术,通过人为注入特定故障并观察系统响应,以主动优化系统。现有工具虽能自动执行预设的混沌实验,但实验设计及结果改进仍需人工完成。为降低人工成本,本文提出ChaosEater,一个利用大语言模型(LLMs)实现混沌工程全流程自动化的系统。该系统针对通过代码管理的Kubernetes系统(即基础设施即代码),构建了符合标准混沌工程周期的智能代理工作流,并将工作流中的子任务(如需求定义、代码生成、调试、测试)交由LLM执行。通过在中小型和大型Kubernetes系统上的案例研究验证,ChaosEater能以极低的时间与经济成本稳定完成合理的单次混沌工程循环,且结果经工程师与大模型双重定性评估确认有效。
原文摘要 · Abstract (English)
Chaos Engineering (CE) is an engineering technique aimed at improving the resiliency of distributed systems. It involves artificially injecting specific failures into a distributed system and observing its behavior in response. Based on the observation, the system can be proactively improved to handle those failures. Recent CE tools implement the automated execution of predefined CE experiments. However, defining these experiments and improving the system based on the experimental results still remain manual. To reduce the costs of the manual operations, we propose ChaosEater, a system for automating the entire CE operations with Large Language Models (LLMs). It predefines the agentic workflow according to a systematic CE cycle and assigns subdivided operations within the workflow to LLMs. ChaosEater targets CE for Kubernetes systems, which are managed through code (i.e., Infrastructure as Code). Therefore, the LLMs in ChaosEater perform software engineering tasks to complete CE cycles, including requirement definition, code generation, debugging, and testing. We evaluate ChaosEater through case studies on both small and large Kubernetes systems. The results demonstrate that it stably completes reasonable single CE cycles with significantly low time and monetary costs. The CE cycles are also qualitatively validated by human engineers and LLMs.
Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。