AWS とそのパートナーエコシステムでは、AWS Lambda や AWS の他のサービスでのサーバーレスアプリケーション開発を支援するツールとサービスが用意されています。このようなフレームワーク、デプロイツール、SDK、IDE プラグイン、モニタリングソリューションにより、サーバーレスアプリケーションを短期間で構築、テスト、デプロイ、モニタリングできます。サーバーレスアプリケーションの開発サイクルで使用できるツールを以下に紹介します。

フレームワーク

サーバーレスアプリケーションの開発とデプロイを簡略化するために、AWS、オープンソース、サードパーティーのさまざまなウェブフレームワークを選択できます。多くの言語でサポートされている一般的なフレームワークを以下に紹介します。


100x100_SAM

AWS サーバーレスアプリケーションモデル (SAM)

AWS サーバーレスアプリケーションモデル (AWS SAM) はサーバーレスアプリケーションを定義するモデルです。AWS SAM は AWS CloudFormation でネイティブにサポートされており、サーバーレスアプリケーションで必要な Amazon API Gateway API、AWS Lambda 関数、Amazon DynamoDB テーブルを定義する簡略化された方法です。この仕様は Apache 2.0 で利用できます。詳細については、ドキュメントを参照してください。

AWS SAM Local は、AWS SAM テンプレートで定義した Lambda 関数をローカルでテストできる補足的な CLI ツールです。

詳細 »


150x150_Feature_Open-Source_Blue

オープンソースおよびサードパーティーのフレームワーク

多くの言語でサポートされている一般的なフレームワークを以下に紹介します。

継続的インテグレーションとデプロイ

AWS 開発者用ツールを使用すると、サーバーレスアプリケーション用の継続的インテグレーションおよび継続的デリバリー (CI/CD) のワークフローを構築できます。AWS CodePipeline を AWS サーバーレスアプリケーションモデルと共に使用すると、サーバーレスアプリケーションの構築、テスト、およびデプロイを自動化できます。AWS CodeBuild は CodePipeline と統合され、自動化されたビルドを提供します。AWS CodeDeploy を使用すると、Lambda 関数の新しいバージョンの公開とテストを段階的に行うことができます。

オンラインのテクニカルトークを視聴して、サーバーレスアプリケーションのための開発ワークフローの構築について確認してください。CI/CD の詳細については、AWS Lambda のドキュメントを参照してください。


CodeStar Icon

AWS CodeStar

AWS CodeStar を使用すると、アプリケーションをすばやく開発および構築して AWS にデプロイできます。AWS CodeStar は統合されたユーザーインターフェイスを備えているため、ソフトウェア開発アクティビティを 1 つの場所で簡単に管理できます。AWS CodeStar では継続的デリバリーのツールチェーン全体を数分で設定できるため、コードのリリースをすばやく開始できます。 

150x150_Feature_Codepipeline_Blue

AWS CODEPIPELINE

AWS CodePipeline は継続的インテグレーションと継続的デリバリーのためのサービスで、アプリケーションとインフラストラクチャを短時間かつ信頼性の高い方法でアップデートできます。CodePipeline では、コードの変更があるたびに、お客様の定義するリリースプロセスモデルに基づいて、コードのビルド、テスト、デプロイが実施されます。

150x150_Feature_Codebuild_Blue

AWS CODEBUILD

AWS CodeBuild は、フルマネージド型のビルドサービスです。ソースコードをコンパイルし、テストを実行し、デプロイできるようにソフトウェアパッケージを作成できます。CodeBuild は連続的にスケールされ、複数のビルドが同時に処理されるため、ビルドが待機状態でキュー内に残されることがありません。

CodeDeploy

AWS CodeDeploy

AWS CodeDeploy は、Amazon EC2、AWS Lambda、オンプレミスで実行されるインスタンスなど、さまざまなコンピューティングサービスへのアプリケーションのデプロイを自動化するサービスです。CodeDeploy はアプリケーションのデプロイを完全に自動化するため、手動での操作が不要になります。


150x150_Feature_Partner-Ecosystem_Blue

CI/CD 用パートナーエコシステムツール

CloudBees や CodeShip といったパートナーツールを CI/CD 用に使用できます。

詳細 »

モニタリング、ログ記録、診断

AWS のサービスやサードパーティーのツールを使用して、サーバーレスアプリケーションや AWS Lambda 関数のパフォーマンスをモニタリングし、トラブルシューティングを行うことができます。Amazon CloudWatch を使うと、リアルタイムのレポートメトリクスやサーバーレスアプリケーションのログを確認できます。AWS X-Ray を使用して、サーバーレスアプリケーションや AWS Lambda をデバッグおよびトレースできます。


150x150_Feature_Xray_Blue

AWS X-Ray

開発者は AWS X-Ray を使用して、本番環境や分散アプリケーション (マイクロサービスアーキテクチャを使用して構築されたアプリケーションなど) を分析およびデバッグできます。X-Ray を使用して、AWS Lambda や他のサービスを使用して構築されたサーバーレスアプリケーションへのリクエストをトレースできます。これにより、サーバーレスアプリケーションのパフォーマンスを理解して根本原因を特定できるので、問題を解決できます。詳細については、Lambda ドキュメントを参照してください。

150x150_Feature_Cloudwatch_Blue

Amazon CloudWatch

Amazon CloudWatch は、AWS クラウドリソースと AWS で実行されるアプリケーションのためのモニタリングサービスです。CloudWatch を使うと、AWS Lambda や他の多くのサービスのメトリクスをモニタリングできます。Lambda 関数のコードによって生成されたログはすべて CloudWatch Logs で自動的に保存され、問題のトラブルシューティングに利用されます。詳細については、Lambda ドキュメントを参照してください。


150x150_Feature_Partner-Ecosystem_Blue

モニタリング用のパートナーエコシステムツール

IOpipe、Datadog、Loggly、Splunk、Sumo Logic などのパートナーツールを AWS Lambda と共に使用できます。

詳細 »

オーサリングと開発

AWS Cloud9 で、または IDE プラグインを使用する既存の統合開発環境 (IDE) 内で、AWS Lambda 関数のコードを記述できます。ローカルテストには、あらゆる IDE と Cloud9 で機能する SAM Local CLI ツールを使用できます。また、AWS の言語 SDK を使用することで、AWS API を介して、AWS Lambda 関数などから成るサーバーレスアプリケーションを構築することもできます。


100x100_SAM

AWS SAM Local

AWS SAM Local は、AWS サーバーレスアプリケーションモデル (SAM) テンプレートで定義した AWS Lambda 関数をローカルでテスト、デバッグできる CLI ツールです。SAM Local は、ローカルで関数をテストし、SAM テンプレートからローカル API Gateway を開始し、SAM テンプレートを検証し、さまざまなイベントソースにおけるペイロードのサンプルを作成するために使用できます。

GitHub »
ブログ投稿 »

AWS_Cloud9_v2

AWS Cloud9

AWS Cloud9 は、サーバーレスアプリケーションの記述、実行、デバッグを簡単にするクラウドベースの統合開発環境 (IDE) です。サーバーレス開発に必要な SDK、ライブラリ、プラグインのすべてを使用して開発環境が事前設定されます。 

Cloud9 ではサーバーレスアプリケーションモデル (SAM) もサポートされているため、Cloud9 で SAM テンプレートを使用すると、サーバーレスアプリケーション用のリソースを簡単に定義できます。さらに、Cloud9 では、AWS Lambda 関数をローカルで編集してデバッグできるため、デバッグのためにコードを Lambda コンソールにアップロードする必要はありません。


Eclipse IDE プラグインと AWS Lambda

Eclipse

Eclipse で、Java コードを書き、デプロイパッケージを作成およびアップロードし、AWS Lambda 関数を作成できます。

Visual Studio プラグインと AWS Lambda

aws-toolkit-visual-studio_icon

あらかじめ作成されたテンプレートを使用して、Visual Studio から .NET Core ベースの C# Lambda 関数を短期間で開発およびデプロイできます。

SDK

AWS SDK を使用すると、プログラミング言語に合わせてカスタマイズされた API を使って、AWS Lambda や AWS の他のサービスの使用を簡略化できます。


サーバーレスアプリケーションを検索して公開する

AWS Serverless Application Repository のページにアクセスする
始める準備はできましたか?
サインアップ
ご不明な点がおありですか?
お問い合わせ