AWSがついに自社製AWSエミュレータを公開
AWS Finally Built Its Own AWS Emulator
AWSが公式リポジトリ aws/aws-emulator を公開した。AWSアカウントなしでローカルやCI上でAWS APIをエミュレートできる。CLIや任意のSDKをエンドポイントに向けるサーバーモードと、Rustのテストに組み込む組み込みモードを備える。サービスごとにクレートを分けた構成で、リリースごとに忠実度スコアを公開。テレメトリはデフォルト有効で、無効化も可能。本番用途やセキュリティ検証には使うなと明記されている。
AWS Emulatorはビルドとテストのためのものだ。本番ワークロードやセキュリティのテストには使わないこと。
HNでの議論
220- CharlieDigital
これが単なる演習なのか、実際にリリースして保守していく本物の製品なのかがはっきりしないので、使うことには懐疑的です。
Floci[0]は私にとって素晴らしいものでした。Testcontainers[1]も使っています。
おまけにGCPとAzureでも動きます(ただし、今のところ限られた範囲でしか使っていませんが)。
- scriptsmith
セキュリティページ[0]より
> エミュレータを使って以下をテストしないでください:
> - IAMポリシーとアクセス許可の境界
> - バケットポリシーなどのリソースベースのポリシー
> - AWS KMSキーポリシー
> - AWSアカウント間またはAWSリージョン間のアクセス
> - その他のセキュリティコントロール
エミュレータ内の一部のサービスは、エミュレータ内で作成したIAMユーザーとロールのIAMポリシーを評価しますが、AWSと同じ方法ではありません。エミュレータは、自身のキーで署名されたリクエストを決して拒否しません。AWS KMSキーポリシーやAmazon S3バケットポリシーをチェックしません。また、アカウント間やリージョン間の呼び出しをサポートしていません。そのため、AWSが拒否するリクエストがエミュレータでは成功する可能性があります。AWSが許可するリクエストが失敗する可能性もあります。
これは残念です。公式AWS製品が、例えばministackやlocalstackよりもこの点で優れていてほしいと思っていました。ある程度は改善されるでしょう。エージェントは公開APIサーフェスの上でしか構築していなかったので、この部分を構築するのは難しかったのだと思います。しかし、試みるべきでしたし、エージェントにAWSのポリシーエンジンを読ませるべきでした。あるいは、誰かがaws-emulatorをAWSaaSとして簡単に実行するのを防ぐための方法なのかもしれません。
[0] https://docs.aws.amazon.com/emulator/latest/userguide/securi...
- wg0
何と言っても、AIとエージェントなしでは、AWSの誰も、これだけ多くのサービスを抱えてこれを構築しようとは思わなかったでしょう。人間にも可能ですが、非常にコストがかかります。以前に起こらなかったとは言いませんが、fakecloudやlocalstackなどは?その堀はもうありません。
正直に言って、これが新しい常態であることにショックを受けています。エージェントが最も扱いにくい言語の一つでコードを書いているのです。しかも醜いことこの上ない。主観的ですが、人間にとってはひどい言語です。
- morelandjs
同じAmazonの者です。これを構築してくれたことに感謝します。うまく実現して適切に保守されれば、計り知れない価値があります。
エージェント開発とは、システムを可能な限り閉じ、閉じられない入力や依存関係をモックアップまたはシミュレートすることに尽きます。その時点で、Claudeにシステムをクロールさせて仕事をさせます。
これは必然的にインフラストラクチャの問題にぶつかりますが、それらのインターフェースをモックアップするのに役立つツールは計り知れない価値があります。ありがとう!
- Waterluvian
正しく理解していれば、CDKプロジェクト全体をエミュレータに向けて`cdk deploy`をテストできるということですか?
「内部」の動作がどれほど現実的にエミュレートされているのか興味があります。しばらく前のことですが(スタックが動くようになってから触りたくないので...)、セットアップとティアダウンで時々奇妙で一貫性のないことが起こり(Terraform経由でも)、間違った(しかし一見有効な)順序で操作すると長いタイムアウトにつながるのが本当に苦痛だったのを覚えています。
- Thaxll
そうしたエミュレータは、公式であっても通常はひどいもので、ショートカットやコーナーケースだらけです。本物のサービスに接続するだけです。
- resters
これにより、競合他社がAWSサービスを確実にクローンすることがさらに容易になります。これは、クラウドがこの時点で完全にコモディティ化されており、優位性は市場支配力(サーバー/帯域幅を大規模に購入する、データセンターを大規模に建設するなど)に帰着することを明らかにしています。
- super_linear
この投稿に関連:https://www.aboutamazon.com/news/aws/how-autonomous-ai-agent...