AWSがローカルAPIエミュレータを公開

原題: AWS emulator

なぜ重要か

AWS公式エミュレータの登場は、LocalStackなどのサードパーティツールへの依存を減らし、開発・CI環境のコストと複雑性を直接下げる可能性がある。

Amazon Web Services(AWS)は、AWSのAPIをローカル環境で再現するオープンソースツール「AWS Emulator」をGitHubで公開した。AWSアカウント不要でCLIやSDKを通じた開発・テストが可能で、GitHubでは公開直後から1,600以上のスターを獲得している。ライセンスはCC0-1.0で、Rustベースの実装となっている。

AWSが公式リポジトリ「aws/aws-emulator」として公開した「AWS Emulator」は、開発者がAWSのAPIエンドポイントをローカルマシン、開発サーバー、またはCI環境で模倣できるツールだ。実際のAWSリソースを呼び出さずに動作するため、AWSアカウントすら必要ない。

使い方はシンプルで、エミュレータを起動後、環境変数でAWS CLIやAWS SDKのエンドポイントをエミュレータに向けるだけ。コードはそのまま動かせる。「Embedded Mode」では、SDKにエミュレータのHTTPクライアントを直接渡す方式も選択できる。

リポジトリの構成をみると、Rust(Cargo.toml / Cargo.lock)でビルドされており、`services`ディレクトリ配下に各AWSサービスの実装が並ぶ設計になっている。コミット数は約29,000件に達しており、決して直前に急いで作ったプロジェクトではないことがわかる。

公式ドキュメント(docs.aws.amazon.com/emulator/latest/userguide/)も整備されており、AWS Emulator User Guideが用意されている。費用面では、エミュレータ自体に追加料金は発生しない。AWSリソースへの料金が発生するのは、実際にAWSへデプロイした場合のみだ。

注意点として、公式READMEは「本番ワークロードやセキュリティテストには使用しないこと」と明記している。あくまでビルドとテスト用のツールという位置づけだ。GitHubでは公開から間もなく1,600スターを超え、フォーク数も25件に達している。LocalStackなど既存のサードパーティ製エミュレータが市場を占めていた領域に、AWSが公式ツールで参入した形となる。

出典

github.com — 元記事を読む →