中文

静态推断基础设施即代码的使用边界

软件工程 2024-02-27 v1

摘要

基础设施即代码 (IaC) 使云客户在创建和修改云配置资源的复杂部署方面具有更高的敏捷性。通过编写 CloudFormation 等 IaC 语言的配置,用户可以声明式地指定其基础设施,而 CloudFormation 将处理资源的创建。然而,理解 IaC 部署的复杂性已成为一个尚未解决的问题。特别是,估算 IaC 部署的成本需要估算部署中每个云资源的未来使用情况和定价模型。获得对预测使用量/成本的透明度是云管理中的一个主要挑战。现有工作要么依赖历史使用指标来预测成本,要么依赖忽略资源间交互的粗粒度静态分析。我们的核心见解是,IaC 部署的拓扑结构对每个资源的使用施加了约束,我们可以利用 SMT 求解器形式化并自动化这种约束推理。这使得客户能够对其云使用量的边界获得形式化保证。我们提出了一种细粒度静态使用分析工具,该工具通过将 IaC 部署中的资源间交互建模为一组 SMT 约束来工作,并在包含超过 1000 个真实世界 IaC 配置的基准上评估了我们的工具。

关键词

引用

@article{arxiv.2402.15632,
  title  = {Statically Inferring Usage Bounds for Infrastructure as Code},
  author = {Feitong Qiao and Aryana Mohammadi and Jürgen Cito and Mark Santolucito},
  journal= {arXiv preprint arXiv:2402.15632},
  year   = {2024}
}