AWS 终于推出了自己的 AWS Emulator

AWS Finally Built Its Own AWS Emulator

AWS 终于推出了官方的本地模拟器 AWS Emulator,让开发者无需 AWS 账号即可在本地测试软件。这个工具通过模拟 AWS APIs,让请求直接指向本地环境而非云端,从而彻底消除了测试阶段的额外服务费用。它支持多种运行模式:可以通过 Docker 或包管理器在服务器模式下运行,也能作为 Rust 测试的嵌入式组件直接集成到代码中。虽然它专为开发和测试设计,不适用于生产环境或安全测试,但这一举措极大简化了 CI/CD 流程和开发者的本地调试体验。

你不需要 AWS 账号,你的请求会发送给模拟器而不是 AWS,因此你操作的是模拟资源而非真实的 AWS 资源。
  1. CharlieDigital

    对是否采用持怀疑态度,因为尚不清楚这仅仅是一次演练,还是他们打算正式推出并持续维护的产品。

    Floci[0] 对我而言一直很棒。同时也使用 Testcontainers[1]。

    额外加分项:它也支持 GCP 和 Azure(不过目前仅在有限场景下使用过)。

    [0] https://floci.io/

    [1] https://testcontainers.com/modules/floci/

  2. scriptsmith

    来自安全页面 [0]

    > 请勿使用模拟器测试以下内容:

    > - IAM 策略和权限边界

    > - 基于资源的策略,例如存储桶策略

    > - AWS KMS 密钥策略

    > - 跨 AWS 账户或跨 AWS 区域的访问

    > - 任何其他安全控制

    > 模拟器中的某些服务会评估您在模拟器中创建的 IAM 用户和角色的 IAM 策略,但评估方式与 AWS 不同。模拟器绝不会拒绝使用其自身密钥签名的请求。它不检查 AWS KMS 密钥策略或 Amazon S3 存储桶策略。它也不支持跨账户或跨区域的调用。因此,被 AWS 拒绝的请求可能在模拟器中成功,而 AWS 允许的请求可能会失败。

    这很遗憾,因为我原本希望官方 AWS 产品在这方面能比 ministack 和 localstack 做得更好,后者至少能解决部分问题。我想这是因为智能体(agents)仅基于公开 API 接口构建,所以很难实现这部分功能。但他们本应尝试让智能体读取 AWS 现有的策略引擎。或者,也许这是为了防止有人轻易地将 aws-emulator 作为 AWSaaS 运行?

    [0] https://docs.aws.amazon.com/emulator/latest/userguide/securi...

  3. wg0

    尽管可以随意评论,但如果没有 AI 和智能体,考虑到 AWS 拥有如此庞大的服务数量,没人会想到去构建这个东西。从人力角度讲,虽然可行,但成本极高。我不是说以前没发生过,但 fakecloud 和 localstack 之类的工具呢?那道护城河已经消失了。

    说实话,我对此感到震惊。这竟然成了新常态:智能体在用一种最难上手的语言编写代码。而且说实话,这代码丑得刺眼。我知道这很主观,但这确实是一门对人类极不友好的语言。

  4. morelandjs

    同为亚马逊员工。想说的是,我很感激你们构建了它,如果执行得当并得到妥善维护,它将具有巨大的价值。

    智能体驱动的开发(Agentic development)的核心在于尽可能封闭系统,然后模拟或仿真任何无法封闭的输入或依赖。到了那一步,就让 Claude 在系统中自由探索并完成任务。

    这不可避免地会遇到基础设施相关问题,而任何能帮助模拟这些接口的工具都将极具价值。谢谢你们!

  5. Waterluvian

    如果我理解正确的话,这意味着我可以将整个 CDK 项目指向模拟器,从而测试 `cdk deploy`?

    我很好奇其“内部”行为的模拟程度到底有多真实。虽然已经有一段时间了(自从我的堆栈运行正常后,我就懒得再去动它……),但我记得在设置和清理过程中(即使是透过 Terraform),偶尔会发生一些奇怪且不一致的情况,导致如果操作顺序错误(但看似有效)时会出现漫长的超时。

  6. MiroslavPokorny

    > 目标目录 target/ 至少需要 100 GB 的免费磁盘空间。工作空间中每个 AWS 服务都有一个 crate,因此所有服务的调试构建版本体积很大,并且随着服务的增加而增长。

    100GB!???!

  7. super_linear

    与此帖子相关的链接:https://www.aboutamazon.com/news/aws/how-autonomous-ai-agent...

  8. Shakahs

    AWS 已经用他们创建的规范语言 Smithy 对其所有服务进行了建模。他们的 API 客户端均由 Smithy 生成,而模拟器似乎也是基于 Smithy 规范构建,并针对真实 API 进行了全面的集成测试。使用规范可以确保他们覆盖每个端点的每种变体和可选字段,这与 Floci 和 Ministack 不同,后者仅实现了更常用的部分。

    https://github.com/aws/api-models-aws

    https://github.com/smithy-lang/smithy

同日更多故事

2026-11-11