ヤマムギ

growing hard days.

*

AWS Systems Manager AutomationでEC2の自動停止

   

Systems Manager Automationがない時代に、Lambdaを使ってEC2, RDSの自動停止、開始を実行してたので、触ったことがありませんでした。
でも、ニーズとしては多いので試しておこうと思って試してみたら、超簡単でした。
AWSも最近ノーコードなサービスが増えてきました。

構成

時間トリガーで実行するので、CloudWatch Eventsから実行します。

IAMロールの作成

CloudWatch Evetnsの設定時に、IAMロールの新規作成も出来るのですが、その方法でやると
“The Automation definition used by an SSM Automation target must contain an AssumeRole which evaluates to an IAM arn.”エラーになったので、あらかじめ作成することにしました。

AWS管理ポリシーの「AmazonSSMAutomationRole」をアタッチしました。
“ec2:StartInstances”,”ec2:StopInstances”がActionに含まれてるので、EC2の停止、開始は大丈夫そうです。

信頼ポリシーは、”events.amazonaws.com”を有効にします。
ロールを作るときに、ロールを使用するサービスでCloudWatch Eventsを選択して、ポリシーをアタッチしなおすか、ロールを使用するサービスでEC2を選択して、信頼ポリシーを編集するかのどちらかかで作れます。

CloudWatch Eventsの設定

止め忘れを防ぎたいので、毎日実行のスケジュールにします。
例えば毎日18:30に実行するときは、Cron式で 30 9 * * ? * と書きます。

ターゲットを SSM Automation、ドキュメントをAWS-StopEC2Instance、インスタンスIDを指定して、既存のロールであらかじめ作成したロールを設定しました。

あとは名前と説明を入力して作成です。

結果確認

実際に時間になったらEC2が停止しました。

CloudWatchメトリクスもできてます。

SystemsManager Automationダッシュボードにも実行結果が記録されています。

コードを書かなくても運用の自動化ができます。
さらにやるべき他の作業に集中することができますね。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

AWS RDS でMySQLインスタンスを構築する

Amazon Web ServiceにはAmazon Relational Da …

AWS Secrets Manager交代ユーザーローテーション

AWS Secrets Managerの交代ユーザーローテーションを確認してみま …

AWS Summit 2016 Tokyoに参加してきました (Day2)

馬込は非常に良い天気です。 泊まっている部屋が2Fでしたので窓を明けると歩いてい …

slackのbotをAWS Lambda(Python)+API Gatewayで構築

slackで投稿した内容に応じて返信したり調べ物したりしてくれるbotですが、こ …

AWS Organizationsでタグポリシーを設定しようとしました

Organizationsで[タグポリシーを有効にする]ボタンを押下しました。 …

名前解決してセッションマネージャが使えるようにVyOSのhost_name.pyを編集しました

発生したエラー セッションマネージャからこんなエラーが出力されました。 [cra …

AWS EC2 インスタンスステータスのチェックで失敗して起動しなくなり復旧

EC2のインスタンスに接続出来なくなったので、AMIから作成してElastic …

API Gateway Lambdaプロキシ統合で渡されるリクエストを確認しました

API Gatewayの統合リクエストでLambdaを指定するときにプロキシ統合 …

Organizations組織でAWS SSOを有効にする

先日AWS Control Towerで環境を作ったら、自動でAWS SSOがで …

Systems Manager パブリックパラメータCLIでAWSのサービス数を出力してみました(2020/5/26)

先日のAWSのサービス数を数えてみました(2020/5/23)を見られて、お師匠 …