VSCodeでCloud9のようにEC2を自動起動・自動停止したい
こんにちはWebエンジニア1年目の駆け出しです。
今回は、タイトルを実現するために以下の構成を考えてみました。
この構成で実現可能か、もっと良い構成がないかなど知見をいただけると嬉しいです。
【概要】
Cloud9 から VSCode / Cursor に移行した場合でも、
“エディタを開いたらEC2が起動し、操作しなかったら自動停止”
という仕組みを再現したい。
【目標】
- VSCode / Cursor を起動すると対象のEC2を自動起動
- 一定時間操作がなければ自動停止
- SSH経由の接続が使える
【構成概要】
▶ 自動起動
- AWS Lambda + API Gateway
- VSCode / Cursor の開始スクリプトで Lambda を呼び出し
- EC2 instanceId を指定して
start_instances
- IP取得ループ(Elastic IPは使わない)
- IP取得できたら
code --remote
でRemote SSH
▶ 自動停止
- CloudWatch で CPU 利用率を監視
- CPU < 5% が 15 分続いたら Lambda で
stop_instances
- または cron (例: 毎日20時) で EventBridge と連携
VSCodeの拡張機能を自作して以下の機能を実装することも考えています
- EC2インスタンスの一覧を取得
- 取得したEC2を起動&Remote SSHをするスクリプトを走らせる
以上です。どなたでもご意見をいただけたら嬉しいです!
0 likes