AWS Systems Manager のアイコン

AWS Systems Manager

AWS リソースとオンプレミスサーバーを一元管理できる運用管理サービス

何ができるか

AWS Systems Manager は、AWS 上のリソースやオンプレミスのサーバーを一元的に管理・運用するためのサービスです。EC2 インスタンスへのパッチ適用、ソフトウェアのインストール、設定変更、パラメータの安全な保管、運用タスクの自動化など、インフラ運用に必要な機能を包括的に提供します。エージェントベースのアーキテクチャにより、SSH や RDP を使わずにインスタンスにアクセスでき、セキュリティを向上させます。

どのような場面で使うか

EC2 インスタンスへの OS パッチの一括適用、アプリケーション設定値やシークレットの安全な保管と配布、運用手順書 (Runbook) の自動実行、インスタンスのインベントリ収集とコンプライアンス確認、Session Manager によるセキュアなリモートアクセスなど、インフラの運用管理を効率化したい場面で利用されています。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。

身近な例え

ビル管理会社に例えるとわかりやすいでしょう。複数のビル (サーバー) の設備点検 (パッチ適用)、鍵の管理 (パラメータストア)、定期清掃 (メンテナンスタスク) を一括で管理してくれます。各ビルに管理人を常駐させる代わりに、中央の管理室からすべてのビルの状態を把握し、遠隔で作業を指示できます。

Systems Manager とは

AWS Systems Manager は、AWS リソースの運用管理を一元化するサービス群の総称です。パッチ管理、パラメータ管理、セッション管理、自動化、インベントリ収集など、20 以上の機能 (ケイパビリティ) で構成されています。EC2 インスタンスだけでなく、オンプレミスのサーバーや他のクラウド上のサーバーも SSM Agent をインストールすることで管理対象に含められます。

主な機能

Systems Manager の代表的な機能として、Parameter Store はアプリケーションの設定値やデータベース接続文字列を安全に保管・配布します。Patch Manager は EC2 インスタンスへの OS パッチ適用を自動化し、パッチコンプライアンスを維持します。Session Manager は SSH キーの管理なしにブラウザからインスタンスにアクセスでき、セキュリティグループでポート 22 を開放する必要がありません。Run Command は複数のインスタンスに対してコマンドを一括実行できます。

自動化と Runbook

Automation 機能では、運用手順を Runbook として定義し、自動実行できます。AMI の作成、インスタンスの再起動、EBS スナップショットの取得など、定型的な運用タスクをコード化して再現性を確保します。AWS が提供する 100 以上のプリビルド Runbook を利用するか、独自の Runbook を YAML で記述できます。EventBridge と連携すれば、特定のイベントをトリガーに Runbook を自動実行する仕組みも構築できます。

料金体系

Systems Manager の多くの機能は無料で利用できます。Parameter Store の標準パラメータ、Session Manager、Run Command、Patch Manager の基本機能は追加料金なしで使用可能です。Parameter Store の高度なパラメータ (4KB 超のサイズ、パラメータポリシー) や、OpsCenter の OpsItem、Change Manager の変更リクエストなど、一部の高度な機能には従量課金が適用されます。

注意点

  • SSM Agent は Amazon Linux 2 や Windows Server の AMI にプリインストールされているが、他の OS では手動インストールが必要
  • Parameter Store の標準パラメータは無料だが、Secrets Manager と比較して自動ローテーション機能がないため、シークレットの用途に応じて使い分けること

さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。