【第5回】AWS入門:初心者でもできるサーバーレス自動化の始め方[AI]【完】
このブログは「AWS入門シリーズ」です。
第1回:AWSとは? — クラウド基礎から始める
第2回:AWSの主要サービス(EC2・S3・RDSなど) — 用途と選び方
第3回:AWSでインフラ構築 — VPC・サブネット・セキュリティ設定
第4回:AWSでアプリを運用 — デプロイ・スケーリング・モニタリング
第5回:AWSコスト最適化と運用改善 — リソース削減・自動化
はじめに
これまでの記事では、AWSアカウント作成、IAM設定、S3によるファイル保存、EC2によるサーバー構築を学んできました。
今回は サーバーレスの代表サービス「AWS Lambda」 を解説します。
「サーバーレスって何?」「Lambdaを使うと何が便利なの?」と思う初心者の方に向けて、
- サーバーレスの基本概念
- Lambdaでできること
- 実際の設定手順(例:S3と連携した画像処理)
を具体的に紹介します。
SEOキーワードとして「AWS Lambda 入門」「Lambda 使い方 初心者」「サーバーレス 自動化」を意識して執筆します。
1. サーバーレスとは?
「サーバーレス」とは、サーバーを自分で管理しなくてもプログラムを動かせる仕組み のことです。
通常、アプリを動かすには:
- サーバーを用意(EC2など)
- OSをインストール
- ミドルウェアやライブラリを設定
という準備が必要でした。
しかしサーバーレスなら:
- コードを書いてアップロードするだけ
- サーバーの管理不要
- リクエストに応じて自動でスケール
👉 初心者でも簡単に「動く仕組み」を構築できるのが魅力です。
2. AWS Lambdaの特徴
Lambdaは、AWSが提供するサーバーレス実行環境です。
主な特徴は以下の通り:
- イベント駆動型:何かが起こったときに自動で実行される
- 従量課金制:使った分だけ支払い(リクエスト数と実行時間で計算)
- 複数言語に対応:Python、Node.js、Java、Goなど
- 他のAWSサービスと連携:S3、DynamoDB、API Gatewayなど
👉 例えば「S3に画像をアップロードしたら、自動でリサイズする」といった処理が可能です。
3. Lambdaでできること(具体例)
初心者でもイメージしやすい活用例を紹介します。
- S3と連携:画像やファイルをアップロード → 自動処理(リサイズ、変換、ウイルスチェックなど)
- 定期実行:毎日午前9時にバッチ処理(例:データ整理、レポート作成)
- API構築:API Gatewayと組み合わせてサーバーレスAPIを公開
- 通知システム:イベント発生時にSlackやLINEへ通知
- ログ処理:CloudWatch Logsを解析してエラーを検出
4. Lambda関数を作成する手順
ここからは、初心者でも迷わないように具体的な手順を解説します。
ステップ1:AWSマネジメントコンソールにログイン
- サービス一覧から 「Lambda」 を選択
- 「関数の作成」をクリック
ステップ2:関数の基本設定
- 関数名を入力(例:MyLambdaFunction)
- ランタイムを選択(Python 3.9 がおすすめ)
- 実行ロールを設定
- 「新しいロールを作成」を選択すればOK
ステップ3:コードを記述
画面に直接コードを書けます。
例:S3にアップロードされたファイル名をログに出力する関数
import json
def lambda_handler(event, context):
print("Event:", json.dumps(event))
return {
'statusCode': 200,
'body': json.dumps('Hello from Lambda!')
}
ステップ4:トリガーを設定
- 「トリガーの追加」から S3 を選択
- 「バケット」や「イベントタイプ(例:オブジェクト作成)」を指定
👉 これで「S3にファイルがアップロードされたら、自動でLambdaが実行」されます。
ステップ5:テスト
- Lambdaのテストイベントを作成
- 実行して結果を確認
- CloudWatch Logsで出力内容を確認
5. S3連携による画像自動処理の例
実用的な例として「S3に画像をアップロードしたら、自動で縮小画像を作成するフロー」を紹介します。
- S3バケットを用意(inputとoutput用)
- Lambda関数を作成(Pillowライブラリを使って画像リサイズ)
- トリガーをS3に設定(inputバケットにファイルがアップロードされたとき)
- Lambdaが動作して縮小画像をoutputバケットに保存
👉 これで「自動でサムネイル生成」が可能になります。
6. Lambda利用時の注意点
- タイムアウト制限:最大15分まで
- メモリ割り当て:処理内容に応じて調整(多いほど早いがコスト増)
- ライブラリ制限:外部ライブラリを使う場合は「デプロイパッケージ」に含める必要あり
- 課金モデル:リクエスト数 × 実行時間(ms単位)
7. Lambdaの料金
Lambdaは「使った分だけ課金」のため初心者に優しいです。
- 月100万リクエストまでは無料枠
- 400,000 GB秒分のコンピューティング時間も無料
👉 小規模な自動処理や学習用途なら、ほとんど無料で使えます。
まとめ
この記事では「AWS Lambdaの入門から実際の活用例」までを解説しました。
- サーバーレスの基本を理解
- Lambda関数を作成する手順を学習
- S3との連携で自動化の実例を確認
👉 Lambdaを使えば、初心者でもサーバーを管理せずに自動化やアプリ構築が可能です。
次のステップとしては:
- API Gatewayと組み合わせてサーバーレスAPIを公開
- DynamoDBを使ったデータ保存
- Step Functionsによるワークフロー自動化
などを学ぶとさらに理解が深まります。
これで 全5回シリーズが完結しました!
※本ブログはこの一文以外は、AIによる記載です。内容にウソが含まれている可能性がありますので、ご注意ください。