コンソールを使用した Amazon ECS タスク定義の作成 - Amazon Elastic Container Service

コンソールを使用した Amazon ECS タスク定義の作成

タスク定義は、コンソールを使用するか、JSON ファイルを編集して作成できます。

JSON 検証

Amazon ECS コンソールの JSON エディタは、JSON ファイル内で以下を検証します。

  • ファイルが有効な JSON ファイルであること。

  • ファイルに外部キーが含まれていないこと。

  • ファイルに familyName パラメータが含まれていること。

  • containerDefinitions の下に少なくとも 1 つのエントリがあること。

AWS CloudFormation スタック

次の動作は、2023 年 1 月 12 日以前に新しい Amazon ECS コンソールで作成されたタスク定義に適用されます。

タスク定義の作成時、Amazon ECS コンソールは、名前が ECS-Console-V2-TaskDefinition- で始まる CloudFormation スタックを自動的に作成します。AWS CLI または AWS SDK を使用してタスク定義を登録解除した場合は、手動でタスク定義スタックを削除する必要があります。詳細については、「AWS CloudFormation ユーザーガイド」の「スタックの削除」を参照してください。

2023 年 1 月 12 日以降に作成されたタスク定義では、CloudFormation スタックの自動的な作成は行われません。

手順

Amazon ECS console
  1. コンソール (https://console.aws.amazon.com/ecs/v2) を開きます。

  2. ナビゲーションペインで、タスクの定義 を選択します。

  3. [新しいタスク定義の作成] メニューで、[新しいタスク定義を作成する] を選択します。

  4. [Task definition family] (タスク定義ファミリー) を使用する場合、タスク定義ファミリーには、タスク定義に一意の名前を指定します。

  5. [起動タイプ] で、アプリケーション環境を選択します。コンソールのデフォルトは、AWS Fargate (サーバーレス) です。Amazon ECS は、この値を使用して検証を実行し、タスク定義パラメータがインフラストラクチャタイプに対して有効であることを確認します。

  6. [Operating system/Architecture] (オペレーティングシステム/アーキテクチャ) を使用する場合、タスクのオペレーティングシステムと CPU アーキテクチャを選択します。

    タスクを 64 ビット ARM アーキテクチャで実行するには、[Linux/ARM64] を選択します。詳細については、「ランタイムプラットフォーム」を参照してください。

    Windows コンテナで AWS Fargate タスクを実行するには、サポートされている Windows オペレーティングシステムを選択します。詳細については、「オペレーティングシステムとアーキテクチャ」を参照してください。

  7. [Task size] (タスクサイズ) では、タスク用に予約する CPU とメモリの値を選択します。CPU 値は vCPUs として指定され、メモリは GB として指定されます。

    Fargate でホストされるタスクの場合、次の表に有効な CPU とメモリの組み合わせを示します。

    CPU の値 メモリの値 AWS Fargate でサポートされるオペレーティングシステム
    256 (.25 vCPU) 512 MiB、1 GB、2 GB Linux
    512 (.5 vCPU) 1 GB、2 GB、3 GB、4 GB Linux
    1,024 (1 vCPU) 2 GB、3 GB、4 GB、5 GB、6 GB、7 GB、8 GB Linux、Windows
    2,048 (2 vCPU) 4 GB ~ 16 GB (1 GB のインクリメント) Linux、Windows
    4,096 (4 vCPU) 8 GB ~ 30 GB (1 GB のインクリメント) Linux、Windows
    8192 (8 vCPU)
    注記

    このオプションには Linux プラットフォーム 1.4.0 以降が必要です。

    16 GB~60 GB (4 GB のインクリメント) Linux
    16384 (16vCPU)
    注記

    このオプションには Linux プラットフォーム 1.4.0 以降が必要です。

    32 GB~120 GB (8 GB のインクリメント) Linux

    Amazon EC2 でホストされているタスクの場合、サポートされているタスクの CPU 値は 128 CPU ユニット (0.125 vCPU) ~ 10240 CPU ユニット (10 vCPU) です。メモリ値を GB 単位で指定するには、数字に続けて [GB] と入力します。たとえば、[メモリ値] を 3 GB に設定するには、[3GB] と入力します。

    注記

    タスクレベル CPU およびメモリのパラメータは Windows コンテナでは無視されます。

  8. [Network mode] (ネットワークモード) の場合、使用するネットワークモードを選択します。デフォルトは、awsvpc モードです。詳細については、Amazon ECS タスクネットワーキングを参照してください。

    [ポートマッピング] で、[ホストポート][ブリッジ] を選択した場合は、コンテナ用に予約するコンテナインスタンスのポート番号を入力します。

  9. (オプション) [タスクロール] セクションを展開してタスク向け AWS Identity and Access Management (IAM) ロールを設定できます。

    1. [Task role] (タスクロール) では、タスクに割り当てる IAM ロールを選択します。タスク IAM ロールは、タスク内のコンテナが AWS API 操作を呼び出すアクセス許可を提供します。

    2. [タスク実行ロール] で、ロールを選択します。

      タスク実行ロールをいつ使用するかの詳細については、「Amazon ECS タスク実行IAM ロール」を参照してください。ロールが不要な場合は、[なし] を選択します。

  10. タスク定義で定義するコンテナごとに、以下のステップを実行します。

    1. [Name] (名前) に、コンテナの名前を入力します。

    2. [Image URI] (イメージ URI) には、コンテナの開始に使用するイメージを指定します。Amazon ECR Public Gallery レジストリ内のイメージは、Amazon ECR Public レジストリ名の使用でのみ指定することができます。例えば、public.ecr.aws/ecs/amazon-ecs-agent:latest が指定されている場合は、Amazon ECR Public Gallery でホストされている Amazon Linux コンテナが使用されます。他のすべてのリポジトリの場合は、repository-url/image:tag または repository-url/image@digest の形式を使用してリポジトリを指定します。

    3. イメージが Amazon ECR の外部のプライベートレジストリにある場合は、[プライベートレジストリ][プライベートレジストリ認証] をオンにします。その後、[Secrets Manager ARN または名前] で、シークレットの Amazon リソースネーム (ARN) を入力します。

    4. [基本コンテナ] の場合、もしタスク定義に 2 つ以上のコンテナが定義されていれば、そのコンテナを基本と見なすかどうかを指定できます。コンテナが [基本] とマークされている場合は、そのコンテナが停止するとタスクは停止します。各タスク定義には、少なくとも 1 つの基本コンテナを含む必要があります。

    5. ポートマッピングにより、コンテナはホスト上のポートにアクセスしてトラフィックを送受信できるようになります。[Port mappings] (ポートマッピング) で、次のいずれかを実行]ます。

      • [awsvpc] ネットワークモードを使用する場合、[Container port] (コンテナポート) と [Protocol] (プロトコル) で、コンテナに使用するポートマッピングを選択します。

      • [bridge] ネットワークモードを使用する場合、[Container port] (コンテナポート) と [Protocol] (プロトコル) で、コンテナに使用するポートマッピングを選択します。

      追加のコンテナポートマッピングを指定するには、[Add more port mappings] (ポートマッピングを追加) を選択します。

    6. コンテナにルート ファイル システムへの読み取り専用アクセスを付与するには、[読み取り専用ルートファイルシステム] で [読み取り専用] を選択します。

    7. (オプション) [リソース割り当て制限] のタスクレベルの値とは異なるコンテナ レベルの CPU、GPU、およびメモリの制限を定義するには、次の手順を実行します。

      • [CPU] には、Amazon ECS コンテナエージェントがそのコンテナ用に予約している CPU ユニット数を入力します。

      • [GPU] では、コンテナインスタンス用の GPU ユニット数を入力します。

        GPU サポートを使用する Amazon EC2 インスタンスには、各 GPU について 1 つの GPU ユニットが装備されます。詳細については、「GPU ワークロード向けの Amazon ECS タスク定義」を参照してください。

      • [メモリのハード制限] には、コンテナに提供するメモリの量を GB 単位で入力します。コンテナがハード制限を超えようとすると、コンテナは停止します。

      • Docker 20.10.0 以降のデーモンではコンテナ用に最低 6 MiB のメモリを予約するため、コンテナ用に 6 MiB 未満のメモリを指定しないでください。

        Docker 19.03.13-ce 以前のデーモンではコンテナ用に最低 4 MiB のメモリを予約するため、コンテナ用に 4 MiB 未満のメモリを指定しないでください。

      • [メモリのソフト制限] に、コンテナに予約するメモリのソフト制限 (GB 単位) を入力します。

        システムメモリに競合がある場合、Docker はコンテナのメモリ量をこのソフト制限値内に維持しようとします。タスクレベルのメモリを指定しない場合は、[メモリのハード制限] と [メモリのソフト制限] の一方または両方にゼロ以外の整数を指定する必要があります。両方を指定する場合は、[メモリのハード制限] がメモリの [ソフト制限] より大きい必要があります。

        この機能は Windows コンテナではサポートされません。

    8. (オプション) [環境変数] セクションを展開し、コンテナに挿入する環境変数を指定します。環境変数は、キー値ペアを使用して個別に指定するか、Amazon S3 バケットでホストされている環境変数ファイルを指定して一括で指定できます。環境変数ファイルのフォーマット方法については、「個々の環境変数を Amazon ECS コンテナに渡す」を参照してください。

      シークレットストレージの環境変数を指定するときは、[キー] にシークレット名を入力します。次に、[ValueFrom] に、Systems Manager パラメータストアシークレットまたは Secrets Manager シークレットの完全な ARN を入力します。

    9. (オプション) [Use log collection] (ログコレクションを使用) を選択し、ログ構成を指定します。使用可能なログドライバーごとに、指定するログドライバーオプションがあります。デフォルトのオプションでは、コンテナログを Amazon CloudWatch Logs に送信します。その他のログドライバーオプションは、AWS FireLens を使用して設定されます。詳細については、「Amazon ECS ログを AWS サービスまたは AWS Partner に送信する」を参照してください。

      以下では、各コンテナログの送信先について詳しく説明します。

      • Amazon CloudWatch — コンテナログを CloudWatch Logs に送信するようにタスクを設定します。デフォルトのログドライバーオプションが提供され、ユーザーに代わり CloudWatch ロググループを作成します。別のロググループ名を指定するには、ドライバーオプションの値を変更します。

      • Splunk へのログのエクスポート — リモートサービスにログを送信する Splunk ドライバーにコンテナログを送信するタスクを設定します。Splunk Web サービスの URL を入力する必要があります。Splunk トークンは機密データとして扱われる可能性があるため、シークレットのオプションとして指定します。

      • [Amazon Data Firehose へのログのエクスポート] — Firehose にコンテナログを送信するようタスクを設定します。Firehose 配信ストリームにログを送信するデフォルトのログドライバーオプションが提供されています。別の配信ストリーム名を指定するには、ドライバーオプションの値を変更します。

      • Amazon Kinesis Data Streams へのログのエクスポート — Kinesis Data Streams にコンテナログを送信するようタスクを設定します。Kinesis Data Streams のストリームにログを送信するデフォルトのログドライバーオプションが提供されています。別のストリーム名を指定するには、ドライバーオプションの値を変更します。

      • Amazon OpenSearch Service へのログのエクスポート — コンテナログを OpenSearch Service ドメインに送信するようタスクを設定します。ログドライバーオプションを提供する必要があります。

      • Amazon S3 へのログのエクスポート — Amazon S3 バケットにコンテナログを送信するようタスクを設定します。デフォルトのログドライバーオプションが提供されていますが、有効な Amazon S3 バケット名を指定する必要があります。

    10. (オプション) コンテナの追加パラメータを設定します。

      このオプションを設定するには この操作を行います

      再起動ポリシー

      これらのオプションは、コンテナの終了時にコンテナを再起動する再起動ポリシーを定義します。

      [再起動ポリシー] を展開して以下の項目を設定します。
      • コンテナの再起動ポリシーを有効にするには、[再起動ポリシーを有効にする] をオンにします。

      • [無視された終了コード] には、整数コンテナの終了コードのカンマ区切りリストを指定します。指定された終了コードのいずれかでコンテナが終了した場合、Amazon ECS はコンテナの再起動を試みません。何も指定しない場合、Amazon ECS はいずれの終了コードも無視しません。

      • [試行リセット期間] には、終了した際に再起動を試みる前にコンテナが実行する必要がある期間を整数 (秒) で指定します。Amazon ECS は、[試行リセット期間] で指定した秒ごとにコンテナの再起動を 1 回だけ試みることができます。何も指定しない場合、再起動を試みる前にコンテナは 300 秒間実行する必要があります。

      HealthCheck

      これらはコンテナが正常かどうかを判断するコマンドです。詳細については、「コンテナのヘルスチェックを使用して Amazon ECS タスク状態を判定する」を参照してください。

      HealthCheck を展開し、次の項目を設定します。
      • [Command] (コマンド) には、カンマで区切られたコマンドのリストを入力します。コマンド引数を直接実行するための CMD、またはコンテナのデフォルトシェルでコマンドを実行するための CMD-SHELL を使用してコマンドを実行できます。これらのいずれも指定しない場合は CMD が使用されます。

      • [Interval] (間隔) に、各ヘルスチェックの間隔を秒数で入力します。有効な値は 5~30 です。

      • [Timeout] (タイムアウト) には、成功まで待機しているヘルスチェックが、失敗したと見なされるまでの期間 (秒単位) を入力します。有効な値は 2~60 です。

      • [Start period] (開始時期) には、ヘルスチェックコマンドを実行する前にコンテナがブートストラップするのを待つ期間 (秒単位) を入力します。有効な値は 0~300 です。

      • [Retries] (再試行) には、障害発生時にヘルスチェックコマンドを再試行する回数を入力します。有効な値の範囲は 1~10 です。

      [起動の依存関係の順序]

      このオプションは、コンテナの起動と停止の依存関係を定義します。コンテナには複数の依存関係を含めることができます。

      [起動時の依存関係の順序] を展開し、次の項目を設定します。
      1. [コンテナ依存関係を追加] を選択します。

      2. [コンテナ] で、対象のコンテナを選択します。

      3. [条件]で、起動時の依存条件を選択します。

      依存関係を追加するには、[コンテナ依存関係を追加]を選択します。
      [コンテナのタイムアウト]

      これらのオプションは、コンテナをいつ起動および停止するかを決定します。

      [コンテナタイムアウト] を展開し、次の項目を設定します。
      • コンテナの依存関係を解決するための再試行を止めるまでの待機時間を設定するには、[タイムアウト開始時間] (秒) を入力します。

      • コンテナが正常に終了しなかった場合にコンテナが停止されるまでの [タイムアウト停止時間] (秒) を指定します。

      コンテナネットワーク設定

      これらのオプションはコンテナ内でネットワークを使用するかどうかを決定します。

      [コンテナネットワーク設定] を展開し、以下を設定します。
      • コンテナネットワーキングを無効にするには、[ネットワーキングをオフにする] を選択します。

      • コンテナに提供する DNS サーバー IP アドレスを設定するには、[DNS サーバー] に各サーバーの IP アドレスを個々の行に入力します。

      • コンテナに提示された完全修飾されていないホスト名を検索するように DNS ドメインを設定するには、[DNS 検索ドメイン] で各ドメインを別々の行に入力します。

        パターンは ^[a-zA-Z0-9-.]{0,253}[a-zA-Z0-9]$ です。

      • コンテナのホスト名を設定するには、[ホスト名] にコンテナのホスト名を入力します。

      • コンテナの /etc/hosts ファイルに追加するホスト名と IP アドレスマッピングを追加するには、[追加のホストを追加] を選択し、[ホスト名] と [IP アドレス] にホスト名と IP アドレスを入力します。

      Docker 設定

      これらは Dockerfile 内の値を上書きします。

      [Docker 設定] を展開して以下の項目を設定します。

      • [コマンド] には、コンテナに対する実行可能なコマンドを入力します。

        このパラメータは、Docker Remote API の [コンテナの作成] セクションにある Cmd にマッピングされ、COMMAND オプションは docker run にマッピングされます。このパラメータは、Dockerfile 内の CMD 命令よりも優先されます。

      • [エントリポイント] で、コンテナに渡される Docker エントリポイントを入力します。

        このパラメータは、Docker Remote API の [コンテナの作成] セクションにある Entrypoint にマッピングされ、--entrypoint オプションは docker run にマッピングされます。このパラメータは、Dockerfile 内の ENTRYPOINT 命令よりも優先されます。

      • [作業ディレクトリ] には、エントリポイントと提供されたコマンド命令をコンテナが実行するための、ディレクトリを入力します。

        このパラメータは、Docker Remote API の [コンテナの作成] セクションにある WorkingDir にマッピングされ、--workdir オプションは docker run にマッピングされます。このパラメータは、Dockerfile 内の WORKDIR 命令よりも優先されます。

      [リソースの制限 (Ulimits)]

      この値は、オペレーティングシステムのデフォルトのリソースクォータ設定を上書きします。

      このパラメータは、Docker Remote API の 「Create a container (コンテナを作成する)」セクションの Ulimits にマップされ、--ulimit オプションは docker run にマップされます。

      [リソース制限 (ulimits)] を展開し、[ulimit の追加] を選択します。[制限名] で制限を選択します。次に、[ソフトリミット][ハードリミット] に値を入力します。

      さらに ulimits を追加するには、[ulimit の追加] を選択します。

      Docker ラベル

      このオプションは、コンテナにメタデータを追加します。

      このパラメータは、Docker Remote API の 「Create a container (コンテナを作成する)」セクションの Labels にマップされ、--label オプションは docker run にマップされます。

      [Docker ラベル]を展開し、[キー値ペアを追加] を選択して、[キー][値] を入力します。

      Docker ラベルをさらに追加するには、[キー値ペアを追加] を選択します。

    11. (オプション) [コンテナを追加する]をクリックして、タスク定義にコンテナを追加します。

  11. (オプション) [ストレージ] セクションを使用して、Fargate でホストされるタスクの一時ストレージ量を拡張することができます。またこのセクションを使用して、タスクのデータボリューム設定を追加することもできます。

    1. Fargate タスクに使用可能なエフェメラルストレージをデフォルト値の 20 gibibytes (GiB) を超えて拡張するには、[Amount] (量) に最大で 200 GiB までの値を入力します。

  12. (オプション) タスク定義のデータ ボリューム構成を追加するには、[ボリュームの追加] を選択し、以下のステップを実行します。

    1. [Volume name] (ボリューム名) には、データボリュームの名前を入力します。データボリューム名は、コンテナマウントポイントを作成するときに使用されます。

    2. [ボリューム設定] では、ボリュームをタスク定義の作成時に設定するのか、デプロイ時に設定するのかを選択します。

      注記

      タスク定義の作成時に設定できるボリュームには、バインドマウント、Docker、Amazon EFS、Amazon FSx for Windows File Server などがあります。デプロイ時にタスクを実行するとき、またはサービスを作成または更新するときに設定できるボリュームには Amazon EBS が含まれます。

    3. [ボリュームタイプ]では、選択した設定タイプと互換性のあるボリュームタイプを選択し、ボリュームタイプを設定します。

    ボリュームタイプ ステップ

    [バインドマウント]

    1. [Add mount point] (マウントポイントの追加) を選択し、次の設定を行います。

      • [Container] (コンテナ) には、マウントポイントのコンテナを選択します。

      • [Source volume] (ソースボリューム) を使用する場合、コンテナにマウントするデータボリュームを選択します。

      • [Container path] (コンテナパス) に、ボリュームをマウントするコンテナのパスを指定します。

      • [読み取り専用] では、コンテナがボリュームに対して読み取り専用アクセスを持つかどうかを選択します。

    2. マウントポイントを追加するには、[Add mount point] (マウントポイントの追加)。

    EFS
    1. [File system ID] (ファイルシステム ID) で、Amazon EFS のファイルシステム ID を選択します。

    2. (オプション) [Root directory] (ルートディレクトリ) には、ホスト内にルートディレクトリとしてマウントする Amazon EFS ファイルシステム内のディレクトリを入力します。このパラメータを省略すると、Amazon EFS ボリュームのルートが使用されます。

      EFS アクセスポイントを使用する予定の場合は、このフィールドを空白のままにします。

    3. (オプション) [Access point] (アクセスポイント) で、使用するアクセスポイント ID を選択します。

    4. (オプション) Amazon EFS ファイルシステムと Amazon ECS ホスト間のデータを暗号化する場合、または、ボリュームをマウントするときにタスク実行ロールを使用する場合は、[Advanced configurations] (詳細設定) を選択し、以下を設定します。

      • Amazon EFS ファイルシステムと Amazon ECS ホスト間のデータを暗号化するには、[Transit encryption] (トランジットの暗号化) を選択し、[Port] (ポート) に、Amazon ECS ホストと Amazon EFS サーバーの間で暗号化されたデータを送信する際に使用するポートを入力します。転送中の暗号化ポートを指定しないと、Amazon EFS マウントヘルパーが使用するポート選択方式が使用されます。詳細については、[Amazon Elastic File System User Guide] (Amazon Elastic File System ユーザーガイド) の[EFS Mount Helper] (EFS マウントヘルパー) を参照してください。

      • Amazon EFS ファイルシステムをマウントするときにタスク定義で定義された Amazon ECS タスク IAM ロールを使用するには、[IAM 認可] を選択します。

    5. [Add mount point] (マウントポイントの追加) を選択し、次の設定を行います。

      • [Container] (コンテナ) には、マウントポイントのコンテナを選択します。

      • [Source volume] (ソースボリューム) を使用する場合、コンテナにマウントするデータボリュームを選択します。

      • [Container path] (コンテナパス) に、ボリュームをマウントするコンテナのパスを指定します。

      • [読み取り専用] では、コンテナがボリュームに対して読み取り専用アクセスを持つかどうかを選択します。

    6. マウントポイントを追加するには、[Add mount point] (マウントポイントの追加)。

    Docker

    1. [ドライバー] に、Docker ボリュームの設定を入力します。Windows コンテナでは、[ローカル] ドライバーの使用のみがサポートされます。バインドマウントを使用するには、host を指定します。

    2. [Scope] (スコープ) で、ボリュームのライフサイクルを選択します。

      • タスクの開始時と停止時にライフサイクルが続くようにするには、[Task] (タスク) を選択します。

      • タスクが停止した後もボリュームを維持するには、[Shared] (共有) を選択します。

    3. [Add mount point] (マウントポイントの追加) を選択し、次の設定を行います。

      • [Container] (コンテナ) には、マウントポイントのコンテナを選択します。

      • [Source volume] (ソースボリューム) を使用する場合、コンテナにマウントするデータボリュームを選択します。

      • [Container path] (コンテナパス) に、ボリュームをマウントするコンテナのパスを指定します。

      • [読み取り専用] では、コンテナがボリュームに対して読み取り専用アクセスを持つかどうかを選択します。

    4. マウントポイントを追加するには、[Add mount point] (マウントポイントの追加)。

    FSx for Windows File Server
    1. [ファイルシステム ID] で、FSx for Windows File Server システムの ID を選択します。

    2. [ルートディレクトリ] で、ホスト内にルートディレクトリとしてマウントするための、FSx for Windows File Server ファイルシステム内のディレクトリを入力します。

    3. [認証情報パラメータ] で、認証情報の保存方法を選択します。

      • AWS Secrets Manager を使用するには、Secrets Manager シークレットの Amazon リソースネーム (ARN) を入力します。

      • AWS Systems Manager を使用するには、Systems Manager パラメータの Amazon リソースネーム (ARN) を入力します。

    4. [ドメイン] に、AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD) ディレクトリまたはセルフホスト型 EC2 Active Directory によってホストされる完全修飾ドメイン名を入力します。

    5. [Add mount point] (マウントポイントの追加) を選択し、次の設定を行います。

      • [Container] (コンテナ) には、マウントポイントのコンテナを選択します。

      • [Source volume] (ソースボリューム) を使用する場合、コンテナにマウントするデータボリュームを選択します。

      • [Container path] (コンテナパス) に、ボリュームをマウントするコンテナのパスを指定します。

      • [読み取り専用] では、コンテナがボリュームに対して読み取り専用アクセスを持つかどうかを選択します。

    6. マウントポイントを追加するには、[Add mount point] (マウントポイントの追加)。

    Amazon EBS

    1. [Add mount point] (マウントポイントの追加) を選択し、次の設定を行います。

      • [Container] (コンテナ) には、マウントポイントのコンテナを選択します。

      • [Source volume] (ソースボリューム) を使用する場合、コンテナにマウントするデータボリュームを選択します。

      • [Container path] (コンテナパス) に、ボリュームをマウントするコンテナのパスを指定します。

      • [読み取り専用] では、コンテナがボリュームに対して読み取り専用アクセスを持つかどうかを選択します。

    2. マウントポイントを追加するには、[Add mount point] (マウントポイントの追加)。

  13. 別のコンテナからボリュームを追加するには、[以下からボリュームを追加:] を選択し、次のように構成します。

    • [コンテナ] で、対象のコンテナを選択します。

    • [ソース] で、マウントするボリュームが含まれるコンテナを選択します。

    • [読み取り専用] では、コンテナがボリュームに対して読み取り専用アクセスを持つかどうかを選択します。

  14. (オプション) AWS Distro for OpenTelemetry 統合を使用してアプリケーショントレースとメトリクス収集設定を構成するには、[モニタリング] を展開し、[メトリクス収集を使用] を選択してタスクのメトリクスを収集し、Amazon CloudWatch または Amazon Managed Service for Prometheus に送信します。このオプションを選択すると、Amazon ECS はアプリケーションメトリクスの送信向けに事前設定された AWS Distro for OpenTelemetry コンテナサイドカーを作成します。詳細については、「アプリケーションメトリクスを使用して Amazon ECS アプリケーションのパフォーマンスを相関させる」を参照してください。

    1. [Amazon CloudWatch] を選択した場合、カスタムアプリケーションメトリクスはカスタムメトリクスとして CloudWatch にルーティングされます。詳細については、「アプリケーションメトリクスを Amazon CloudWatch にエクスポートする」を参照してください。

      重要

      Amazon CloudWatch にアプリケーションメトリクスをエクスポートする場合、タスク定義には、必要なアクセス権限を持つタスク IAM ロールが必要です。詳しくは、「OpenTelemetry 用 AWS Distro と Amazon CloudWatch の統合に必要な IAM 許可」を参照してください。

    2. [Amazon Managed Service for Prometheus (Prometheus libraries instrumentation)] (Prometheus 向け Amazon マネージドサービス (Prometheus ライブラリ計測)) を選択した場合、タスクレベルの CPU、メモリ、ネットワーク、ストレージのメトリクスとカスタムアプリケーションメトリクスが Amazon Managed Service for Prometheus にルーティングされます。[Workspace のリモート書き込み用エンドポイント] には、Prometheus ワークスペースのリモート書き込みエンドポイント URL を入力します。[スクレイピングターゲット] には、AWS Distro for OpenTelemetry コレクターがメトリクスデータをスクレイプするために使用できるホストとポートを入力します。詳細については、「アプリケーションメトリクスを Amazon Managed Service for Prometheus にエクスポートする」を参照してください。

      重要

      Amazon Managed Service for Prometheus にアプリケーションメトリクスをエクスポートする場合、タスク定義には、必要なアクセス権限を持つタスク IAM ロールが必要です。詳細については、「OpenTelemetry 用 AWS Distro と Amazon Managed Service for Prometheus の統合に必要な IAM 許可」を参照してください。

    3. [Amazon Managed Service for Prometheus (OpenTelemetry 計測)] を選択した場合、タスクレベルの CPU、メモリ、ネットワーク、ストレージのメトリクスとカスタムアプリケーションメトリクスが Amazon Managed Service for Prometheus にルーティングされます。[Workspace のリモート書き込み用エンドポイント] には、Prometheus ワークスペースのリモート書き込みエンドポイント URL を入力します。詳細については、「アプリケーションメトリクスを Amazon Managed Service for Prometheus にエクスポートする」を参照してください。

      重要

      Amazon Managed Service for Prometheus にアプリケーションメトリクスをエクスポートする場合、タスク定義には、必要なアクセス権限を持つタスク IAM ロールが必要です。詳細については、「OpenTelemetry 用 AWS Distro と Amazon Managed Service for Prometheus の統合に必要な IAM 許可」を参照してください。

  15. (オプション) [Tags] (タグ) を展開します。タグをキーバリューペアとしてタスク定義に追加します。

    • [タグを追加] [Add tag] (タグを追加) を選択し、以下を実行します。

      • [キー] にはキー名を入力します。

      • [] にキー値を入力します。

    • [タグの削除] タグの横にある [タグの削除] を選択します。

  16. [作成] を選択してタスク定義を登録します。

Amazon ECS console JSON editor
  1. コンソール (https://console.aws.amazon.com/ecs/v2) を開きます。

  2. ナビゲーションペインで、タスクの定義 を選択します。

  3. [新しいタスク定義の作成] メニューで、[JSON で新しいタスク定義を作成する] を選択します。

  4. JSON エディタボックスで、JSON ファイルを編集し、

    JSON は、JSON 検証 で指定された検証チェックに合格する必要があります。

  5. [Create] (作成) を選択します。