OS パッチをメンテナンスウィンドウで自動適用し、コンプライアンスを確認する
このハンズオンでは、AWS Systems Manager の Patch Manager を使い、EC2 インスタンスの OS パッチ適用を自動化します。パッチベースライン(適用ルール)を定義し、メンテナンスウィンドウ(適用スケジュール)で定期実行し、パッチコンプライアンス(適用状況)をレポートで確認します。手作業の SSH パッチ適用から脱却する運用自動化を学びます。
| 項目 | 内容 |
|---|---|
| 所要時間 | 60〜75 分 |
| 難易度 | 中級 |
| 主要サービス | Systems Manager(Patch Manager、メンテナンスウィンドウ)、EC2 |
| 前提リソース | SSM 管理下の EC2 インスタンス(Session Manager ハンズオンの構成を流用可) |
| 課金目安 | Patch Manager 自体は無料。EC2 の稼働料金のみ |
| 用語 | 説明 |
|---|---|
| パッチベースライン | どのパッチを承認/拒否するかのルール(OS 種別ごと) |
| パッチグループ | タグでグループ化したインスタンス群。グループ単位でベースラインを割り当て |
| メンテナンスウィンドウ | パッチ適用を実行する時間枠(スケジュール) |
| コンプライアンス | 各インスタンスのパッチ適用状況(準拠/非準拠) |
AmazonSSMManagedInstanceCore 付き、フリートマネージャーで「オンライン」表示)Session Manager ハンズオンで IAM ロール(handson-ec2-ssm-role)をアタッチ済みの EC2 があれば、そのまま利用できます。SSM 管理下にあることが前提条件です。
パッチ対象のインスタンスを「Patch Group」タグでグループ化します。
Patch Manager が認識するタグキーは Patch Group(P と G が大文字、間にスペース)です。PatchGroup や patch-group では認識されません。正確に入力してください。
どのパッチを自動承認するかのルールを定義します。
「パッチベースラインの作成」をクリックします。
「7 日後に自動承認」は、パッチがリリースされてから 7 日間の様子見期間を設けて、問題のあるパッチを除外する仕組みです。検証目的ですぐに適用したい場合は 0 日に設定することもできます。
作成したベースラインに、ステップ 1 でタグ付けしたパッチグループを関連付けます。
handson-patch-group を入力 → 「追加」パッチベースライン一覧で handson-patch-baseline の「パッチグループ」列に handson-patch-group が表示されれば関連付け完了です。これでタグの付いた EC2 はこのベースラインのルールが適用されます。
メンテナンスウィンドウを待たずに、今すぐパッチ状況をスキャンして確認します。
| オペレーション | 動作 | 再起動 |
|---|---|---|
| Scan | 不足パッチを検出するだけ(適用しない) | なし |
| Install | 承認済みパッチを実際に適用 | 必要に応じて再起動 |
本番環境で Install を実行するとパッチによっては OS が再起動します。サービス停止を避けるため、メンテナンスウィンドウ(次のステップ)で業務時間外に実行するのが定石です。再起動を抑制したい場合は RebootOption を NoReboot に設定できます。
パッチ適用を定期スケジュールで自動実行するメンテナンスウィンドウを作成します。
「メンテナンスウィンドウの作成」をクリックします。
handson-patch-targetsPatch Group / タグ値: handson-patch-group毎週日曜まで待たずに動作確認したい場合は、スケジュールを「現在時刻の 10 分後」の cron 式に一時的に変更するか、ステップ 4 の「今すぐパッチ適用」で Install を実行してください。
| コンプライアンス状態 | 意味 |
|---|---|
| Compliant(準拠) | ベースラインで承認されたパッチがすべて適用済み |
| Non-compliant(非準拠) | 承認済みだが未適用のパッチがある |
| Installed | 適用済みのパッチ |
| Missing | 承認済みだが未適用 |
| Failed | 適用に失敗したパッチ |
Install 実行後にコンプライアンスが「準拠(Compliant)」になっていれば、パッチ適用の自動化が成功しています。非準拠のインスタンスは詳細から不足パッチを特定できます。
Patch Manager 自体は無料ですが、検証用リソースを片付けます。
パッチ管理はセキュリティの基本です。本番環境ではメンテナンスウィンドウとベースラインを残し、定期的な自動パッチ適用とコンプライアンス監視を継続することが推奨されます。EventBridge でコンプライアンス変化を検知して通知する仕組みと組み合わせるとさらに堅牢になります。