

• AWS Systems Manager CloudWatch ダッシュボードは、2026 年 4 月 30 日以降は利用できなくなります。お客様は、これまでと同様に Amazon CloudWatch コンソールを使用して、Amazon CloudWatch ダッシュボードの表示、作成、管理を継続できます。詳細については、「[Amazon CloudWatch ダッシュボードのドキュメント](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)」を参照してください。

# Systems Manager を利用したエッジデバイスの管理
<a name="systems-manager-setting-up-edge-devices"></a>

このセクションでは、アカウント管理者とシステム管理者が AWS IoT Greengrass コアデバイスの設定と管理を有効にするために実行する設定タスクについて説明します。これらのタスクを完了すると、AWS アカウント 管理者によって権限が付与されたユーザーは AWS Systems Manager を使って組織の AWS IoT Greengrass コアデバイスを設定と管理することができます。

**注記**  
AWS IoT Greengrass 用の SSM Agent は macOS と Windows 10 にサポートされていません。Systems Manager のツールを使用して、これらのオペレーティングシステムを使用するエッジデバイスの管理と設定を行うことはできません。
Systems Manager は、AWS IoT Greengrass コアデバイスとして設定されていないエッジデバイスもサポートしています。Systems Manager を使用して AWS IoT コアデバイスおよび非 AWS エッジデバイスを管理する場合、ハイブリッドアクティベーションを使用して設定する必要があります。詳細については、「[Systems Manager を利用したハイブリッド環境およびマルチクラウド環境でのノードの管理](systems-manager-hybrid-multicloud.md)」を参照してください。
Session Manager と Microsoft アプリケーションパッチをエッジデバイスと使用する場合、アドバンストインスタンス層を有効にする必要があります。詳細については、「[アドバンストインスタンス層を有効にするには](fleet-manager-enable-advanced-instances-tier.md)」を参照してください。

**[開始する前に]**  
エッジデバイスが以下の要件を満たしていることを確認します。
+ エッジデバイスを AWS IoT Greengrass コアデバイスとして設定する場合、要件を満たしている必要があります。詳細については、*AWS IoT Greengrass Version 2 デベロッパーガイド*の「[AWS IoT Greengrass コアデバイスの設定](https://docs.aws.amazon.com/greengrass/v2/developerguide/setting-up.html)」を参照してください。
+ エッジデバイスは AWS Systems Manager エージェント (SSM Agent) と互換性がなければなりません。詳細については、「[System Manager でサポートされているオペレーティングシステム](operating-systems-and-machine-types.md#prereqs-operating-systems)」を参照してください。
+ エッジデバイスはクラウド内の Systems Manager サービスと通信できる必要があります。Systems Manager は切断されたエッジデバイスをサポートしていません。

**エッジデバイスのセットアップについて**  
Systems Manager 用に AWS IoT Greengrass デバイスの設定には以下のプロセスが含まれます。

**注記**  
エッジデバイスからの SSM Agent のアンインストールの詳細については、*AWS IoT Greengrass Version 2 デベロッパーガイド*の「[Uninstall the AWS Systems Manager Agent](https://docs.aws.amazon.com/greengrass/v2/developerguide/uninstall-systems-manager-agent.html)」を参照してください。

## エッジデバイス用の IAM サービスロールを作成
<a name="systems-manager-setting-up-edge-devices-service-role"></a>

AWS IoT Greengrass コアデバイスは AWS Systems Manager と通信するため、AWS Identity and Access Management (IAM) サービスロールが必要となります。ロールは、Systems Manager サービスに AWS Security Token Service (AWS STS) [https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) の信頼を付与します。サービスロールの作成は AWS アカウント ごとに一度のみ行う必要があります。AWS IoT Greengrass デバイスに SSM Agent のコンポーネントを設定と展開する際、このロールは `RegistrationRole` のパラメータに指定します。[ハイブリッドおよびマルチクラウド](operating-systems-and-machine-types.md#supported-machine-types)環境用に非 EC2 ノードをセットアップするときにこのロールを既に作成している場合は、この手順をスキップできます。

**注記**  
エッジデバイスで Systems Manager を社内または組織内で使用するユーザーは、Systems Manager API を呼び出すために IAM で許可を付与する必要があります。

**S3 バケットのポリシーの要件**  
次のいずれかのケースに当てはまる場合は、この手順を実行する前に Amazon Simple Storage Service (Amazon S3) バケット用のカスタム IAM アクセス許可ポリシーを作成する必要があります。
+ **ケース 1**: VPC エンドポイントを使用して、サポートされている AWS のサービス、および AWS PrivateLink を搭載した VPC エンドポイントサービスに VPC をプライベート接続しています。
+ **ケース 2**: Systems Manager オペレーションの一環として作成した S3 バケットを使用します (例: Run Command コマンドまたは、Session Manager セッションの出力を S3 バケットに保存)。先に進む前に、「[インスタンスプロファイル用のカスタム S3 バケットポリシーを作成する](setup-instance-permissions.md#instance-profile-custom-s3-policy)」の手順に従います。そのトピックの S3 バケットポリシーに関する情報は、サービスロールにも適用されます。
**注記**  
デバイスがファイアウォールで保護され、かつ Patch Manager を使用する場合、ファイアウォールはパッチベースラインのエンドポイント `arn:aws:s3:::patch-baseline-snapshot-region/*` へアクセスを許可する必要があります。  
*region* は、米国東部 (オハイオ) リージョンの `us-east-2` のように、AWS Systems Manager でサポートされている AWS リージョン の識別子を表します。サポートされている*リージョン*値のリストについては、「*Amazon Web Services 全般のリファレンス*」の「[Systems Manager サービスエンドポイント](https://docs.aws.amazon.com/general/latest/gr/ssm.html#ssm_region)」にある**リージョン**列を参照してください。

------
#### [ AWS CLI ]

**AWS IoT Greengrass 環境用 (AWS CLI) に IAM サービスロールを作成する方法**

1. まだ AWS Command Line Interface (AWS CLI) をインストールして設定していない場合は、インストールして設定します。

   詳細については、「[AWS CLI の最新バージョンをインストールまたは更新します。](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)」を参照してください。

1. ローカルマシンで以下の信頼ポリシーを使用して、`SSMService-Trust.json` のような名前でテキストファイルを作成します。ファイル保存時に、必ずファイル拡張子 (`.json`) を付けます。
**注記**  
名前をメモします。SSM Agent を AWS IoT Greengrass コアデバイスに展開する際にそれを指定します。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": {
           "Effect": "Allow",
           "Principal": {
               "Service": "ssm.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
       }
   }
   ```

------

1. AWS CLI を開き、JSON ファイルを作成したディレクトリで [create-role](https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html) コマンドを実行してサービスロールを作成します。各*リソースプレースホルダーの例*をユーザー自身の情報に置き換えます。

   **Linux と macOS**

   ```
   aws iam create-role \
       --role-name SSMServiceRole \
       --assume-role-policy-document file://SSMService-Trust.json
   ```

   **Windows**

   ```
   aws iam create-role ^
       --role-name SSMServiceRole ^
       --assume-role-policy-document file://SSMService-Trust.json
   ```

1. 以下のように [attach-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html) を実行して、先ほど作成したサービスロールでセッショントークンを作成できるようにします。セッショントークンは、Systems Manager を使用してコマンドを実行するため、エッジデバイスに許可を付与します。
**注記**  
エッジデバイスに対してサービスプロファイル用に追加するポリシーは、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスのインスタンスプロファイルの作成に使用されるものと同じポリシーです。次のコマンドで使用する IAM ポリシーの詳細については、「[Systems Manager に必要なインスタンスのアクセス許可を設定する](setup-instance-permissions.md)」を参照してください。

   (必須) 以下のコマンドを実行して、エッジデバイスが AWS Systems Manager サービスの主要機能を使用できるようにします。

   **Linux と macOS**

   ```
   aws iam attach-role-policy \
       --role-name SSMServiceRole \
       --policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore
   ```

   **Windows**

   ```
   aws iam attach-role-policy ^
       --role-name SSMServiceRole ^
       --policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore
   ```

   サービスロールのカスタム S3 バケットポリシーを作成した場合は、次のコマンドを実行して、ポリシーで指定したバケットに AWS Systems Manager Agent (SSM Agent) がアクセスできるようにします。*account\$1ID* と *my\$1bucket\$1policy\$1name* をユーザーの AWS アカウント ID とバケット名に置き換えます。

   **Linux と macOS**

   ```
   aws iam attach-role-policy \
       --role-name SSMServiceRole \
       --policy-arn arn:aws:iam::account_ID:policy/my_bucket_policy_name
   ```

   **Windows**

   ```
   aws iam attach-role-policy ^
       --role-name SSMServiceRole ^
       --policy-arn arn:aws:iam::account_id:policy/my_bucket_policy_name
   ```

   (選択可) 以下のコマンドを実行して、エッジデバイスからドメインの統合するリクエストのため、ユーザーに代わって SSM Agent が Directory Service にアクセスできるようにします。エッジデバイスを Microsoft AD ディレクトリに統合する場合のみ、サービスロールはこのポリシーが必要です。

   **Linux と macOS**

   ```
   aws iam attach-role-policy \
       --role-name SSMServiceRole \
       --policy-arn arn:aws:iam::aws:policy/AmazonSSMDirectoryServiceAccess
   ```

   **Windows**

   ```
   aws iam attach-role-policy ^
       --role-name SSMServiceRole ^
       --policy-arn arn:aws:iam::aws:policy/AmazonSSMDirectoryServiceAccess
   ```

   (選択可) 以下のコマンドを実行して、CloudWatch エージェントがエッジデバイスの実行できるようにします。このコマンドはデバイスの情報を読み込んでCloudWatch に書き込むことを可能にします。サービスロールは、Amazon EventBridge や Amazon CloudWatch Logs などのサービスを利用する場合にのみ、このポリシーが必要です。

   ```
   aws iam attach-role-policy \
       --role-name SSMServiceRole \
       --policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy
   ```

------
#### [ Tools for PowerShell ]

**AWS IoT Greengrass 環境用 (AWS Tools for Windows PowerShell) に IAM サービスロールを作成する方法**

1. AWS Tools for PowerShell (Tools for Windows PowerShell) をインストールして設定します (まだインストールしていない場合)。

   詳細については、「[AWS Tools for PowerShell のインストール](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html)」を参照してください。

1. ローカルマシンで以下の信頼ポリシーを使用して、`SSMService-Trust.json` のような名前でテキストファイルを作成します。ファイル保存時に、必ずファイル拡張子 (`.json`) を付けます。
**注記**  
名前をメモします。SSM Agent を AWS IoT Greengrass コアデバイスに展開する際にそれを指定します。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": {
           "Effect": "Allow",
           "Principal": {
               "Service": "ssm.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
       }
   }
   ```

------

1. PowerShell を管理モードで開き、JSON ファイルを作成したディレクトリで以下のように [New-IAMRole](https://docs.aws.amazon.com//powershell/latest/reference/items/Register-IAMRolePolicy.html) を実行してサービスロールを作成します。

   ```
   New-IAMRole `
       -RoleName SSMServiceRole `
       -AssumeRolePolicyDocument (Get-Content -raw SSMService-Trust.json)
   ```

1. 以下のように、[Register-IAMRolePolicy](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-IAMRolePolicy.html) を使用して、作成したサービスロールでセッショントークンを作成できます。セッショントークンは、Systems Manager を使用してコマンドを実行するため、エッジデバイスに許可を付与します。
**注記**  
AWS IoT Greengrass 環境内でエッジデバイスに対してサービスロール用に追加するポリシーは、EC2 インスタンスのインスタンスプロファイルの作成に使用されるものと同じポリシーです。以下のコマンドで使用する AWS ポリシーの詳細については、「[Systems Manager に必要なインスタンスのアクセス許可を設定する](setup-instance-permissions.md)」を参照してください。

   (必須) 以下のコマンドを実行して、エッジデバイスが AWS Systems Manager サービスの主要機能を使用できるようにします。

   ```
   Register-IAMRolePolicy `
       -RoleName SSMServiceRole `
       -PolicyArn arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore
   ```

   サービスロールのカスタム S3 バケットポリシーを作成した場合は、次のコマンドを実行し、ポリシーで指定したバケットに SSM Agent がアクセスできるようにします。*account\$1ID* と *my\$1bucket\$1policy\$1name* をユーザーの AWS アカウント ID とバケット名に置き換えます。

   ```
   Register-IAMRolePolicy `
       -RoleName SSMServiceRole `
       -PolicyArn arn:aws:iam::account_ID:policy/my_bucket_policy_name
   ```

   (選択可) 以下のコマンドを実行して、エッジデバイスからドメインの統合するリクエストのため、ユーザーに代わって SSM Agent が Directory Service にアクセスできるようにします。エッジデバイスを Microsoft AD ディレクトリに統合する場合のみ、サービスロールはこのポリシーが必要です。

   ```
   Register-IAMRolePolicy `
       -RoleName SSMServiceRole `
       -PolicyArn arn:aws:iam::aws:policy/AmazonSSMDirectoryServiceAccess
   ```

   (選択可) 以下のコマンドを実行して、CloudWatch エージェントがエッジデバイスの実行できるようにします。このコマンドはデバイスの情報を読み込んでCloudWatch に書き込むことを可能にします。サービスロールは、Amazon EventBridge や Amazon CloudWatch Logs などのサービスを利用する場合にのみ、このポリシーが必要です。

   ```
   Register-IAMRolePolicy `
       -RoleName SSMServiceRole `
       -PolicyArn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy
   ```

------

## AWS IoT Greengrass のためにエッジデバイスを設定する
<a name="systems-manager-edge-devices-set-up-greengrass"></a>

エッジデバイスを AWS IoT Greengrass コアデバイスとしてセットアップします。セットアッププロセスは、サポートされたオペレーティングシステムとシステム要件の確認、並びにデバイス上に AWS IoT Greengrass コアソフトウェアのインストールと設定が含まれます。詳細については、AWS IoT Greengrass Version 2 デベロッパーガイドの「[AWS IoT Greengrass コアデバイスの設定](https://docs.aws.amazon.com/greengrass/v2/developerguide/setting-up.html)」を参照してください。

## AWS IoT Greengrass トークン交換ロールを更新して SSM Agent をエッジデバイスにインストールします。
<a name="systems-manager-edge-devices-install-SSM-agent"></a>

Systems Manager 用に AWS IoT Greengrass コアデバイスのセットアップと設定における最終ステップでは、AWS IoT Greengrass AWS Identity and Access Management (IAM) デバイスサービスロール (*トークン交換ロール*とも呼ばれる) を更新して、AWS Systems Manager エージェント (SSM Agent) を AWS IoT Greengrass デバイスにデプロイする必要があります。これらのプロセスの詳細については、AWS IoT Greengrass Version 2 デベロッパーガイドの「[AWS Systems Manager エージェントのインストール](https://docs.aws.amazon.com/greengrass/v2/developerguide/install-systems-manager-agent.html)」を参照してください。

デバイスに SSM Agent を展開したら、AWS IoT Greengrass はデバイスを自動的に Systems Manager に登録します。追加登録は必要ありません。Systems Manager のツールを使って、AWS IoT Greengrass デバイスへのアクセスやその管理、設定を行うことができます。

**注記**  
エッジデバイスはクラウド内の Systems Manager サービスと通信できる必要があります。Systems Manager は切断されたエッジデバイスをサポートしていません。