[雑記] Step Functions で EC2 インスタンスを立ち上げる
2025-08-17
インスタンスを立ち上げて開発することがたまにあるのですが、 その立ち上げを自動化したく、Step Functions に処理をまとめました。 雑記としてステートマシンの ASL を載せます。
構成
Step Functions で EC2 インスタンスを立ち上げます。 そして Systems Manager 経由でコマンドを実行し、インスタンスをセットアップします。

インスタンスのセットアップが完了したら、SNS で通知します。 10分待機している間に ssh して、必要な処理をするイメージです。
コード
</>
メモ
AMI の ID へ置き換えます 例: ami-xxx
インスタンスタイプを埋めます 例: t4g.small
Security Group の ID へ置き換えます 例: sg-xxx
Subnet の ID へ置き換えます 例: subnet-xxx
Instance Profile の名前へ置き換えます なお Systems Manager でコマンドを実行するには、 AmazonSSMManagedInstanceCore ポリシーが必要です
EC2 インスタンスの名前です
通知先の SNS トピックの ARN を埋めます
おわり
EC2 インスタンスをセットアップするだけであれば、 例えばユーザーデータでシェルスクリプトを実行したり、AMI を取得したほうが手軽です。 私の場合は、インスタンスの起動・終了まで制御したかったので、Step Functions に寄せちゃいました。