外部インスタンス上の AWS Systems Manager エージェントと Amazon ECS コンテナエージェントを更新する - Amazon Elastic Container Service

外部インスタンス上の AWS Systems Manager エージェントと Amazon ECS コンテナエージェントを更新する

オンプレミスのサーバーまたは VM で、AWS Systems Managerエージェント(SSM Agent)と Amazon ECS コンテナエージェント(Amazon ECS ワークロードの実行時)AWSは、機能が追加または更新されたときに、これらのエージェントの新しいバージョンをリリースします。外部インスタンスがいずれかのエージェントの以前のバージョンを使用している場合は、次の手順を使用して更新できます。

外部インスタンスでの SSM Agent の更新

AWS Systems Managerインスタンスで SSM Agent を更新するプロセスを自動化することをお勧めします。これらは、更新を自動化するためのいくつかの方法を提供します。詳細については、AWS Systems Managerユーザーガイドの「SSM Agent の更新を自動化する」を参照してください。

外部インスタンス上の Amazon ECS エージェントを更新しています

外部インスタンスでは、Amazon ECS コンテナエージェントはecs-initパッケージをアップグレードすることで更新されます。Amazon ECS エージェントを更新しても、実行中のタスクやサービスが中断されることはありません。Amazon ECS がecs-initパッケージと署名ファイルを、各リージョンの Amazon S3 バケットに作成します。ecs-initから始まるバージョン1.52.1-1では、Amazon ECS は、外部インスタンスが使用するオペレーティングシステムとシステムアーキテクチャに応じて個別の ecs-init パッケージを提供します。

以下の表を使用して、ecs-initパッケージは、外部インスタンスが使用するオペレーティングシステムとシステムアーキテクチャに基づいてダウンロードする必要があります。

注記

次のコマンドを使用して、外部インスタンスが使用するオペレーティングシステムおよびシステムアーキテクチャを決定できます。

cat /etc/os-release uname -m
オペレーティングシステム (アーキテクチャ) ecs-init パッケージ

CentOS 7 (x86-64)

CentOS 8 (x86_64)

CentOS Stream 9 (x86_64)

SUSE Enterprise Server 15 (x86_64)

RHEL 7 (x86_64)

RHEL 8 (x86_64)

amazon-ecs-init-latest.x86_64.rpm

CentOS 7 (aarch64)

CentOS 8 (aarch64)

CentOS Stream 9 (aarch64)

RHEL 7 (aarch64)

amazon-ecs-init-latest.aarch64.rpm

Debian 9 (x86_64)

Debian 10 (x86_64)

Debian 11 (x86_64)

Debian 12 (x86_64)

Ubuntu 18 (x86_64)

Ubuntu 20 (x86_64)

Ubuntu 22 (x86_64)

Ubuntu 24 (x86_64)

amazon-ecs-init-latest.amd64.deb

Debian 9 (aarch64)

Debian 10 (aarch64)

Debian 11 (aarch64)

Debian 12 (aarch64)

Ubuntu 18 (aarch64)

Ubuntu 20 (aarch64)

Ubuntu 22 (aarch64)

Ubuntu 24 (aarch64)

amazon-ecs-init-latest.arm64.deb

Amazon ECS エージェントを更新するには、以下の手順に従います。

Amazon ECS エージェントを更新するには
  1. 実行している Amazon ECS エージェントのバージョンを確認します。

    curl -s 127.0.0.1:51678/v1/metadata | python3 -mjson.tool
  2. オペレーティングシステムとシステムアーキテクチャー用のecs-initパッケージをダウンロードします。Amazon ECS がecs-initパッケージファイルを、各リージョンの Amazon S3 バケットに作成します。置き換えることを確認します。<region>コマンド内の識別子を、地理的に最も近いリージョン名 (例:us-west-2)に置き換えることを確認します。

    amazon-ecs-init-latest.x86_64.rpm

    curl -o amazon-ecs-init.rpm https://s3.<region>.amazonaws.com/amazon-ecs-agent-<region>/amazon-ecs-init-latest.x86_64.rpm

    amazon-ecs-init-latest.aarch64.rpm

    curl -o amazon-ecs-init.rpm https://s3.<region>.amazonaws.com/amazon-ecs-agent-<region>/amazon-ecs-init-latest.aarch64.rpm

    amazon-ecs-init-latest.amd64.deb

    curl -o amazon-ecs-init.deb https://s3.<region>.amazonaws.com/amazon-ecs-agent-<region>/amazon-ecs-init-latest.amd64.deb

    amazon-ecs-init-latest.arm64.deb

    curl -o amazon-ecs-init.deb https://s3.<region>.amazonaws.com/amazon-ecs-agent-<region>/amazon-ecs-init-latest.arm64.deb
  3. (オプション) PGP 署名を使用して、ecs-initパッケージファイルの妥当性を検証します。

    1. GnuPG をダウンロードし、インストールします。GNUpg の詳細については、「GnuPG ウェブサイト」を参照してください。Linux システムの場合は、お使いの Linux ディストリビューションでパッケージマネージャーを使用して gpg をインストールします。

    2. Amazon ECS PGP パブリックキーを取得します。

      gpg --keyserver hkp://keys.gnupg.net:80 --recv BCE9D9A42D51784F
    3. ecs-init パッケージ署名ファイルをダウンロードします。署名は、ASCII でデタッチ済みの PGP 署名で、拡張子が .asc のファイルに保存されています。Amazon ECS は、各リージョンの Amazon S3 バケットに署名ファイルを提供します。置き換えることを確認します。<region>コマンド内の識別子を、地理的に最も近いリージョン名 (例:us-west-2)に置き換えることを確認します。

      amazon-ecs-init-latest.x86_64.rpm

      curl -o amazon-ecs-init.rpm.asc https://s3.<region>.amazonaws.com/amazon-ecs-agent-<region>/amazon-ecs-init-latest.x86_64.rpm.asc

      amazon-ecs-init-latest.aarch64.rpm

      curl -o amazon-ecs-init.rpm.asc https://s3.<region>.amazonaws.com/amazon-ecs-agent-<region>/amazon-ecs-init-latest.aarch64.rpm.asc

      amazon-ecs-init-latest.amd64.deb

      curl -o amazon-ecs-init.deb.asc https://s3.<region>.amazonaws.com/amazon-ecs-agent-<region>/amazon-ecs-init-latest.amd64.deb.asc

      amazon-ecs-init-latest.arm64.deb

      curl -o amazon-ecs-init.deb.asc https://s3.<region>.amazonaws.com/amazon-ecs-agent-<region>/amazon-ecs-init-latest.arm64.deb.asc
    4. キーを使用してecs-initパッケージファイルを検証します。

      rpmパッケージ向け

      gpg --verify amazon-ecs-init.rpm.asc ./amazon-ecs-init.rpm

      debパッケージ向け

      gpg --verify amazon-ecs-init.deb.asc ./amazon-ecs-init.deb

      予想される出力は次のようになります。

      gpg: Signature made Fri 14 May 2021 09:31:36 PM UTC gpg: using RSA key 50DECCC4710E61AF gpg: Good signature from "Amazon ECS <ecs-security@amazon.com>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: F34C 3DDA E729 26B0 79BE AEC6 BCE9 D9A4 2D51 784F Subkey fingerprint: D64B B6F9 0CF3 77E9 B5FB 346F 50DE CCC4 710E 61AF
  4. ecs-init パッケージをインストールします。

    rpmパッケージ向けは、CentOS 7、CentOS 8、および RHEL 7 に搭載されています。

    sudo yum install -y ./amazon-ecs-init.rpm

    SUSE Enterprise Server 15 のrpmパッケージ向け

    sudo zypper install -y --allow-unsigned-rpm ./amazon-ecs-init.rpm

    debパッケージ向け

    sudo dpkg -i ./amazon-ecs-init.deb
  5. ecs サービスを再起動します。

    sudo systemctl restart ecs
  6. Amazon ECS エージェントのバージョンが更新されたことを確認します。

    curl -s 127.0.0.1:51678/v1/metadata | python3 -mjson.tool