AWS Systems Manager とは? - AWS Systems Manager

AWS Systems Manager とは?

AWS Systems Manager は、AWS クラウド で実行されるアプリケーションとインフラストラクチャの管理に役立つ一連の機能です。Systems Manager により、アプリケーションとリソースの管理が簡略化され、オペレーション上の問題の検出と解決にかかる時間が短縮されるほか、AWS リソースを大規模かつ安全に管理できるようになります。

Systems Manager の仕組み

次の図は、Systems Manager の機能がリソースで実行するアクションについて説明しています。この図は、すべての機能をカバーしているわけではありません。列挙されたそれぞれ相互作用は図表の後に説明されます。

図 1: Systems Manager プロセスフローの一般的な例


                Systems Manager の機能が、設定、起動、処理、報告の類似したプロセスを使用する方法を示した図。
  1. Systems Manager へのアクセスSystems Manager へのアクセスに利用可能ないずれかのオプションを使用します。

  2. Systems Manager 機能の選択 — リソースで実行するアクションに役立つ機能を特定します。この図で示すのは、IT 管理者および DevOps 担当者がアプリケーションとリソースの管理に使用する機能のごく一部にすぎません。

  3. 検証と処理 – Systems Manager は、AWS Identity and Access Management (IAM) ユーザー、グループ、ロールに指定したアクションを実行するアクセス許可があることを検証します。アクションのターゲットがマネージドノードの場合は、ノードで実行されている Systems Manager Agent (SSM Agent) がアクションを実行します。他のタイプのリソースについては、Systems Manager は指定されたアクションを実行するか、Systems Manager に代わってアクションを実行する他の AWS のサービスと通信します。

  4. 報告 — Systems Manager、SSM Agent、Systems Manager に代わってアクションを実行したその他の AWS のサービスが、ステータスを報告します。Systems Manager は、ステータスの詳細を他の AWS のサービスに送信できます (設定されている場合)。

  5. Systems Manager の運用管理機能 - 有効にした場合、Systems Manager の運用管理機能 (Explorer、OpsCenter、Incident Manager など) が運用データを集約したり、リソースのイベントやエラーに対してアーティファクトを作成したりします。これらのアーティファクトには、運用作業項目 (OpsItems) とインシデントが含まれます。Systems Manager の運用管理機能は、アプリケーションとリソースに関する運用上のインサイトや、問題のトラブルシューティングに役立つ自動修復ソリューションを提供します。

Systems Manager の機能

Systems Manager の機能は、以下のカテゴリに分類されます。各カテゴリのタブをクリックすると、各機能の詳細が表示されます。

アプリケーション管理

Application Manager

Application Manager は、DevOps エンジニアがアプリケーションとクラスターのコンテキストで AWS リソースの問題を調査および修正する際に役立ちます。Application Manager では、アプリケーションはユニットとして動作する AWS リソースの論理グループです。この論理グループは、アプリケーションのさまざまなバージョン、オペレーターの所有権の境界、デベロッパー環境などを表すことができます。Application Manager は Amazon Elastic Kubernetes Service (Amazon EKS) クラスターと Amazon Elastic Container Service (Amazon ECS) クラスターの両方を含むコンテナクラスターをサポートしています。Application Manager は複数の AWS のサービスや Systems Manager 機能の運用情報を 1 つの AWS Management Console に集約します。

AppConfig

AppConfig は、アプリケーション設定や機能フラグを作成、管理、デプロイする際に有用です。AppConfig では、あらゆる規模のアプリケーションへの管理型デプロイがサポートされています。AppConfig は、Amazon EC2 インスタンス、AWS Lambda コンテナ、モバイルアプリケーション、エッジデバイスでホストされているアプリケーションで使用できます。アプリケーション設定のデプロイ時のエラーを防ぐため、AppConfig にはバリデータが含まれています。バリデータは構文チェックまたはセマンティックチェックを実施して、デプロイする設定が意図したとおりに動作することを確認します。AppConfig は設定のデプロイ中、アプリケーションをモニタリングしてデプロイが正常に実施されたことを確認します。システムでエラーが発生した場合、またはデプロイによってアラームが呼び出された場合、AppConfig は変更をロールバックして、アプリケーションユーザーへの影響を最小限に抑えます。

パラメータストア

Parameter Store は、設定データ管理と機密管理のための安全な階層型ストレージを提供します。パスワード、データベース文字列、Amazon Elastic Compute Cloud (Amazon EC2)、Amazon Machine Image (AMI) ID、ライセンスコードなどのデータをパラメータ値として保存できます。値はプレーンテキストまたは暗号化されたデータとして保存できます。次に、パラメータの作成時に指定した一意の名前を使用して値を参照できます。

変更管理

Change Manager

Change Manager は、アプリケーションの設定やインフラストラクチャに対する運用上の変更を要求、承認、実装、レポート作成するためのエンタープライズ変更管理フレームワークです。AWS Organizations を使用すると、単一の委任された管理者アカウントから、複数の AWS リージョン の複数の AWS アカウント にまたがる変更を管理できます。または、ローカルアカウントを使用して、単一の AWS アカウント の変更を管理できます。AWSリソースとオンプレミスリソースの両方に対する変更を管理する場合に Change Manager を使用します。

Automation

メンテナンスとデプロイでの一般的なタスクを自動化するには、オートメーションを使用します。オートメーションを使用すると、Amazon Machine Images (AMIs) の作成と更新、ドライバーとエージェントの更新プログラムの適用、Windows Server インスタンスでのパスワードのリセット、Linux インスタンスでの SSH キーのリセット、OS パッチまたはアプリケーション更新プログラムの適用が可能になります。

Change Calendar

Change Calendar では、(Systems Manager Automation ランブックなどで) 指定したアクションを AWS アカウント で実行できる、または実行できない日時の範囲を設定できます。Change Calendar では、これらの範囲をイベントと呼びます。Change Calendar エントリを作成すると、ChangeCalendar タイプの Systems Manager ドキュメントが作成されます。Change Calendar では、ドキュメントに iCalendar 2.0 データがプレーンテキスト形式で保存されます。Change Calendar エントリに追加したイベントは、ドキュメントの一部になります。Change Calendar インターフェイスでイベントを手動で追加したり、.ics ファイルを使用して、サポートされているサードパーティーのカレンダーからイベントをインポートしたりできます。

メンテナンスウィンドウ

Maintenance Windows を使用して、ビジネスクリティカルなオペレーションを中断することなく、パッチや更新プログラムのインストールなどの管理タスクを実行するように、マネージドインスタンスの定期的なスケジュールを設定します。

ノード管理

マネージドノードとは、Systems Manager 用に設定されたあらゆるマシンのことです。Systems Manager は Amazon Elastic Compute Cloud (Amazon EC2) インスタンス、エッジデバイス、オンプレミスサーバー、仮想マシン (VM) (その他クラウド環境の VM を含む) をサポートしています。

Compliance

マネージドノードのフリートをスキャンし、パッチコンプライアンスと設定の整合性を検出するには、Compliance を使用します。複数の AWS アカウント と AWS リージョン からデータを収集して集計し、それに準拠していない特定のリソースにドリルダウンすることができます。デフォルトで、設定コンプライアンスは Patch Manager のパッチ適用、および State Manager の関連付けに関する現在のコンプライアンスデータを表示します。サービスをカスタマイズし、IT またはビジネスの要件に基づいて独自のコンプライアンスタイプを作成することもできます。

Fleet Manager

Fleet Manager は、統合されたユーザーインターフェイス (UI) エクスペリエンスであり、ノードをリモートから管理することに役たちます。Fleet Manager で 1 つのコンソールからフリート全体の正常性とパフォーマンスステータスを確認できます。個別のデバイスとインスタンスからデータを収集して、コンソールから一般的なトラブルシューティングと管理タスクを実行することもできます。これには、ディレクトリとファイルの内容の表示、Windows レジストリ管理、オペレーティングシステムのユーザー管理などが含まれます。

Inventory

インベントリは、マネージドノードからのソフトウェアインベントリの収集プロセスを自動化します。インベントリでアプリケーション、ファイル、コンポーネント、パッチなどに関するメタデータを収集できます。

セッションマネージャー

Session Manager により、インタラクティブなブラウザ ベースのワンクリックシェルまたは AWS CLI を介して、エッジデバイスと Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを管理できます。Session Manager は、インバウンドポートを開いたり、踏み台ホストを維持したり、SSH キーを管理したりする必要がなく、安全で監査可能なエッジデバイスとインスタンスの管理を実現します。同時に Session Manager では、エッジデバイスとインスタンスへ制御されたアクセス、厳格なセキュリティプラクティス、エッジデバイスとインスタンスへのアクセス詳細を含む完全に監査可能なログを必要とする企業ポリシーの尊守を可能にしつつ、エンドユーザーに対しては、エッジデバイスとEC2 インスタンスへのワンクリックによる簡単なクロス プラットフォームアクセスを提供します。Session Manager を使用する場合、アドバンストインスタンス層を有効にする必要があります。詳細については、「アドバンストインスタンス層を有効にするには」を参照してください。

Run Command

Run Command を使用すると、マネージドノードの設定を、安全にリモートで大規模に管理することができます。Run Command を使用して、数十または数百台のマネージドノードのターゲットセットに対して、アプリケーションの更新、または Linux シェルスクリプトと Windows PowerShell コマンドの実行といった変更をオンデマンドで行います。

ステートマネージャー

マネージドノードを定義された状態に維持するためのプロセスを自動化するには、State Manager を使用します。State Manager を使用してマネージドノードがスタートアップ時に特定のソフトウェアでブートストラップされ、Windows ドメイン (Windows Server ノードのみ) に結合され、または特定のソフトウェア更新でパッチが適用されることを保証します。

Patch Manager

Patch Manager を使用して、セキュリティ関連とその他のアップデートの両方でマネージドノードにパッチ適用するプロセスを自動化します。Patch Manager を使用すると、オペレーティングシステムとアプリケーションの両方にパッチを適用することができます。(Windows Server では、アプリケーションのサポートは、Microsoft がリリースしたアプリケーションの更新に制限されています)。

この機能はマネージドノードをスキャンして欠落パッチを確認し、タグを使用して個別またはマネージドノードの大グループに欠落パッチを適用することを実現します。Patch Manager はパッチベースラインを使用し、リリースから数日以内にパッチを自動承認するルールと、承認済と拒否済みパッチのリストが含まれています。Systems Manager のメンテナンスウィンドウ タスクとしてパッチを実行するようスケジュールすることにより、セキュリティパッチを定期的にインストールでき、またはいつでもオンデマンドでマネージドノードにパッチを適用できます。

Linux オペレーティングシステムの場合、パッチベースラインの一部として、パッチ適用オペレーションに使用するレポジトリを定義できます。これにより、マネージドノードで設定されたレポジトリとは関係なく、信頼されたレポジトリからのみ更新プログラムがインストールされることを保証します。Linux の場合、オペレーティングシステムのセキュリティ更新として分類されているものだけでなく、マネージドノードでどのようなパッケージでも更新する機能があります。任意の S3 バケットに送信されるパッチレポートを生成することもできます。1 つのマネージドノードの場合、レポートはマシンに適用されたすべてのパッチ詳細が含まれます。すべてのマネージドノードに関するレポートでは、欠けているパッチの数についての概要のみが提供されます。

ディストリビューター

Distributor により、デプロイパッケージを作成してマネージドノードに展開します。Distributor で、自分のソフトウェアをパッケージ化または AWS を提供するエージェントソフトウェアパッケージ (AmazonCloudWatchAgent など) を探して Systems Manager のマネージドノードにインストールすることができます。初めてパッケージをインストールした後、Distributor を使用して新しいパッケージバージョンのアンインストールと再インストールするか、新しいまたは変更されたファイルを追加するインプレース更新を実行できます。Distributor はソフトウェアパッケージなどのリソースを Systems Manager のマネージドノードに発行します。

Hybrid Activations

ハイブリッド環境のサーバーおよび VM をマネージドインスタンスとしてセットアップするには、マネージドインスタンスのアクティベーションを作成します。アクティベーションが完了したら、アクティベーションコードと ID を受け取ります。このコードと ID の組み合わせは Amazon Elastic Compute Cloud (Amazon EC2) のアクセス ID とシークレット キーのように機能し、マネージドインスタンスから Systems Manager サービスへの安全なアクセスを可能になります。

Systems Manager を使用してエッジデバイスを管理する場合、エッジデバイス用のアクティベーションを作成することもできます。

オペレーション管理

Incident Manager

Incident Manager は、AWS がホストするアプリケーションに影響を与えるインシデントを、ユーザーが緩和したりそのようなインシデントから復旧したりできるように設計された、インシデントマネジメントコンソールです。

Incident Manager は、影響をレスポンダーに通知し、関連するトラブルシューティングデータを強調表示し、サービスをバックアップして実行するためのコラボレーションツールを提供することで、インシデントの解決を向上させます。また、Incident Manager は応答計画を自動化して、応答者チームのエスカレーションも可能にします。

Explorer

Explorer は、AWS リソースに関する情報の報告に使用するカスタマイズ可能なオペレーションダッシュボードです。Explorer には、AWS アカウント および AWS リージョン 全体のオペレーションデータ (OpsData) の集約的なビューが表示されます。Explorer では、OpsData に Amazon EC2 インスタンス、パッチコンプライアンスの詳細、および運用作業項目 (OpsItems) に関するメタデータが含まれています。Explorer では、OpsItems が事業部門またはアプリケーション全体にどのように分散されているか、それらが時間の経過とともにどのような傾向を示すか、およびカテゴリによってどのように異なるかに関するコンテキストが提供されます。Explorer で情報をグループ化およびフィルタリングすると、自身に関連する項目や、アクションが必要な項目に注目することができます。優先度の高い問題を特定したら、Systems Manager の一機能である OpsCenter を使用して Automation ランブックを実行し、問題を解決できます。

OpsCenter

OpsCenter は、オペレーションエンジニアや IT プロフェッショナルが AWS リソースに関連する運用作業項目 (OpsItems) を表示、調査、解決できる一元的な場所を提供します。OpsCenter は、AWS リソースに影響を与える問題の解決までの平均時間を、短縮する目的で設計されています。この Systems Manager 機能では、各 OpsItem、関連のある OpsItems、および関連リソースに関する状況に応じた調査データを提供しながら、サービス間で OpsItems を集約および標準化します。また、OpsCenter では、問題の解決に使用できる Systems Manager Automation ランブックも提供しています。検索可能なカスタムデータを OpsItem ごとに指定することができます。OpsItems について自動的に生成された概要レポートは、ステータスとソース別に表示することもできます。

CloudWatch Dashboards

Amazon CloudWatch ダッシュボードは、CloudWatch コンソールにあるカスタマイズ可能なページであり、ダッシュボードを使用すれば、異なるリージョンにまたがっているリソースでも、1 つのビューでモニタリングできます。CloudWatch ダッシュボードを使用して、AWS リソースのメトリクスおよびアラームをカスタマイズした状態で表示することができます。

Quick Setup

Quick Setup により、頻繁に使用する AWS のサービスと機能を、推奨されるベストプラクティスを使用して設定できます。AWS Organizations との統合により、個々の AWS アカウント で、または複数の AWS アカウント と AWS リージョン にまたがって Quick Setup を使用できます。Quick Setup は、一般的なタスクや推奨されるタスクを自動化することで、Systems Manager などのサービスのセットアップを簡素化します。これらのタスクには、例えば、必須の AWS Identity and Access Management (IAM) インスタンスプロファイルロールの作成、定期的なパッチスキャンやインベントリ収集などの運用上のベストプラクティスの設定が含まれます。

共有リソース

Documents

Systems Manager ドキュメント (SSM ドキュメント) は、Systems Manager が実行する操作を定義します。SSM ドキュメントタイプには、State Manager と Run Command で使用される Command ドキュメントや、Systems Manager Automation で使用される Automation ランブックなどがあります。Systems Manager には、実行時にパラメータを指定して使用できる事前設定済みのドキュメントが 数十件含まれています。ドキュメントは JSON や YAML で表すことができ、ユーザーが指定するパラメータおよびステップが含まれます。

Systems Manager へのアクセス

Systems Manager は、次のいずれかの方法で使用できます。

Systems Manager コンソール

Systems Manager コンソールは、Systems Manager にアクセスして使用するための、ブラウザベースのインターフェイスです。

AWS IoT Greengrass V2 コンソール

Greengrass コンソールの AWS IoT Greengrass 用に設定されたエッジデバイスを確認と管理できます。

AWS コマンドラインツール

AWS コマンドラインツールを使用して、システムのコマンドラインでコマンドを発行することで、Systems Manager および他の AWS タスクを実行できます。これらのツールは Linux、macOS、および Windows でサポートされています。AWS Command Line Interface (AWS CLI) を使用した方が、コンソールを使用するよりも高速で便利です。コマンドラインツールは、AWS のタスクを実行するスクリプトを作成する場合に便利です。

AWS には、AWS Command Line InterfaceAWS Tools for Windows PowerShell という 2 セットのコマンドラインツールが用意されています。AWS CLI のインストールおよび使用の方法については、「AWS Command Line Interface ユーザーガイド」を参照してください。Tools for Windows PowerShell のインストールおよび使用の方法については、AWS Tools for Windows PowerShellユーザーガイドを参照してください。

注記

Windows Server インスタンスでは、特定の SSM ドキュメント (例: レガシー Windows PowerShell 3.0 ドキュメント) を実行するには、AWS-ApplyPatchBaseline 以降が必要です。Windows Server インスタンスが Windows Management Framework 3.0 以降を実行中であることを確認します。このフレームワークには、Windows PowerShell が含まれます。

AWS SDK

AWS には、さまざまなプログラミング言語およびプラットフォーム (JavaPythonRuby.NETiOS、Android、および など) のライブラリとサンプルコードで構成されたソフトウェア開発キット (SDK) が用意されています。SDK は、Systems Manager へのアクセス権をプログラムによって作成するのに役立ちます。AWS SDK のダウンロードやインストールなどの詳細については、「アマゾン ウェブ サービスのツール」を参照してください。

サポートされている AWS リージョン

Systems Manager は、アマゾン ウェブ サービス全般リファレンスの「Systems Manager サービスエンドポイント」に記載されている AWS リージョン で利用できます。Systems Manager 設定プロセスを開始する前に、使用する各 AWS リージョン でサービスが利用可能かどうか確認することをお勧めします。

ハイブリッド環境のオンプレミスサーバーと VM では、データセンターまたはコンピューティング環境に最も近いリージョンを選択することをお勧めします。

Systems Manager の料金

一部の Systems Manager の機能は有料です。詳細については、AWS Systems Manager 料金を参照してください。