AWS CLIを使用してLambda関数を操作する

AWS CLIを使用してLambda関数を操作する

2024/05/05

2024/05/05

AWS Command Line Interface (AWS CLI)を使用してLambda関数を操作する方法です。

前提条件

AWS CLIがインストールされていること
AWS CLIからAWS Lambda関数を接続するための認証情報が設定されていること

Lambda関数の情報を取得する

指定した関数の情報を取得

aws lambda get-function --function-name [関数名]


指定した関数の情報を取得しテーブルで表示
(関数名 / ランタイム / タイムアウト / メモリサイズ)

aws lambda get-function --function-name [関数名] --query 'Configuration.{FunctionName:FunctionName, Runtime:Runtime, Timeout:Timeout, MemorySize:MemorySize}' --output table


Lambda関数一覧の情報を取得する

Lambda関数の一覧を取得

aws lambda list-functions


Lambda関数の一覧を取得しテーブルで表示
(関数名 / ランタイム / タイムアウト / メモリサイズ)

aws lambda list-functions --query "Functions[].{Function_Name: FunctionName, Runtime: Runtime, Memory_Size: MemorySize, Timeout: Timeout}" --output table


Lambda関数を作成する

Lambda関数を作成
【事前準備】
・Lambdaに設定するIAMロールの作成
・デプロイする関数のファイルをzipファイルに圧縮し、カレントディレクトリに配置

# Lambda関数の作成
aws lambda create-function --function-name [関数名] \
--zip-file fileb://[ファイル名].zip --handler index.handler --runtime nodejs20.x \
--role arn:aws:iam::[アカウントID]:role/[Lambdaに設定するIAMロール]


Lambda関数を更新する

Lambda関数の更新

aws lambda update-function-configuration \
--function-name my-function \
--memory-size [メモリサイズ] \
--timeout [タイムアウト]

# 環境変数
--environment "Variables={[変数名]=[値],[変数名]=[値]}" 
例) --environment "Variables={KEY1=value1,KEY2=value2}" \

# VPCの設定
--vpc-config SubnetIds=[サブネットID],[サブネットID],SecurityGroupIds=[セキュリティグループID] \
例) --vpc-config SubnetIds=subnet-xxxxxx,subnet-yyyyyy,SecurityGroupIds=sg-xxxxxx \

# Lambdaレイヤーの設定
 --layers "arn:aws:lambda:region:[アカウントID]:layer:[Lambdaレイヤー名]:[バージョン]"
例) --layers "arn:aws:lambda:region:account-id:layer:layer-name:version"


Lambda関数を削除する

Lambda関数の削除

aws lambda delete-function --function-name [関数名]


参考資料

AWS CLI Lambda