はじめに
LambdaはAWSを使用するなら必ず知っておいた方がいいサービスです。
以下のような方におすすめの内容です
- サーバーレスについて学びたい
- 初めてAWS Lambdaを設定する
- 簡単なアプリケーションを試しに構築してみたい
この記事では、AWS Lambdaを初めて使う方向けに、その概要から設定方法、具体的なユースケースまでをわかりやすく解説します。
Lambdaの設定方法
AWS Lambdaの設定は、以下の手順で進めることができます。
- Lambda関数の作成
- コードの記述
- トリガーの設定
- デプロイとテスト
「Lambda」サービスを開きます。「関数を作成」ボタンをクリックし、以下を設定します。
関数名: 任意の名前を入力(例: KameTestLambda
)。
ランタイム: 利用するプログラミング言語を選択(例: PythonやNode.js)。
実行ロール: AWS IAMロールを作成または選択(Lambdaが必要な権限を持つように設定)。
IAMロールの設定方法は以下を参考にしてください。
AWS IAMロールとは?初心者向けの説明と設定手順をご紹介!
今回はIAMロールの設定で「AmazonS3FullAccess
」と「CloudWatchLogsFullAccess
」を設定します。
関数やランタイム・作成したロールを設定していきます。
関数コードをエディタに入力します。例えば、以下はPythonを使った簡単な「Hello World」コードです。
def lambda_handler(event, context):
print("Hello, World!")
return {
'statusCode': 200,
'body': 'Hello, World!'
}
タイムアウトは必要に応じて設定しましょう。今回は3秒
のままで大丈夫です。
Lambda検証用のS3を作成します。
S3バケットの作成方法は以下を参考にしてください。
【AWS】S3で静的サイトを公開する方法!初心者向けの設定手順
Lambda関数を起動するトリガーを設定します。
例えば、S3にファイルがアップロードされたときに実行する場合は、S3イベントをトリガーに設定します。バケットには作成したバケットを設定します。
再帰呼び出しはS3への作成イベントを実行しなければOKですが、「S3にアップロード→Lambda→S3にオブジェクト作成→Lambda→・・・」と連続で呼び出されるとコストが上がるので注意してください。
設定を保存して関数をデプロイします。その後、対象のS3バケットにアップロードしてみましょう。
CloudWatch Logsでログが出力されたらOKです。
デプロイの下にテストという項目があると思うので、テストをクリックするとLambda関数が一度実行されます。
一度コードを書き終わったら「Test」をクリックしましょう。
Lambdaとは
AWS Lambdaは、サーバーを管理することなくコードを実行できるサービスです。
トリガーイベントが発生すると自動的に関数が実行され、必要な計算リソースはAWSがすべて管理します。
以下のような特徴があります。
- サーバー不要:インフラ管理の手間を削減。
- 自動スケーリング:負荷に応じて自動で処理能力を拡張。
- コスト効率:リクエスト数や実行時間に応じた課金。
Lambdaのユースケース
Lambdaは、さまざまな場面で役立つ柔軟なサービスです。以下はその一例です
定期処理の自動化
CloudWatch Eventsと組み合わせて、毎日決まった時間にレポート生成やデータ集計を自動化。
リアルタイムなデータ処理
IoTセンサーからのデータや、ログファイルをリアルタイムで解析・処理。
APIバックエンド
API Gatewayと連携し、スケーラブルなバックエンドAPIを構築。
イベントドリブンな処理
S3へのファイルアップロードをトリガーに画像変換やデータ処理を実行。
まとめ
Lambdaは手軽にサーバーレスを始められる便利なサービスです。
幅広い用途があるので、応用できるように使いこなせるようにしましょう。
この記事を参考に、Lambdaを一度使用してみてください!