ハイブリッドアクティベーションを作成して、Systems Manager にノードを登録する - AWS Systems Manager

ハイブリッドアクティベーションを作成して、Systems Manager にノードを登録する

Amazon Elastic Compute Cloud (EC2) インスタンス以外のマシンをハイブリッドおよびマルチクラウド環境のマネージドノードとしてセットアップするには、ハイブリッドアクティベーションを作成して適用します。アクティベーションが正常に完了すると、コンソールページの上部にアクティベーションコードとアクティベーション ID が直ちに表示されます。ハイブリッドおよびマルチクラウド環境で非 EC2 マシンに AWS Systems Manager SSM Agent をインストールする際に、このコードと ID の組み合わせを指定します。このコードと ID を使用することで、マネージドノードから Systems Manager サービスに安全にアクセスできます。

重要

アクティベーションの作成方法に応じて、Systems Manager はすぐにアクティベーションコードと ID をコンソールまたはコマンドウィンドウに返します。この情報をコピーして、安全な場所に保管します。コンソールから離れたり、コマンドウィンドウを閉じたりすると、この情報は失われる可能性があります。紛失した場合は、新しいアクティベーションを作成する必要があります。

アクティベーションの有効期限について

アクティベーションの有効期限は、オンプレミスのマシンを Systems Manager で登録できる時間帯です。アクティベーションの有効期限が切れても、Systems Manager に前もって登録したサーバーまたは VM に影響はありません。アクティベーションが期限切れになると、その特定のアクティベーションを使用して、複数のサーバーまたは VM を Systems Manager に登録することはできません。新しいものを作成する必要があるだけです。

前もって登録したすべてのオンプレミスサーバーおよび VM は、明示的に登録を解除するまで、Systems Manager のマネージドノードとして登録されたままになります。AWS CLI コマンド deregister-managed-instance または API コール DeregisterManagedInstance を使用して、Systems Manager コンソールから Fleet Manager の [マネージドノード] タブでマネージドノードの登録を解除できます。

マネージドノードについて

マネージドノードは AWS Systems Manager 用に設定されたすべてのマシンを指します。AWS Systems Manager は、Amazon Elastic Compute Cloud (Amazon EC2) インスタンス、エッジデバイス、オンプレミスサーバー、または VM (他のクラウド環境にある VM を含む) をサポートしています。以前は、マネージドノードはすべてマネージドインスタンスと呼ばれていました。現在、インスタンスとは EC2 インスタンスのみを指します。deregister-managed-instance コマンドは、この用語変更の前に命名されました。

アクティベーションタグについて

AWS Command Line Interface (AWS CLI) または AWS Tools for Windows PowerShell を使用してアクティベーションを作成する場合は、タグを指定できます。タグは、リソースに割り当てるオプションのメタデータです。タグを使用すると、目的、所有者、環境などのさまざまな方法でリソースを分類できます。ここでは、ローカル Linux マシンで実行する、オプションのタグを含む AWS CLI サンプルコマンドを示します。

aws ssm create-activation \ --default-instance-name MyWebServers \ --description "Activation for Finance department webservers" \ --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances \ --registration-limit 10 \ --region us-east-2 \ --tags "Key=Department,Value=Finance"

アクティベーションの作成時にタグを指定すると、それらのタグはアクティブ化する際に自動的にマネージドノードに割り当てられます。

既存のアクティベーションにタグを追加したり、既存のアクティベーションからタグを削除したりすることはできません。アクティベーションを使用してオンプレミスサーバーと VM に自動的にタグを割り当てない場合は、後でタグを追加できます。具体的には、オンプレミスサーバーと VM が初めて Systems Manager に接続した後にタグを付けることができます。接続すると、マネージドノード ID が割り当てられ、先頭に「mi-」が付いた ID で Systems Manager コンソールに表示されます。

注記

Systems Manager コンソールを使用してアクティベーションを作成した場合、アクティベーションにタグを割り当てることはできません。AWS CLI または Tools for Windows PowerShell のいずれかを使用してアクティベーションを作成する必要があります。

Systems Manager を使用してオンプレミスサーバーや仮想マシン (VM) を管理する必要がなくなった場合は、登録解除できます。詳細については、ハイブリッドおよびマルチクラウド環境でのマネージドノードの登録解除 を参照してください。

AWS Management Console を使用して、Systems Manager でマネージドノードを登録するためのアクティベーションを作成します。

マネージドノードのアクティベーションを作成するには
  1. AWS Systems Manager コンソール (https://console.aws.amazon.com/systems-manager/) を開きます。

  2. ナビゲーションペインで [ハイブリッドアクティベーション] を選択します。

  3. [Create activation] を選択します。

    -または-

    現在の AWS リージョン で [Hybrid Activations] (ハイブリッドアクティベーション) に初めてアクセスしている場合は、[Create an Activation] (アクティベーションの作成) を選択します。

  4. (オプション) [Activation description] (アクティベーションの説明) フィールドに、このアクティベーションの説明を入力します。多数のサーバーや VM を有効化する場合は、説明を入力することをお勧めします。

  5. [Instance limit] (インスタンス制限) で、このアクティベーションの一環として AWS に登録するノードの合計数を指定します。デフォルト値は 1 インスタンスです。

  6. [IAM role name] (IAM ロール) で、サーバーや VM とクラウド内の AWS Systems Manager との通信を可能にするサービスロールオプションを選択します。

    • オプション 1: AWS が提供するロールと管理ポリシーを使用するには、[Use the default role created by the system] (システムによって作成されたデフォルトのロールを使用する) を選択します。

    • オプション 2: 前に作成したオプションのカスタムロールを使用するには、[Select an existing custom IAM role that has the required permissions] (必要な許可を持つ既存のカスタム IAM ロールを選択する) を選択します。このロールには、"Service": "ssm.amazonaws.com" を指定する信頼関係ポリシーが必要です。IAM ロールが信頼関係ポリシーでこの原則を指定しない場合、次のエラーが発生します。

      An error occurred (ValidationException) when calling the CreateActivation
                                          operation: Not existing role: arn:aws:iam::<accountid>:role/SSMRole

      このロールの作成に関する詳細については、「ハイブリッドおよびマルチクラウド環境で Systems Manager に必要な IAM サービスロールを作成する」を参照してください。

  7. [Activation expiry date] (アクティベーションの有効期限日) で、アクティベーションの有効期限日を指定します。有効期限は将来の日付で、30 日以内でなければなりません。デフォルト値は 24 時間です。

    注記

    有効期限日後にマネージドノードを追加で登録するには、新しいアクティベーションを作成する必要があります。有効期限日は、登録済みで実行中のインスタンスには影響しません。

  8. (オプション) [Default instance name] (デフォルトのインスタンス名) フィールドで、このアクティベーションに関連付けられているすべてのマネージドノードに表示する識別名の値を指定します。

  9. [Create activation] を選択します。Systems Manager は、すぐにアクティベーションコードと ID をコンソールに返します。

コマンドラインを使用して、Systems Manager でマネージドノードを登録するためのアクティベーションを作成する

次の手順では、AWS Command Line Interface (AWS CLI) (Linux または Windows Server の場合) または AWS Tools for PowerShell を使用して、マネージドノードのアクティベーションを作成する方法について説明します。

アクティベーションを作成するには
  1. まだ AWS CLI または AWS Tools for PowerShell をインストールして設定していない場合は、インストールして設定します。

    詳細については、「AWS CLI の最新バージョンをインストールまたは更新します。」および「AWS Tools for PowerShell のインストール」を参照してください。

  2. アクティベーションを作成するには、次のコマンドを実行します。

    注記
    • 次のコマンドで、[Region] (リージョン) をユーザー自身の情報に置き換えます。サポートされている region 値の一覧については、「Amazon Web Services 全般のリファレンス」の「Systems Manager サービスエンドポイント」にある Region 列を参照してください。

    • iam-role パラメータに指定するロールには、"Service": "ssm.amazonaws.com" を指定する信頼関係ポリシーが必要です。AWS Identity and Access Management (IAM) ロールが信頼関係ポリシーでこの原則を指定しない場合、次のエラーが発生します。

      An error occurred (ValidationException) when calling the CreateActivation
                                              operation: Not existing role: arn:aws:iam::<accountid>:role/SSMRole

      このロールの作成に関する詳細については、「ハイブリッドおよびマルチクラウド環境で Systems Manager に必要な IAM サービスロールを作成する」を参照してください。

    • --expiration-date の場合、アクティベーションコードの有効期限が切れるときの日付を、"2021-07-07T00:00:00" などのタイムスタンプ形式で指定します。日付は 30 日を上限に事前に指定できます。有効期限を指定しない場合、アクティベーションコードは 24 時間で有効期限が切れます。

    Linux & macOS
    aws ssm create-activation \ --default-instance-name name \ --iam-role iam-service-role-name \ --registration-limit number-of-managed-instances \ --region region \ --expiration-date "timestamp" \\ --tags "Key=key-name-1,Value=key-value-1" "Key=key-name-2,Value=key-value-2"
    Windows
    aws ssm create-activation ^ --default-instance-name name ^ --iam-role iam-service-role-name ^ --registration-limit number-of-managed-instances ^ --region region ^ --expiration-date "timestamp" ^ --tags "Key=key-name-1,Value=key-value-1" "Key=key-name-2,Value=key-value-2"
    PowerShell
    New-SSMActivation -DefaultInstanceName name ` -IamRole iam-service-role-name ` -RegistrationLimit number-of-managed-instances ` –Region region ` -ExpirationDate "timestamp" ` -Tag @{"Key"="key-name-1";"Value"="key-value-1"},@{"Key"="key-name-2";"Value"="key-value-2"}

    以下はその例です。

    Linux & macOS
    aws ssm create-activation \ --default-instance-name MyWebServers \ --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances \ --registration-limit 10 \ --region us-east-2 \ --expiration-date "2021-07-07T00:00:00" \ --tags "Key=Environment,Value=Production" "Key=Department,Value=Finance"
    Windows
    aws ssm create-activation ^ --default-instance-name MyWebServers ^ --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances ^ --registration-limit 10 ^ --region us-east-2 ^ --expiration-date "2021-07-07T00:00:00" ^ --tags "Key=Environment,Value=Production" "Key=Department,Value=Finance"
    PowerShell
    New-SSMActivation -DefaultInstanceName MyWebServers ` -IamRole service-role/AmazonEC2RunCommandRoleForManagedInstances ` -RegistrationLimit 10 ` –Region us-east-2 ` -ExpirationDate "2021-07-07T00:00:00" ` -Tag @{"Key"="Environment";"Value"="Production"},@{"Key"="Department";"Value"="Finance"}

    アクティベーションが正常に完了するとすぐに、システムからアクティベーションコードとアクティベーション ID が返ります。