摘要
arXiv:2501.11107v2 Announce Type: replace-cross
摘要:混沌工程(Chaos Engineering,CE)是一种旨在提高分布式系统弹性的工程技术。它通过人工向分布式系统注入特定的故障并观察其响应行为来进行。基于这些观察,系统可以提前进行改进,以更好地处理这些故障。最近的CE工具实现了预定义的CE实验的自动化执行。然而,定义这些实验以及基于实验结果改进系统仍然需要手动操作。为了减少手动操作的成本,我们提出了ChaosEater,这是一个使用大型语言模型(LLMs)来自动化整个CE操作的系统。它根据系统化的CE周期预定义了自主的工作流程,并将工作流程中的操作分配给LLMs。ChaosEater主要针对通过代码管理的Kubernetes系统(即代码即基础设施)进行CE。因此,ChaosEater中的LLMs执行软件工程任务来完成CE周期,包括需求定义、代码生成、调试和测试。我们通过对小规模和大规模Kubernetes系统的案例研究评估了ChaosEater。结果表明,它能够以显著降低的时间和财务成本稳定完成合理的单次CE周期。这些CE周期还经过了人类工程师和LLMs的定性验证。