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 のドキュメントをご覧ください。

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 ページにアクセスする
始める準備はできましたか?
サインアップ
ご不明な点がおありですか?
お問い合わせ