2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

EC2の終了忘れを防ぐ起動スクリプト

Last updated at Posted at 2022-10-12

これは

「あ、EC2消し忘れた。。」
「むしろ、ちゃんと止めたことない。。」
「お金が。。」
「高額インスタンスで。。。」

EC2を一定時間でシャットダウンする方法です。

EC2ユーザデータ という機能を使います。

参考

作業の流れ

  1. EC2インスタンスを停止する
  2. ユーザーデータを設定する
  3. EC2を起動する
  4. 仕事する
  5. 仕事終わる
  6. EC2の停止を忘れる
  7. 自動終了する

ユーザーデータを設定する

EC2 インスタンスの初回起動後にユーザーデータを実行する

EC2 コンソールからインスタンスに対して以下の操作をしてください

  • [Actions] (アクション)、[Instance Settings] (インスタンスの設定)、[Edit User Data] (ユーザーデータの編集) の順に選択します。

  • ユーザースクリプトを [Edit user data] (ユーザーデータの編集) ボックスにコピーして、[Save] (保存) を選択します。

image.png

ユーザデータに以下を書き込む

Content-Type: multipart/mixed; boundary="//"
MIME-Version: 1.0

--//
Content-Type: text/cloud-config; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="cloud-config.txt"

#cloud-config
cloud_final_modules:
- [scripts-user, always]

--//
Content-Type: text/x-shellscript; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="userdata.txt"

#!/bin/bash
sudo shutdown -h +300 # <- ここに自分の命令を入れておくだけ
--//--

実行結果

起動後3分でシャットダウンを指定した例

image.png

起動後、シャットダウン時刻が近づくと、そろそろ落ちるとメッセージが表示されて便利。

キャンセルする場合

もっと仕事頑張りたい時は、再設定ください

# キャンセル
$ shutdown -c

# 再設定
$ sudo shutdown -h +120

終わり

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?