AWS Lambdaの基礎、統合、料金体系
Tony Duong
3月 27, 2026 · 1 分
#aws#lambda#serverless#eventbridge#s3#cloudwatch#certification
AWS Lambdaとは何か、そしてなぜ重要か
AWS Lambdaはサーバーレスなコンピュートサービスで、関数としてコードをアップロードすると、AWSが必要なときに実行してくれます。EC2とは異なり、サーバー、キャパシティ、スケーリンググループを管理する必要はありません。
これが便利な理由:
- サーバーのプロビジョニングやパッチ適用が不要
- コードが実行されたときだけ課金される
- 同時実行に応じて自動で水平方向にスケールする
- イベント駆動アーキテクチャをはるかに実装しやすくなる
Lambdaは短時間で完了するリアクティブなワークロードに最適です。各呼び出しは最大15分まで実行できます。
LambdaとEC2の違い:中核となる差分
EC2の場合:
- CPUとメモリを事前に固定で選ぶ
- アイドル時でもインスタンスが継続稼働することがある
- スケーリングにはASGと追加の運用作業が必要
Lambdaの場合:
- 関数コードだけをデプロイする
- 実行は呼び出されたときだけ発生する
- AWSがスケーリングを自動で処理する
- 課金が実利用により近く一致する
このシフトこそが、現代的なクラウドアーキテクチャでLambdaが非常に人気な主な理由です。
覚えておきたい料金モデル
Lambdaの料金は2つの軸で決まります:
- リクエスト(呼び出し回数): 毎月最初の100万リクエストは無料、その後は100万回単位で低価格課金
- コンピュート実行時間: GB秒ベースでミリ秒単位課金
試験向けの重要ポイント:
- メモリ設定はCPUとネットワーク性能に影響する
- メモリを増やすことで実行時間が短縮され、結果として総コストが下がる場合がある
無料利用枠は十分に大きく、多くのイベント駆動タスクでLambdaをコスト効率の高い第一選択にできます。
ランタイムとパッケージングの選択肢
よく使われるランタイム:
- Node.js
- Python
- Java
- C#/.NET
- Ruby
Lambda Runtime APIを使えば、カスタムランタイムやコンテナイメージも利用できます。試験での判断としては、コンテナ中心のワークロードはECS/Fargateが適していることが多く、Lambdaは関数スタイルのイベント処理に引き続き最適です。
価値の高い統合先
Lambdaは次のようなAWSサービスと深く統合できます:
- API Gateway(REST APIのバックエンド)
- EventBridge/CloudWatch Events(スケジュール実行とイベントルーティング)
- S3(オブジェクト作成トリガー)
- DynamoDB(ストリーム/変更トリガー)
- SQSとSNS(メッセージ処理と通知処理)
- CloudWatch Logs(運用可視化)
- Cognito(認証ライフサイクルのフック)
このエコシステムとの適合性は、Lambdaの大きな強みです。
ハンズオン1:EventBridgeのスケジュール呼び出し
シナリオ:
lambda-demo-eventbridge関数を作成rate(1 minute)のEventBridgeルールを作成- ルールのターゲットにLambdaを設定
確認ポイント:
- Lambda設定画面にEventBridgeトリガーが表示される
- Lambdaのリソースベースポリシーに
events.amazonaws.comへの許可が含まれる - 条件で、特定のEventBridgeルールARNからの呼び出しに制限されている
- CloudWatchログで定期呼び出しが確認できる
- イベントペイロードに
source、detail-type、time、resourcesなどのフィールドが含まれる
運用のコツ:不要な呼び出しを避けるため、検証後はスケジュールルールを無効化しましょう。
ハンズオン2:S3のオブジェクト作成トリガー
シナリオ:
- 同一リージョンにLambda関数とS3バケットを作成
- オブジェクト作成イベント向けにS3 Event Notificationを追加
- 送信先にLambdaを設定
確認ポイント:
- LambdaにS3トリガーが表示される
- LambdaリソースポリシーでS3サービスプリンシパルへの呼び出し許可が付与される
- オブジェクトをアップロードすると新しいCloudWatchログストリームが生成される
- イベントペイロードにバケット名、オブジェクトキー、サイズ、リージョン、メタデータが含まれる
このパターンは、画像サムネイル生成、メタデータ抽出、ファイル検証パイプラインなど、多くのサーバーレスワークフローの基盤になります。
典型的なサーバーレスパターン
1) リアクティブなファイルパイプライン
- ファイルをS3にアップロード
- S3イベントがLambdaを呼び出す
- Lambdaがデータを変換し、出力を保存(S3/DynamoDB)
2) サーバーレスcron
- EventBridgeのスケジュールがX分/時間ごとにLambdaを起動
- LambdaがEC2インスタンスを維持せずに定期ジョブを実行
どちらのパターンも、アイドルコストを削減し、運用を簡素化できます。
試験対策メモ
- Lambdaの最大実行時間は15分
- 課金は呼び出し回数と実行時間ベース
- メモリ設定はCPU/ネットワーク割り当てに影響
- EventBridgeとS3はリソースベース権限を通じてLambdaを呼び出す
- コンテナ全般のワークロードにはECS/Fargateを優先
- イベント駆動でバースト性のある処理でLambdaは特に強い
重要なポイント
- Lambdaはサーバーベースの計算からイベント駆動関数への大きな転換
- 料金モデルはシンプルで、多くの場合は効率的(特に無料利用枠)
- EventBridge、S3、その他AWSサービスとの統合が中核
- リソースベースポリシーを理解すると「誰が関数を呼べるか」が分かる
- CloudWatchでトリガーペイロードを理解することはデバッグに不可欠
Claudeによる翻訳