AWS Systems Manager の詳細:Inventory、Compliance、および構成管理
Inventory(ソフトウェア一覧)、パッチ/コンプライアンス管理、Maintenance Window、AppConfig、Parameter Store を解説し、運用自動化と ISO 監査対応を支援します。
前回の記事では、Systems Manager のいくつかの機能を紹介しました。
Session Manager を有効にすると、複数のユーザーが同じインスタンスに接続できます。
Patch をスケジュールして脆弱性を修正できます。
ターゲットインスタンス上でスクリプトを実行できます。
状態とコンプライアンスの管理が可能です。
これらはいずれも共通の目的を持っています:
管理対象インスタンスに対する可視性と制御を高めることです。
この可視性と制御は、ISO 監査に直接関係します。
もちろん、ISO が求める要件はこれらだけではありません。
この記事では、運用管理に役立つ追加の Systems Manager 機能を補足して説明します。
Inventory(ソフトウェア一覧)
Inventory とは
Inventory は、管理対象 EC2 インスタンスに関する情報を収集・管理する Systems Manager の機能です。定期的にインベントリをスキャンし、OS、インストール済みアプリケーション、ネットワーク構成などを収集します。
State Manager を使って AWS-GatherSoftwareInventory を定期実行する
State Manager で Association を作成し、AWS-GatherSoftwareInventory ドキュメントを指定することで、ソフトウェアインベントリを定期的に収集できます:
- 自動収集:ホストを手動で確認する必要がなく、システムが定期的に実行します
- 包括的なソフトウェア一覧:OS バージョンだけでなく、各インスタンスにインストールされているソフトウェアとそのバージョンを記録します
- クラウドネイティブな資産管理:企業向けの IT アセット管理ツール(例:Lansweeper)に相当するクラウド側の実装です
Inventory の利点
- 監査対応:監査用のアセット一覧を迅速に生成できます
- 脆弱性追跡:フリート全体でどのソフトウェアとバージョンが導入されているかを把握できます
- コスト最適化:ソフトウェアのライセンス利用状況を把握し、不要な購入を防げます
Compliance(コンプライアンス管理)
Compliance とは
Compliance は、Association の実行ステータスとコンプライアンス状況を追跡する Systems Manager のダッシュボードです。
Compliance の主な機能
State Manager で作成した Association(Patch Manager タスクを含む)の実行結果が Compliance ダッシュボードに表示されます:
- Patch Manager の結果
- パッチを正常に適用したインスタンス
- パッチ適用に失敗したインスタンスとその理由
- パッチインストールの詳細な失敗原因
- Association 実行の追跡
- 各 Association の最終実行時刻
- 実行の成功/失敗ステータス
- インスタンスが対象ドキュメントに正しく関連付けられているか
- コンプライアンスダッシュボード
- 管理対象インスタンス全体のコンプライアンス状況の概要
- 非準拠のインスタンスを特定して是正対応を行う
- ISO 監査向けのコンプライアンスレポートを生成する
実務上の推奨
明確なコンプライアンス監視戦略を構築しましょう:
- 明確なコンプライアンス基準を定義する
- Compliance レポートを定期的に確認する
- 非準拠に対するアラートと自動修復を設定する
Maintenance Window(メンテナンスウィンドウ)
Maintenance Window とは
Maintenance Window は、パッチ適用やソフトウェアインストールなどのメンテナンスタスクを実行する特定の時間帯を定義できる機能です。
Maintenance Window の価値
- 業務中断の回避:承認済みの時間帯に重要な更新を実施し、影響を最小化します
- 変更管理との整合:メンテナンスが許可された時間帯に実行されるようにします
- メンテナンスの自動化スケジュール:作業の手動調整を減らし、タスクを自動で実行します
Maintenance Window 設定の主要手順
- ウィンドウの開始時刻と継続時間を定義する
- 実行するタスクを指定する(例:Patch Manager)
- 対象インスタンスを選択する(Tag または Resource Group による)
- 失敗時の再試行動作を設定する
構成管理(Configuration Management)
構成管理はモダンな運用の中核であり、Systems Manager は複数レイヤーの構成管理ソリューションを提供します。
AppConfig
AppConfig はアプリケーション設定を管理するサービスで、アプリの挙動を動的に変更するケースに適しています。
AppConfig の主な機能
- 動的な設定更新
- アプリケーションを再デプロイせずに設定を変更できる
- フィーチャーフラグをサポートする
- A/B テスト向けの設定配布をサポートする
- 段階的デプロイ
- 設定変更を広範囲に展開する前に検証する
- 新しい設定を段階的にインスタンスへ配信する
- 障害時の自動ロールバック
- アプリケーションとの統合
- 主要言語(Java、Python、Node.js 等)向け SDK を提供
- アプリケーションはランタイムで最新設定を取得できる
AppConfig の用途
- フィーチャーフラグ管理:機能を迅速に有効/無効化する
- A/B テスト:ユーザーセグメント毎に異なる挙動を提供する
- 動的スロットリング設定:システム負荷に応じて制限値を調整する
Parameter Store
Parameter Store は、アプリケーションやサーバーの構成を集中管理するためのキー・バリュー型ストアです。
Parameter Store の主な機能
- 集中管理
- DB 接続文字列、API キーなどの機密情報を保存
- KMS による暗号化をサポート
- ロールバックが容易なバージョニング
- 柔軟なパラメータ型
- String:プレーンテキスト
- StringList:文字列リスト
- SecureString:暗号化された機密情報(パスワード、API キー等)
- IAM との統合
- IAM ポリシーでアクセスを制御する
- 監査ログでアクセス履歴を記録する
Parameter Store と環境変数の比較
| 特性 | 環境変数 | Parameter Store |
|---|---|---|
| 保存場所 | ローカル OS | AWS クラウド |
| セキュリティ | 手動での暗号化が必要 | KMS による暗号化をサポート |
| バージョン管理 | 非対応 | 複数バージョンをサポート |
| 集中管理 | 非対応 | アプリ間での集中管理をサポート |
| 変更通知 | なし | EventBridge 等で通知可能 |
Parameter Store のベストプラクティス
1
2
3
4
5
/myapp/prod/db/hostname
/myapp/prod/db/port
/myapp/prod/db/username
/myapp/prod/api/key
/myapp/prod/cache/ttl
階層型の命名規則を使ってパラメータを整理し、管理と検索を容易にします。
Systems Manager と ISO 監査対応
なぜ Systems Manager が ISO 監査で重要なのか
- 包括的な監査トレイル
- Inventory:資産一覧が完全かつ管理されていることを証明
- Compliance:パッチ適用やメンテナンスが順守されていることを示す
- CloudTrail 統合:操作ログを完全にキャプチャ
- 監査要件の自動化
- State Manager:定期的なコンプライアンスチェックを確実に実行
- Maintenance Window:管理された変更ウィンドウを強制
- Parameter Store:追跡可能なシークレットと構成管理を提供
- 人的ミスの低減
- 自動化により手動作業に起因するドリフトを減らす
- バージョン管理により構成の一貫性を確保
- 実行記録が監査証跡を提供する
ISO 監査の実務推奨
- 構成の基準を確立する
- Inventory で初期資産状態を記録する
- 定期的に現在状態を基準と照合する
- コンプライアンス監視を実装する
- Compliance ダッシュボードを定期的に確認する
- 非準拠項目のアラートを設定する
- 運用プロセスを文書化する
- すべての Association と Maintenance Window 設定を記録する
- 監査要求に備えて実行ログを保持する
- 変更管理を導入する
- すべての構成変更を Parameter Store 経由で管理する
- バージョン管理で変更履歴を追跡する
まとめ
AWS Systems Manager は強力な自動化ツールを提供するだけでなく、包括的なコンプライアンスと監査機能を企業にもたらします。Inventory、Compliance、Maintenance Window、AppConfig、Parameter Store を組み合わせることで、組織は以下を実現できます:
- 運用効率の向上:日常メンテナンスを自動化する
- セキュリティの強化:機密管理の集中化と変更追跡
- コンプライアンスの確保:監査証跡を生成して監査を簡素化
- リスクの低減:人的ミスを最小化し、構成の一貫性を維持する
これが現代のクラウド運用における中核的な価値です。