可视化基础设施设计 - 使用 AWS Infrastructure Composer(原 AWS Application Composer) 可视化构建无服务器架构
解析使用 AWS Infrastructure Composer 进行无服务器应用程序的可视化设计。介绍通过拖放进行架构设计以及 SAM/CloudFormation 模板的自动生成。
IaC 模板创建的挑战与 Infrastructure Composer
SAM 和 CloudFormation 模板是强大的 IaC 工具,但 YAML 编写对初学者来说门槛较高,需要在脑中把握资源间的关系。特别是在无服务器架构中,Lambda、API Gateway、DynamoDB、S3、SQS、SNS、EventBridge、Step Functions 等众多资源复杂联动,难以把握模板的全貌。AWS Infrastructure Composer 是一个在可视化画布上通过拖放设计无服务器应用程序架构,并自动生成 SAM/CloudFormation 模板的工具。可视化与代码双向同步,画布上的操作立即反映到模板中,模板的手动编辑也会反映到画布上。
可视化设计与模板生成
Infrastructure Composer 的画布上,AWS 的无服务器资源以卡片形式显示。通过拖放放置 Lambda 函数、API Gateway、DynamoDB 表、S3 存储桶、SQS 队列、SNS 主题、EventBridge 规则、Step Functions 状态机等。用连接线连接资源后,必要的 IAM 策略(如 Lambda 对 DynamoDB 的读写权限)、环境变量(表名引用)、事件源映射(SQS → Lambda 触发器)会自动添加到模板中。各资源的属性(Lambda 的运行时、内存大小、DynamoDB 的键定义等)通过点击卡片进行设置。导入现有的 SAM 模板后,模板内容会展开到可视化画布上,可以直观地把握架构全貌。
VS Code 集成与工作流
Infrastructure Composer 作为 VS Code 扩展 (包含在 AWS Toolkit 中) 提供,AWS 管理控制台的浏览器版本将于 2026 年 12 月 7 日终止支持。Infrastructure Composer 已于 2026 年 10 月 29 日停止接受新客户 (截至 2026 年 10 月)。VS Code 版可以直接编辑本地文件系统的模板,在可视化画布和代码编辑器之间切换标签页进行工作。用可视化进行整体设计、用代码编辑器调整细节属性的工作流是高效的。生成的模板可以直接用 SAM CLI 部署。通过 sam build → sam deploy 命令,可视化设计的架构直接预置到 AWS 环境中。Infrastructure Composer 完全免费,仅对预置的 AWS 资源收取费用。
Infrastructure Composer 的定价
Infrastructure Composer 可免费使用。可视化编辑器、SAM 模板自动生成、与本地文件的同步不产生额外费用。作为 VS Code 扩展也免费提供。产生费用的仅是通过生成的模板部署的 AWS 资源(Lambda、API Gateway、DynamoDB 等)的使用费。
可视化带来的好处
如果只用代码管理基础设施,要把握整体的配置,就需要读懂模板。可视化设计工具将资源及其关系显示为图,因此可以一眼理解架构的全貌。这能帮助新加入项目的成员迅速把握配置,团队内部也更容易统一认识。由于可以直观地确认哪些资源以何种方式相连,也更容易发现设计中的遗漏和错误。能够兼顾代码的准确性和图的易懂性,这正是可视化设计的价值。
与代码之间的往返编辑
可视化设计工具的优势在于可以在图上的编辑和代码中的编辑之间来回切换。在画面上放置并连接资源后,会自动生成相应的 IaC 模板。反过来,也可以读入现有的模板,将其可视化为图。借助这种双向联动,可以灵活地推进工作,例如先以可视化方式搭建大框架,再用代码调整细节。生成的是标准的 IaC 模板,因此可以直接纳入现有的部署机制。不受图或代码任何一方的束缚,可以根据情况分别使用,这一点具有实用性。
在团队开发和评审中的运用
可视化设计在团队进行设计和评审的场合能发挥作用。用图共享架构,即使是技术背景不同的成员之间,也更容易就配置展开讨论。在设计评审中,可以一边看图,一边确认资源是否过多或不足、连接是否妥当。图还可以直接用作设计文档,有助于记录和共享配置。如果与代码评审相结合,就能从细节的准确性和整体的妥当性两方面验证设计。通过共同的图进行沟通,能统一团队的认识,提高设计质量。
适用范围与局限
可视化设计工具并非万能,而是有其擅长的领域。这类工具适合搭建无服务器架构和一定规模以内的架构,可以迅速成形。另一方面,对于非常复杂的大规模基础设施,或大量使用细致的条件分支和循环的高级模板,有时直接用代码编写更容易处理。用可视化设计大框架、用代码补充复杂部分,这种分工是务实的。理解工具擅长的范围,并与基于代码的管理相结合,就能同时确保设计的效率和表现力。
总结 - Infrastructure Composer 的使用指南
AWS Infrastructure Composer 是实现无服务器架构可视化设计和 SAM 模板自动生成的工具。拖放的直观设计、可视化与代码的双向同步、IAM 策略的自动生成是其主要优势。最适合无服务器架构的学习、新项目的原型设计以及团队内的架构共享和评审。可免费使用,通过 VS Code 集成可融入日常开发工作流。
参考资料(AWS 官方)
本页的第一手信息来源是 AWS 官方网站及官方文档。最新的规格与价格请以下列官方页面为准。
如本页内容与官方文档不一致,请以官方文档为准。