前提条件 - AWS Lambda

前提条件

AWS Lambda を使用するには、AWS アカウントが必要です。コマンドラインから Lambda 関数を設定して使用する場合は、AWS CLI を設定します。使用する環境と言語の必要に応じて、他の開発ツールやビルドツールを設定できます。

AWS アカウント

Lambda および他の AWS のサービスを使用するには、AWS アカウントが必要です。アカウントをお持ちでない場合は、aws.amazon.com にアクセスし、[Create an AWS Account] (アカウントを作成する) を選択します。この手順については、「How do I create and activate a new AWS account? (新規アカウントを作成してアクティベートする方法を教えてください)」を参照してください。

ベストプラクティスは、管理者権限を持つ AWS Identity and Access Management (IAM) ユーザーを作成した上で、ルート認証情報が不要なすべての作業でその IAM ユーザーを使用することです。コンソールアクセス用のパスワードと、コマンドラインツールを使用するためのアクセスキーを、それぞれ作成します。手順については、IAM ユーザーガイドの「最初の IAM 管理ユーザーおよびグループの作成」を参照してください。

AWS CLI

コマンドラインから Lambda 関数を設定して使用する場合は、AWS Command Line Interface (AWS CLI) をインストールします。このガイドのチュートリアルでは、すべての Lambda API オペレーションのコマンドを含む AWS CLI を使用します。一部の機能は Lambda コンソールでは使用できません。また、アクセスできるのは AWS CLI または AWS SDK からのみです。

AWS CLIを設定するには、AWS Command Line Interface ユーザーガイドの次のトピックを参照してください。。

AWS CLI が正しく設定されていることを確認するには、list-functions コマンドを実行して、現在の AWS リージョンにある Lambda 関数のリストを表示します。

aws lambda list-functions

AWS SAM

AWS Serverless Application Model (AWS SAM) は、より高いレベルでサーバーレスアプリケーションを定義できる、AWS CloudFormation テンプレート言語の拡張機能です。AWS SAMでは、関数ロールの作成などの一般的なタスクが抽象化され、テンプレートの作成が容易になります。AWS SAMは AWS CloudFormation によって直接サポートされており、AWS CLI および AWS SAM CLI による追加機能が含まれています。

AWS SAM テンプレートの詳細については、AWS Serverless Application Model デベロッパーガイドの「AWS SAM の仕様」を参照してください。

AWS SAM CLI

AWS SAM CLI は、AWS SAM アプリケーションの管理およびテストに使用できるコマンドラインツールです。AWS CloudFormation CLI には、AWS CLI で使用可能なアーティファクトのアップロードや AWS SAM スタックの起動に使用するコマンドに加え、テンプレートの検証や、Docker コンテナ内でのアプリケーションのローカルな実行に使用するコマンドが用意されています。.zip ファイルアーカイブまたはコンテナイメージとしてデプロイされた関数のビルドは、AWS SAM CLI を使用して実行できます。

AWS SAM CLI を設定するには、AWS Serverless Application Model デベロッパーガイドの「AWS SAM CLI のインストール」を参照してください。

コンテナイメージ用のツール

コンテナイメージとしてデプロイされた関数の作成とテストは、Docker CLI などのネイティブコンテナツールから行うことができます。

Docker CLI の設定については、Docker ドキュメントウェブサイトの「Docker の入手」を参照してください。AWS での Docker の使用方法の概要については、Amazon Elastic Container Reg ユーザーガイドの「AWS CLI を使用した Amazon ECR の開始方法」をを参照してください。

コード作成ツール

Lambda 関数のコードは、Lambda でサポートされている言語で記述することができます。サポートされている言語のリストについては、「Lambda ランタイム」を参照してください。コードのオーサリングには、Lambda コンソール、Eclipse 統合開発環境 (IDE)、Visual Studio IDE などのツールを使用できます。ただし、使用できるツールおよびオプションは次の要因によって決まります。

  • Lambda 関数コードの書き込みに使用する言語。

  • コードで使用するライブラリ。Lambda ランタイムは、いくつかのライブラリを提供しています。使用するライブラリを追加する場合、それらをアップロードする必要があります。

次の表に、Lambda でサポートされる言語、およびそれらで使用できるツールとオプションを一覧表示します。

言語 コードを作成するためのツールとオプション

Node.js

Java

C#

Python

Ruby

  • Lambda コンソール

  • 独自の作成環境

Go

  • 独自の作成環境

PowerShell