ローカルマシンで主要なAWSサービスやLambdaを基本無料で実行できる「LocalStack」公開:開発サイクルの高速化を支援
LocalStackチームはAWS向けのクラウドアプリケーションをローカルで、迅速かつ便利に開発、テストできるオープンソースプラットフォームの正式版「LocalStack 1.0」の一般提供を開始した。
LocalStackチームは2022年7月13日(米国時間)、「Amazon Web Services」(AWS)向けアプリケーションをローカルで迅速で便利に開発、テストできるオープンソースプラットフォームの正式版「LocalStack 1.0」の一般提供を開始した。
LocalStackはPCやCI(継続的インテグレーション)環境上で1つのコンテナとして動作するクラウドサービスエミュレーターであり、コアエミュレーションプラットフォームが、エミュレートされたAWSのAPIを提供する。これにより、リモートにあるAWSに接続することなく、ローカルマシンで「Amazon S3」(Amazon Simple Storage Service)などのAWSサービスや「AWS Lambda」を完全に実行できる。
LocalStackの主なメリットは、CI/CD(継続的デリバリー)パイプラインを通じて開発サイクルを高速化できることだ。基本的なAPIだけを利用するのであれば、無料で利用できる。
LocalStackは開発者体験(DevX)に重点を置いており、チームメンバー間や環境間でのリソースの再利用や共有を可能にする高度な永続化メカニズムを備えている。例えば、コアエミュレーションレイヤーの上に多くのチームコラボレーション機能を提供している。
4つのエディションがある
LocalStackには「Community」の他、「Pro」「Team」(プレビュー段階)、「Enterprise」という4つのエディションが用意されている。それぞれの概要は次の通り。
・Community
無料であり、Amazon S3などの基本的なクラウドAPIと「LocalStack Cockpit」を利用できる。LocalStack Cockpitではユーザーインタフェース(UI)を使用して、デスクトップ体験とローカルLocalStackインスタンスでの作業が可能だ。
・Pro
本格的な業務利用に対応する。料金は1ユーザー当たり月額28ドル。Communityエディションの全機能に加え、高度なクラウドAPI(基本的APIと高度なAPIで合計80以上のサービスをサポート)の他、CIスターター機能、IAM(Identity and Access Management)セキュリティ強化機能、個別デバッグのための状態永続性、ベストエフォートサポート(Slack)を利用できる。
CI環境におけるLocalStackのワークフローの一例 本番環境でAWSをセットアップするのと同じIaC(Infrastructure as Code)構成で、CI環境にLocalStackをセットアップできる(提供:LocalStack)
・Team
プレビュー段階にある。チームコラボレーションに対応し、料金は近く発表予定だ。Proエディションの全機能に加え、CIパフォーマンス階層、チーム使用状況分析、共同デバッグのための共有クラウドプール、クラウドポッド(アプリケーション状態の永続的なスナップショット)用ストレージ、優先的なベストエフォートサポート(Slack)を利用できる。
・Enterprise
大規模利用に対応し、料金は個別問い合わせになる。Teamエディションの全機能に加え、無制限のCI運用、CI分析、高度なクラウドポッド用ストレージ、SSO(シングルサインオン)サポート、SLA(サービスレベル契約)によるチケッティングシステムでの専用技術サポート、共有インスタンス、オフラインイメージ、カスタムまたはオンプレミスインストールを利用できる。
LocalStack 1.0の新機能と変更点は?
LocalStack 1.0では、次のような新機能が追加され、機能が変更されている。
- Communityエディションの新機能と変更点
・設定が簡素化された新しいファイルシステム階層
・AWSのAPI仕様と直接連携するサーバ側フレームワーク「AWS Server Framework」(ASF)のフル導入
・AWSとのパリティ(同等性)をテスト、分析、レポートするためのフレームワーク
・新しいロギング出力とエラーレポート
・永続性サポートの改善
- ProとTeamエディションの新機能
・洗練されたクラウドポッドエクスペリエンス
・複数アカウントのセットアップの改良(実験的機能)
・拡張機能の導入(実験的機能)
・全てのサービスに対するIAM強制
・詳細なスタック分析
LocalStackを使い始める方法は5つある
LocalStackを使い始めるには、まず、LocalStackインスタンスの起動と管理の方法を選択する必要がある。LocalStackは現在、次のオプションを提供している。
・LocalStack CLI
LocalStackを起動、管理する最も簡単な方法だ。自分のマシンや自分のマシン上のDockerコンテナ、リモートDockerホストのいずれかでCLI(コマンドラインインタフェース)を使う。
・LocalStack Cockpit
UIを使ってデスクトップで、ローカルLocalStackインスタンスを操作する。
・Docker
「Docker CLI」を使って、「LocalStack Dockerコンテナ」を手動で開始する。
・Docker-Compose
「docker-compose」を使って、LocalStack Dockerコンテナを構成、開始する。
・Helm
Kubernetesのマニフェスト管理ツール「Helm」を使って、LocalStackをKubernetesクラスタにデプロイする。
AWS以外には対応しないのか
LocalStackチームはLocalStackがローカルクラウド開発の標準プラットフォームとなることを目指し、AWS以外のクラウドサービスへの対応に取り組むとともに、LocalStackにおけるAWSの開発者エクスペリエンスの一層の向上を図るとしている。
今後数カ月間にAWSとのパリティ向上を引き続き進める他、クラウドポッドの機能追加、企業顧客向けの高度な分析機能の導入、LocalStackの拡張機能を作成するための開発者用ツールの改善、IAMポリシーの開発/テストツールの改善を進める計画だ。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- AWS APIでAWSの操作を自動化する
AWSにもAPIが用意されています。APIを使うことでAWSの運用や構築の自動化を目指しましょう。 - 「Amazon Comprehend」を使い、週報を感情分析してモチベーションを計るには
「Amazon Web Services」(AWS)活用における便利な小技を簡潔に紹介する連載「AWSチートシート」。今回は、「Amazon Comprehend」を利用して週報を感情分析する方法について。 - ソフトウェアエンジニアリングリーダー必読:API戦略およびプラクティス展開の5つのポイント
ソフトウェアエンジニアリングリーダーは5つのポイントを考慮し、API戦略およびプラクティスの技術目標とビジネス目標を両立させることが重要だ。