NRIネットコム Blog

NRIネットコム社員が様々な視点で、日々の気づきやナレッジを発信するメディアです

歴史・年表でみるAWSサービス(AWS Systems Manager編) -機能一覧と概要のまとめ・SSM入門-

小西秀和です。
前回は「歴史・年表でみるAWSサービス(Amazon S3編) -単なるストレージではない機能・役割と料金の変遷-」の記事でAmazon S3の歴史や料金の変遷などを紹介しました。
今回は数年の間に名称変更や様々な機能が統合されてきたAWS Systems Manager(SSM)について歴史年表を作成してみました。
ただ、前回とは異なり、今回は料金の変遷や細かいアップデートは省略してSSMの主要な機能だけに着目しています。
また、本記事執筆時点の「現在のAWS Systems Managerの機能一覧と概要」もまとめました。
今回の記事の内容は次のような構成になっています。

AWS Systems Manager歴史年表の作成経緯と方法

今回、AWS Systems Manager(SSM)の歴史年表を作成した経緯は、数年の間にSSMの元となる様々な機能の発表と統合・名称変更が行われ、かつ現行のSSMの機能も非常に幅広いため、次のアプローチでSSMの情報をまとめたかったからです。

  • SSMの元となるサービスの登場と統合の歴史を追いながら、SSMに含まれる機能の変遷を整理する
  • SSMの現行の機能の概要をまとめる

この年表は主に次のブログやドキュメント履歴のAWS Systems Managerに関する内容を参考にしています。

年表の日付は参考にした資料によってアナウンスや記事投稿のタイミングが違う場合もあったため若干のブレがあります。
掲載している内容は現在のAWS Systems Managerと関係している主要な機能と概要説明に必要なものに限定しています。
つまり、ここの年表にあるものがAWS Systems Managerの機能のアップデートの全てではなく、あくまで私がピックアップした代表的なアップデートであることにご注意ください

AWS Systems Manager歴史年表(2014年10月29日~2021年12月31日までのアップデート)

さて、ここからがAWS Systems Managerの機能に関する年表になります。
AWS Systems Managerの歴史は本記事執筆時点で7年間ちょっとですが、機能統合やそれに伴う名称変更などが複雑になっており、現行のAWS Systems Managerとなってからの新機能発表も毎年のようにあります。

※テーブルは項目名クリックでソートできます。

年月日 概要
2014/10/29 Microsoft SCVMMからAmazon EC2インスタンスなどのAWSリソースを管理するためのVMMコンソールのアドインとして実装されたインターフェイスであるAWS System Manager for Microsoft System Center Virtual Machine Manager(SCVMM)が発表
参考:New Microsoft System Center Virtual Machine Manager Add-In
2014/11/06 Amazon Simple Systems Manager(SSM) API Versionが2014-11-06となる。
参考:AWS SDK for PHP 3.x - Amazon Simple Systems Manager(SSM)2014-11-06
Class: AWS.SSM — AWS SDK for JavaScript
AWS Systems Manager API Reference API Version 2014-11-06
2015/01/21 AWS Systems Manager for Microsoft System Center Virtual Machine Manager(SCVMM)が更新。既存の仮想マシンをインポートし、AWSマネジメントコンソールを使用せずに新しいAmazon EC2インスタンスを起動できるようになる。
参考:System Center Virtual Machine Manager Add-In Update – Import & Launch Instances
2015/02/17 WindowsインスタンスのPowerShellスクリプト実行、MSIパッケージのインストール・修復・アンインストールなどが可能なEC2ConfigとEC2 SSM(Simple Systems Manager) APIを使用してWindowsのAmazon EC2インスタンスが起動時にドメイン参加する方法が紹介される。
参考:Seamlessly Join EC2 Instances to a Domain
2015/10/26 EC2Configを使用してWindowsインスタンスのソフトウェアインストール、スクリプトやMicrosoft PowerShellコマンドの実行、Windows Update設定の構成などを、AWSマネジメントコンソール、AWS CLI、AWS SDK、AWS Tools for Windows PowerShellで実行できるEC2 Run Commandが発表される。
参考:New EC2 Run Command – Remote Instance Management at Scale
2016/05/12 EC2 Run Commandがアップデートされ、Linux向けのSimple Systems Manager(SSM)エージェントが使用できるようになる。
参考:EC2 Run Command Update – Manage & Share Commands and More
2016/12/01 Amazon EC2インスタンスで実行されているWindowsまたはLinuxホストを管理する一連のサービスとしてAmazon EC2 Systems ManagerがEC2 Run Commandを含む次の機能を追加・統合する形で発表される。
Run Command、State Manager、Parameter Store、Maintenance Window、Software Inventory、Patch Management、Automation、AWS Configとの統合
参考:Introducing EC2 Systems Manager for automated configuration management of EC2 and on-premises systems
EC2 Systems Manager – Configure & Manage EC2 and On-Premises Systems
※Amazon Simple Systems Manager(SSM)はEC2 Systems Managerによる管理を実行するためのインスタンスにインストールされるエージェントに位置づけられている。
参考:How to Simplify Security Assessment Setup Using Amazon EC2 Systems Manager and Amazon Inspector
2017/11/29 Amazon EC2とそれ以外のAWSサービスにも拡張したツールを提供するAWS Systems ManagerがAmazon EC2 Systems Managerの機能を包含し、新たに次の機能を追加する形で発表される。
Resource Groups、Insights(Compliance Dashboard、既存のCloudWatch DashboardおよびPersonal Health Dashboard(PHD)のSSMコンソール内での統合表示)
参考:AWS Systems Manager – A Unified Interface for Managing Your Cloud and Hybrid Resources
2018/09/11 AWS Systems Manager Session Manager機能が追加される。
参考:Introducing AWS Systems Manager Session Manager
2019/06/07 AWS Systems Manager OpsCenter機能が追加される。
参考:Introducing AWS Systems Manager OpsCenter to enable faster issue resolution
2019/11/19 AWS Systems Manager Explorer機能が追加される。
参考:Introducing AWS Systems Manager Explorer
2019/11/25 AWS Systems Managerの機能の一つとしてAWS AppConfigが追加される。
参考:Simplify application configuration with AWS AppConfig
2020/01/06 AWS Systems Manager Change Calendar機能が追加される。
参考:Introducing AWS Systems Manager Change Calendar
2020/12/15 AWS Systems Manager Application Manager機能が追加される。
参考:Introducing AWS Systems Manager Application Manager
2020/12/15 AWS Systems Manager Change Manager機能が追加される。
参考:Introducing AWS Systems Manager Change Manager
2020/12/15 AWS Systems Manager Fleet Manager機能が追加される。
参考:Introducing AWS Systems Manager Fleet Manager
2021/05/10 AWS Systems Manager Incident Manager機能が追加される。
参考:Introducing Incident Manager from AWS Systems Manager

AWS Systems Managerの省略名「SSM」について

上記の年表の経緯から、現在もAWS Systems Managerの省略名として使用される「SSM」は前身のAPI、エージェントであるAmazon Simple Systems Manager(SSM)が由来となっています。

SSMの名残があるAWSリソース例

  • サービスエンドポイント(ssm.<リージョン名>.amazonaws.com)
  • AWS CLI(aws ssm <コマンド>)
  • AWS SDK(Class: AWS.SSM)
  • IAM(ポリシー名、アクション名、ARNなど)
  • AWS CloudFormation(AWS::SSM::<リソース名>など)
  • AWS Config(AWS::SSM::<リソース名>など)
  • AWS Systems Managerの機能(SSM Agent、SSMパラメータなど)

年表に登場するサービスの関係について

現在のAWS Systems Managerとの関係

現在のAWS Systems Managerの源流であり、後に統合された関係サービスは年表での登場順にAmazon Simple Systems Manager(SSM) API、EC2 Run Command、Simple Systems Manager(SSM)エージェント、Amazon EC2 Systems Managerが挙げられます。

一方で最初に「AWS System Manager」という名前をもって登場したAWS Systems Manager for Microsoft System Center Virtual Machine Manager(SCVMM)は現在でもAmazon EC2のツールとして紹介されています。

<参考>
AWS Systems Manager for Microsoft System Center VMM - Amazon Elastic Compute Cloud
Plugins for Microsoft System Center – Amazon Web Services

EC2ConfigとSSMエージェントの関係

年表中に出てくるEC2ConfigとはWindows Server 2016より前のAmazon EC2インスタンスにインストールされ、初期設定タスクを自動化するツールです。
現在ではWindows Server 2016、2019向けのEC2Launch、Windows Server 2008 SP2からWindows Server 2022までを広くサポートするEC2Launch v2に置き換わっています。

2015年当時、WindowsのAmazon EC2インスタンスではEC2Configを使用してOSコマンドのリモート実行をしていました(最新バージョンのEC2Config、EC2Launch、EC2Launch v2では機能の一部としてSSMエージェントがインストールされ、OSコマンド実行の機能もRun Commandとして移行されています)。
しかし、EC2ConfigはLinuxのAmazon EC2インスタンスには対応していないため、LinuxのAmazon EC2インスタンスでOSコマンドをリモート実行するエージェントとしてSimple Systems Manager(SSM)エージェントが登場しました。

<参考>
Configure a Windows instance using the EC2Config service
Configure a Windows instance using EC2Launch
Configure a Windows instance using EC2Launch v2

現在のAWS Systems Managerの機能一覧と概要

ここからは現在のAWS Systems Managerの機能一覧と概要を紹介します。
AWS Systems Managerは4つのコア機能グループ(運用管理、アプリケーション管理、変更管理、ノード管理)に分かれており、それぞれに複数の機能が分類されています。

<参考>
AWS Documentation - AWS Systems Manager

運用管理(Operations Management)

Explorer

AWS Systems Manager ExplorerはAWSアカウントおよびAWSリージョン全体のOpsData(オペレーションデータ)を集約したダッシュボードを提供し、対応が必要な運用上の問題点を可視化して特定することを支援します。OpsDataのデータソースには次のものがあります。

  • AWS Systems Manager OpsCenterのOpsItems(運用作業項目)
  • AWS Systems Manager Patch Manager
  • Amazon EC2
  • AWS Trusted Advisor
  • AWS Compute Optimizer
  • AWS Support Centerのケース
  • AWS Config
  • AWS Security Hub

例えばAWS Systems Manager ExplorerからAWS Systems Manager OpsCenterのOpsItemsで優先度の高い問題を確認し、AWS Systems Manager OpsCenterからAWS Systems Manager Automationを実行して問題の解決を試みるというような使い方があります。

OpsCenter

AWS Systems Manager OpsCenterはAWSリソースに関連したOpsItems(運用作業項目)における運用上の問題の集約・標準化、調査・修正に役立つ関連性の高いデータの一元的な提供、問題解決に使用できるAWS Systems Manager AutomationのRunbookの提供をする機能です。
OpsCenterは前述のAWS Systems Manager Explorerとセットアップが統合されているため、OpsCenterのOpsItemsおよびOpsItemsを含むExplorerのOpsDataを確認できる環境が同時に作成されます。
OpsCenterを使用すると次のような調査・修正に役立つ関連性の高いデータを一元的に確認できます。

  • イベント、リソース、アカウントの詳細
  • 類似の特性を持つ過去のOpsItem
  • 関連するAWS Configの変更と関係性
  • AWS CloudTrailログ
  • Amazon CloudWatchアラーム
  • AWS CloudFormationスタック
  • ログやメトリクスにアクセスするためのその他のクイックリンク
  • Runbookと推奨Runbookの一覧
  • AWSサービスを通じてOpsCenterに渡される追加情報

CloudWatch Dashboard

Amazon CloudWatchコンソール内で管理、表示するAmazon CloudWatch DashboardにAWS Systems Managerコンソールからもアクセスするショートカットです。AWS Systems Managerの機能を使用しながら必要な時にAmazon CloudWatch Dashboardを使用する場合に役立ちます。

Personal Health Dashboard(PHD)

Personal Health DashboardにAWS Systems Managerコンソールからもアクセスするショートカットです。AWS Systems Managerの機能を使用しながら必要な時にPersonal Health Dashboardを使用する場合に役立ちます。

Incident Manager

AWS Systems Manager Incident Managerはアプリケーションに影響を与えるインシデントを軽減、回復するように設計されたインシデント管理コンソールです。
Incident Managerは次のインシデント計画とインシデントライフサイクルの各フェーズで使用する機能を提供します。

<インシデントライフサイクルの流れ>

インシデント計画:0
インシデントのライフサイクル:1 → 2 → 3 → 4 → 1へ戻る

0. インシデント計画

インシデント計画ではIncident Managerの次の機能を使用して、対応プランを作成します。

  • 連絡先
    インシデント発生時に連絡をする対応者(レスポンダー)の連絡先と連絡先チャネル(Eメール、SMS、音声)を設定します。
  • エスカレーションプラン
    連絡先がインシデントを受けなかった場合に次に呼び出す連絡先の順番を設定します。
  • Runbook
    インシデント発生時に調査や影響を軽減する対応手順のうち自動化可能なものをAWS Systems Manager AutomationのRunbook(Automation Document)として定義します。
  • AWS Chatbot
    AWS Chatbotからの継続的なインシデント更新情報の送信先として、対応者(レスポンダー)の使用するAmazon ChimeまたはSlackを選択して設定します。
  • 対応プラン
    対応プランでインシデント発生時の計画を前述の連絡先、エスカレーションプラン、Runbook、AWS Chatbotを組み合わせて作成します。
  • インシデントの作成
    Amazon CloudWatch、Amazon EventBridge、Incident Managerのいずれかから上記で作成した対応プランをもとにインシデントを作成し、インシデント発生時に対応プランが実行されるように設定します。
1. アラートとエンゲージメント

Amazon CloudWatch、Amazon EventBridgeでインシデントをモニタリングし、インシデント発生時には対応プランが実行されます。
対応プランに基づき、対応者へのエスカレーション、AWS Chatbotによるインシデント情報の更新通知が実施されます。

2. トリアージ

対応者が次の影響評価でインシデントに優先順位を付けます。
  1. 重大な影響
  2. 大きな影響
  3. 中程度の影響
  4. 少ない影響
  5. 影響なし

3. 調査と軽減

Incident Managerのインシデント詳細ページのメトリクス、タイムラインでインシデントの調査に役立つ情報が提供され、AWS Systems Manager AutomationのRunbookで予め定義した調査手順や影響を軽減する対応手順の実行を実施します。

4. インシデント後の分析

インシデント対応を完了した後、Incident Managerのインシデント分析機能でインシデントと対応の状況を質問に回答しながら記録します。
インシデント分析に使用する質問は、AWS標準または予め作成した分析テンプレートで定義します。
この分析テンプレートで定義したインシデント概要、影響、メトリック、タイムライン、アクション(改善策)などに関連する質問に回答し、分析を通して改善の促進に使用します。
インシデント分析の質問の記述で重要なポイントは、インシデント影響の分析、問題の根本原因の理解、改善策による根本原因への対処、インシデント対応の改善、インシデントから学んだ情報の組織内共有といった利点を活かすことが目的であり、人の名前を記述しない、非難を記載しないという注意点があります。

アプリケーション管理(Application Management)

Application Manager

AWS Systems Manager Application Managerは一つのコンソールから複数のAWSアプリケーションのモニタリングやアクションの実行などの一元管理をする機能です。
Application Managerダッシュボードに追加できるカテゴリはアプリケーション(カスタムアプリケーション、Launch Wizard、CloudFormationスタック、AppRegistryアプリケーション)とコンテナクラスター(Amazon ECSクラスター、Amazon EKSクラスター)です。
Application Managerダッシュボードで表示できる情報には次のものが挙げられます。

  • アプリケーションの概要
  • 各リソースの詳細
  • AWS Systems Manager State Managerによるコンプライアンス情報
  • Amazon CloudWatch Application Insightsのモニタリング
  • AWS Systems Manager OpsCenterによるOpsItems
  • Amazon CloudWatch Logsのログ
  • AWS Systems Manager AutomationのRunbook

上記に加えてダッシュボードに追加できるカテゴリごとに特有の情報表示と操作、AWS Systems Manager Automation Runbookの実行もできるようになっています。

AppConfig

AWS AppConfigはAmazon EC2インスタンス、AWS Lambda、コンテナ、モバイルアプリケーション、IoTデバイスなどでホストされるアプリケーションで使用する構成データや設定値を管理、検証して安全にデプロイ・モニタリングするサービスです。
AWS AppConfigで使用する構成データや設定値は、AWS AppConfigでホストされた構成ストア、Amazon S3、AWS Systems Manager Parameter Store、AWS Systems Manager Document Storeから取得できます。
また、AWS CodePipelineを使用してAWS CodeCommit、GitHub、Bitbucket Pipelinesからの取得もできます。

Parameter Store

AWS Systems Manager Parameter Storeはパスワード、データベース文字列、AMI ID、ライセンスコードなどの設定データや機密情報をパラメーターとして管理するための安全な階層型ストレージを提供します。
パラメーター値はプレーンテキストまたは暗号化されたデータとして保存でき、一意のパラメーター名でスクリプト、コマンド、SSMドキュメント、構成、自動化ワークフローなどで参照します。
AWS Systems Manager Parameter StoreはAWS Secrets Managerと特徴がよく似ていますが、主に次のような相違点があります。

  • Auroraを含むRDS、Redshift、DocumentDBといったデータベースサービスとの統合機能がない
  • データベースサービスなどとの認証情報の自動ローテーション機能がない
  • 標準スループットのスタンダードパラメータは無料で使用できる

一方でAWS Systems Manager Parameter StoreからAWS Secrets Managerシークレットを参照するAPIが提供されています。
そのため、AWS Secrets Managerライブラリでシークレット取得の実装をすることなく、AWS Systems Manager Parameter StoreからAWS Secrets Managerシークレットを取得することができます。

変更管理(Change Management)

Change Manager

AWS Systems Manager Change Managerはアプリケーション設定とインフラストラクチャの運用変更をリクエスト、承認、実装、報告する変更管理フレームワークです。
また、Amazon CloudWatchアラーム、AWS Systems Change Calendar、AWS Organizations、AWS Single Sign-OnといったAWSサービスとの連携もサポートされています。

Automation

AWS Systems Manager Automationは一般的で反復のあるIT運用や管理タスクを自動化する機能です。
AWS Systems Manager AutomationはAWSリソースに対するアクションを1以上のステップで定義したRunbook(旧称:Automationドキュメント)と呼ばれるJSONまたはYAML形式の手順書を実行します。
Runbookではスクリプト実行、AWS API実行、AWS Lambda関数実行、AWS StepFunctions実行、AWS Systems Manager runCommand実行、AWS Systems Manager Automation実行、AWS CloudFormationスタック作成、Amazon EC2インスタンス起動、AMI作成、条件分岐(ステップジャンプ)実行、手動承認などのアクションが定義できます。

Change Calendar

AWS Systems Manager Change Calendarはスケジュールを日付と時刻の範囲で設定し、AWS Systems Manager Automation Runbookなどから参照してアクションの実行可否を判断するスケジュール情報を提供する機能です。
作成できるカレンダーのタイプは次の2つになります。

  • Open by default
    デフォルトでアクションが実行されるカレンダーに対して、アクションが実行されないイベントを作成するタイプ
  • Closed by default
    デフォルトでアクションが実行されないカレンダーに対して、アクションが実行されるイベントを作成するタイプ

また、Googleカレンダー、Microsoft Outlook、iCloudカレンダーのiCalendarファイル(.ics)のインポートがサポートされており、祝日などのイベントを一括で取り込むこともできます。

Maintenance Windows

AWS Systems Manager Maintenance Windowsはパッチやアップデートのインストールといった管理やメンテナンスのタスクを複数インスタンスに対して実行する時間枠をスケジュールする機能です。
Maintenance Windowsで指定した時間枠でタスクを自動的に実行することでオペレーションやインフラストラクチャの障害の影響を最小限に抑制できます。
メンテナンスウィンドウのスケジュールはCron/Rate形式またはそれらをコンソールから作成するCron/Rateスケジュールビルダーを使用して設定します。
メンテナンスウィンドウのタスクはAWS Systems Manager Run Command、AWS Systems Manager Automation、AWS Step Functions、AWS Lambdaから選択することができ、タスクのターゲットとなるインスタンスはタグ付け、リソースグループ、手動のいずれかで選択します。

ノード管理(Node Management)

Fleet Manager

AWS Systems Manager Fleet ManagerはオンプレミスやEC2インスタンスなどSSMエージェントをインストールしたマネージドインスタンスでパフォーマンス、ファイルシステム、プロセス、OS内のユーザーとグループなどのOS情報管理、IAMロールおよびポリシーを使用したアクセス管理といったフリート管理をする機能です。
オンプレミスやAWS以外のクラウドで扱うサーバーは後述のHybrid Activationsで登録することにより、Fleet Managerでマネージドインスタンスとして管理できるようになります。
また、Fleet Managerに登録したオンプレミスやAWS以外のクラウドで扱うサーバーのマネージドインスタンスには高度なインスタンス層を有効化することで、後述のSession ManagerでブラウザやAWS CLIによるリモートアクセスをすることができます。

Hybrid Activations

AWS Systems Manager Hybrid ActivationsはオンプレミスやAWS以外のクラウドで扱うサーバーをFleet Managerのマネージドインスタンスとして管理するための機能です。
ハイブリッドアクティベーションをSystems ManagerコンソールまたはAWS CLIで作成し、SSMエージェントをインストールしたアクティベーション対象のサーバーでアクティベーションコードとアクティベーションIDを使用した登録コマンドを実行することで、Fleet Managerにマネージドインスタンスとして登録することができます。

Session Manager

AWS Systems Manager Session ManagerはブラウザベースまたはAWS CLIによるインタラクティブなリモート接続を実行する機能です。
踏み台ホストの準備、SSHキーの管理、インバウンドポートの開放が不要で、AWS CloudTrailによるセッションアクティビティの監査、Amazon CloudWatch LogsまたはAmazon S3によるセッションデータのログ記録が可能なため、サーバーへのアクセス管理と監査性の向上に役立ちます。
オンプレミスやAWS以外のクラウドで扱うサーバーに対してSession Managerによるリモートアクセスをする場合には、Hybrid Activationsに登録の上でFleet Managerのマネージドインスタンスとして管理し、高度なインスタンス層を有効化する必要があります。

Run Command

AWS Systems Manager Run CommandはAmazon EC2インスタンスまたはオンプレミスやAWS以外のクラウドで扱うサーバーにレジストリ編集、ユーザー管理、ソフトウェアやパッチのインストールといった一般的な管理タスクのリモート実行を自動化する機能です。
踏み台ホストの準備、SSHキーの管理、インバウンドポートの開放が不要で、AWS CloudTrailによるセッションアクティビティの監査、Amazon CloudWatch LogsまたはAmazon S3によるセッションデータのログ記録が可能なため、サーバーへのアクセス管理と監査性の向上に役立ちます。
Session ManagerとRun Commandの違いは、Session ManagerがSSH接続に似たインタラクティブなリモート接続によってログインユーザーの自由なコマンドライン操作を提供するのに対し、Run Commandは予め定義したコマンド実行のみをする点です。

Patch Manager

AWS Systems Manager Patch ManagerはAmazon EC2インスタンスまたはオンプレミスやAWS以外のクラウドで扱うサーバーに対して、オペレーティングシステムおよびアプリケーションのパッチ適用のプロセスを自動化する機能です。
Patch Managerのパッチ適用ルールはパッチベースラインで指定し、パッチ適用の承認・拒否リスト、パッチのリリースから数日以内に自動承認するルールなどを設定できます。
パッチを適用するターゲットはパッチグループに、Amazon EC2インスタンスまたはFleet Managerのマネージドインスタンスとして管理しているオンプレミスやAWS以外のクラウドで扱うサーバーをタグ付けやインスタンスIDで追加することで指定します。
このパッチベースラインに基づいたパッチ適用はAWS Systems Manager Run Commandによって実行されます。
一方で前述のAWS Systems Manager Maintenance WindowsはRun Commandをタスクとして指定できるため、Maintenance WindowsからPatch Managerのパッチ適用を実行するRun Commandタスクを指定し、パッチグループを指定しているタグをターゲットにすることで、事前に設定した時間枠でパッチ適用を実行することもできます。

State Manager

AWS Systems Manager State ManagerはAmazon EC2インスタンスまたはオンプレミスやAWS以外のクラウドで扱うサーバーの構成、ウイルス対策定義、ファイアウォール設定、アプリケーションなどを一貫して維持する状態(State)として定義し、構成管理を行う機能です。
状態を適用するターゲットはタグ付け、リソースグループ、個別選択、すべてのマネージドインスタンスを対象にする方法から選択できます。
オンプレミスやAWS以外のクラウドで扱うサーバーの場合はHybrid Activationsに登録の上でFleet Managerのマネージドインスタンスとして管理する必要があります。
ターゲットに対して適用する状態は、アプリケーションのインストール、Amazon CloudWatchの設定、AWS Systems Manager Automationの実行、PowerShellやシェルスクリプトの実行といった構成管理タスクを記述したSSMドキュメントで定義します。
これらのターゲット、SSMドキュメント、スケジュール(Cron/Rate形式)の組み合わせを関連付けとして作成することで構成管理タスクを自動的に実行できるようになります。

Compliance

AWS Systems Manager ComplianceはAWS Systems Manager Patch Managerのパッチ適用ステータスとAWS Systems Manager State Managerの関連付けの構成情報を収集して標準のコンプライアンスやカスタムコンプライアンスとの準拠または不整合をレポートする機能です。

Inventory

AWS Systems Manager InventoryはAmazon EC2インスタンスまたはFleet Managerのマネージドインスタンスとして管理しているオンプレミスやAWS以外のクラウドで扱うサーバーから、アプリケーション、ファイル、ネットワーク設定、サービス、レジストリ、サーバーロール、アップデート、その他システムプロパティといったインスタンスおよびソフトウェアに関するメタデータを収集する機能です。
収集したデータを使用してアプリケーション管理、ライセンス管理、ファイル一覧管理などが行えます。

Distributor

AWS Systems Manager DistributorはRun CommandやState ManagerなどのAWS Systems Manager機能を併用して、Amazon EC2インスタンスまたはFleet Managerのマネージドインスタンスとして管理しているオンプレミスやAWS以外のクラウドで扱うサーバーで使用するソフトウェアのバージョン管理、スケジュールされたデプロイなどパッケージのライフサイクル管理をする機能です。

まとめ

今回はAWS Systems Managerの歴史年表として「Systems Manager」と名の付く機能・サービスの統合や名称変更の変遷、そして現在のAWS Systems Managerの機能一覧と概要を見てきました。

実際に歴史を追いながら見ていくとAWS Systems Manager for Microsoft SCVMMといった名称は同じでも、現在のAWS Systems Managerとは独立したようなツールの存在、SSMの名称の由来、SSMにいつからどのような機能があるかがわかりました。

このように様々な変遷がありましたが、「Systems Manager」という名称がつくAWSサービス・機能に見えてくる共通の概念は「オペレーションの一元管理、リモート実行、自動化」です。
AWS Systems Managerはこらからも「オペレーションの一元管理、リモート実行、自動化」を実現するツールをAmazon EC2だけでなく他のAWSサービスにも拡張して提供していくと考えられます。
今後も継続的にAWS Systems Managerがどのような機能やツールを提供していくのかその動向をウォッチしていきたいと思います。

なお、AWS Systems Manager以外のサービスも含めたAWSサービス全体の歴史年表もありますので、興味がありましたら御覧ください。

Hidekazu Konishi, ALL AWS Certifications Engineer

執筆者小西秀和

ALL AWS Certifications Engineer(AWS認定全取得)の知識をベースにAWSクラウドの活用に取り組んでいます。