【AWS Lambda】stop_instancesの使い方を簡単解説!

今回は、boto3関数のstop_instancesについて解説します。
「どうやって使うの?」の解説からパラメータを入力したら自動でコード作成までお手伝いします。

利用目的

指定したEC2インスタンスを停止します。
対象のEC2インスタンスはリスト型で複数指定可能です。

指定したEC2インスタンスが休止動作を有効化されている場合は、この関数を使用して停止ではなく休止させることも可能です。
休止状態の詳細については、以下を参照ください。
 休止の概要

また、強制停止のオプションにて応答不能となったEC2を強制停止することも可能です。
ただし、強制停止した場合はファイルシステムが破損することがありますのでご注意ください。
強制停止した後は、ファイルシステムのチェックと修復作業を行うことをお勧めします。

権限

Lambdaに付与するIAMロールに「ec2:StopInstances」の権限を付与してください。

コード生成

パラメータを入力することで、コピーすればすぐに使えるLambdaコードを生成できます。
「*」のついている物は必須パラメータで、ついていないものはオプションです。
import boto3

ec2_client = boto3.client('ec2')
def lambda_handler(event, context):
    response = ec2_client.stop_instances(
        InstanceIds=[
        ],
    )

    return 0

▼基本設定

インスタンスID*

▼オプション設定

ハイバネーション

対象のEC2インスタンスにて休止動作が有効化されている場合のみ使用可能です。

強制停止

対象のEC2インスタンスを強制的に停止します。
ファイルシステムの破損などを招く可能性があるので非推奨です。

仕様

こちらの記事もどうぞ