2026年5月17日

2026年5月17日

AWS LambdaでサーバーレスFunctionを作成する方法

ステップ1: AWS Lambda関数の作成

まず、AWS Management Consoleにログインし、Lambdaサービスを開きます。新しい関数を作成するため、「Create function」ボタンをクリックします。

# ログインとLambdaへのアクセス
aws configure
aws lambda create-function \
    --function-name my-first-lambda \
    --runtime nodejs14.x \
    --handler index.handler \
    --role arn:aws:iam::ACCOUNT_ID:role/lambda-examples-role \
    --zip-file fileb://my-lambda-function.zip

# 関数の設定を確認
aws lambda get-function --function-name my-first-lambda

ステップ2: 関数本体の作成とデプロイ

関数の実装ファイルを作成し、必要なライブラリとビジネスロジックを含めます。ここではNode.jsを使用します。

# 必要な依存性をインストール
npm install aws-sdk

# Lambda関数本体(index.js)
const AWS = require('aws-sdk');
exports.handler = function(event, context) {
    console.log("Request received: ", event);
    return {
        statusCode: 200,
        body: JSON.stringify({message: "Hello from Lambda"})
    };
};

ステップ3: 関数のテスト

Lambda関数をテストするために、イベントを送信します。

# テスト用イベントを作成
aws lambda invoke --function-name my-first-lambda response.json \
--payload '{"key":"value"}'

# 出力結果を確認
cat response.json

ステップ4: API Gatewayと連携

API Gatewayを使用してLambda関数にアクセスできるAPIエンドポイントを作成します。

# API Gatewayの新規リソース作成
aws apigateway create-rest-api --name my-api \
--description "An API for testing Lambda"

# リソースパスを追加
aws apigateway put-method --rest-api-id REST_API_ID \
--resource-id RESOURCE_ID --http-method GET

# Lambda関数とAPI Gatewayの連携
aws apigateway put-integration \
--rest-api-id REST_API_ID \
--resource-id RESOURCE_ID --http-method GET \
--integration-type AWS_PROXY \
--passthrough-parameters true \
--uri arn:aws:apigateway:REGION:lambda:path/2015-03-31/functions/function/invocation

# トリガーを設定
aws apigateway put-integration-response --rest-api-id REST_API_ID \
--resource-id RESOURCE_ID --http-method GET --status-code 200

注意事項

  • セキュリティ上の注意: IAMロールの許可は最小限に保ち、関数へのアクセスを制限します。
  • パフォーマンス/運用上の注意: Lambda関数のトリガー(API GatewayやS3イベントなど)は適切に設定し、リソースのライフサイクルを管理します。

まとめ

1. 簡単なセットアップ: AWS Management ConsoleからLambda関数を作成し、基本的な設定を行います。

2. コード作成とデプロイ: Node.jsを使用して関数本体を作成し、必要な依存性をインストールします。

3. テスト: Lambda関数の動作を確認するためにAPI Gatewayを使用してイベントを送信します。

4. 連携: API GatewayとLambda関数を連携させ、外部からのアクセス可能なエンドポイントを作成します。

関連記事:

  • [AWS Lambdaの基本操作]
  • [API Gatewayの設定方法]
  • [IAMロールの設定と管理]

お気軽にご相談ください

お見積りへ お問い合わせへ