📆

AWS Systems Manager カレンダー機能を理解する

に公開

カレンダーの役割

  • 運用チームが「いつ作業して良いか/悪いか」を定義できる仕組み
  • 例:
    • 平日の日中(業務時間)は作業禁止
    • 深夜や週末だけメンテナンス可能
    • 年末年始は変更を禁止

👉「安全に変更を実施できる時間」を明確認するためのガイドラインとなる。

主な機能

変更ウィンドウの作成

  • カレンダーに「許可期間」「禁止期間」を設定可能。
  • 繰り返しスケジュール(毎週・毎月・年単位)も設定可能。

カレンダーを作成する際、以下の2種類の属性のいずれかを指定する。

  • デフォルトが「OPEN」のカレンダー:「営業日・営業時間帯」
  • デフォルトが「CLOSED」のカレンダー:「休業日・営業時間外」

自動化との連携

  • SSM Automation、State Manager、Patch Managerなどのジョブが実行される前にカレンダーを参照
  • 許可時間でなければ「実行を拒否」または「待機」

複数カレンダーの組み合わせ

  • AND/OR条件で複数のカレンダーを利用可能
  • 例:
    • 「本番カレンダー」と「セキュリティメンテナンスカレンダー」の両方で許可れている時だけ実行

コマンド例(OR条件)

aws ssm start-automation-execution \
  --document-name "AWS-StopEC2Instance" \
  --targets "Key=InstanceIds,Values=i-0123456789abcdef0" \
  --calendar-names "arn:aws:ssm:ap-northeast-1:123456789012:document/MyCalendar1" \
                   "arn:aws:ssm:ap-northeast-1:123456789012:document/MyCalendar2"

利用シーン

  • 業務時間帯の変更制御
    • 平日日中はシステム変更を禁止し、夜間だけメンテ可能にする
  • 年末年始・繁忙期の変更禁止
    • 売り上げが集中する期間に変更をブロック
  • セキュリティパッチ適用
    • Patch Managerの自動パッチ適用を「夜中のメンテ時間」にだけ許可

メリット

  • 運用作業をカレンダーで見える化
  • 誤って本番稼働中に大きな変更を実行するリスクを削減
  • 組織の運用ガイドラインや監査要件に沿った統制が可能

まとめ

  • Systems Managerカレンダーは変更可能な時間帯を制御する機能
  • Automation、State Manager、Patch Managerなどの自動化タスクと連携
  • 運用リスクを減らし、安全な変更管理を実現できる

Discussion