Amazon ECS タスクとしてアプリケーションを実行する - Amazon Elastic Container Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon ECS タスクとしてアプリケーションを実行する

を使用して、1 回限りのプロセス用のタスクを作成できます AWS Management Console。

スタンドアロンタスクを作成するには (AWS Management Console)
  1. コンソールをhttps://console.aws.amazon.com/ecs/v2で開きます。

  2. Amazon ECS コンソールでは、クラスターの詳細ページまたはタスク定義リビジョンリストからスタンドアロンタスクを作成できます。選択したリソースページに応じてスタンドアロンタスクを作成するには、次の手順に従います。

    サービスの起動元 ステップ

    クラスターの詳細ページ...

    1. [Clusters] ページで、サービスを作成するクラスターを選択します。

    2. Tasksタブで、Run new taskを選択します。

    タスク定義リビジョンページ...
    1. タスク定義ページで、タスク定義ファミリーを選択して、そのファミリーのリビジョンを表示します。

    2. 使用するリビジョンを選択します。

    3. デプロイメニューから、タスクの実行を選択します

  3. (オプション) コンピューティング設定 (アドバンスト) セクションでは、タスクの分散方法を選択します。キャパシティプロバイダー戦略または起動タイプ のいずれかを使用できます。キャパシティープロバイダー戦略を使用するには、クラスターレベルでキャパシティープロバイダーを設定する必要があります。詳細については、「Amazon ECS キャパシティープロバイダー」を参照してください。キャパシティープロバイダーを使用するようにクラスターを設定していない場合は、代わりに 起動タイプを使用します。

    ディストリビューションの方法 ステップ

    キャパシティープロバイダー戦略

    1. [Compute options] (コンピューティングオプション) セクションで、[Capacity provider strategy] (キャパシティープロバイダー戦略) を選択します。

    2. 戦略を選択:

      • デフォルトのキャパシティープロバイダー戦略を使用するには、[Use cluster default] (デフォルトのクラスターを使用) を選択します。

      • クラスターにデフォルトのキャパシティープロバイダー戦略がない場合、またはカスタム戦略を使用する場合は、[Use custom] (カスタムを使用)、[Add capacity provider strategy] (キャパシティプロバイダー戦略の追加)を選択し、[Base] (ベース)、[Capacity provider] (キャパシティープロバイダー)、[Weight] (ウェイト) を指定して、カスタムキャパシティープロバイダー戦略を定義します。

    注記

    戦略でキャパシティープロバイダーを使用するには、キャパシティープロバイダーをクラスターに関連付ける必要があります。キャパシティープロバイダー戦略の詳細については、「Amazon ECS キャパシティープロバイダー」を参照してください。

    起動タイプ
    1. [Compute options] (コンピューティングオプション) セクションで、[Launch type] (起動タイプ) を選択します。

    2. [Launch type] (起動タイプ) で、起動タイプを選択します。

    3. (オプション) Fargate 起動タイプが指定されている場合、Platform version(プラットフォームのバージョン)で、使用するプラットフォームのバージョンを指定します。プラットフォームバージョンが指定されない場合、LATEST プラットフォームバージョンが使用されます。

  4. Application type(アプリケーションの種類)で、Task(タスク)を選択します。

  5. [タスク定義] の場合、タスク定義ファミリーとリビジョンを選択します。

    重要

    コンソールは、選択を検証し、選択したタスク定義ファミリーおよびリビジョンが、定義されたコンピューティング設定と互換性があることを確認します。

  6. [Desired tasks] (必要なタスク) で、起動するタスクの数を入力します。

  7. タスク定義で awsvpc ネットワークモードを使用している場合、[Networking] (ネットワーク) を展開します。カスタム設定を指定するには、次のステップを実行します。

    1. VPC の場合、使用する VPC を選択します。

    2. [Subnets] (サブネット) で、タスクスケジューラがタスクを配置するときに考慮する VPC 内のサブネットを 1 つ以上選択します。

      重要

      awsvpc ネットワークモードではプライベートサブネットだけがサポートされます。タスクはパブリック IP アドレスを受信しません。したがって、アウトバウンドのインターネットアクセスには NAT ゲートウェイが必要であり、またインバウンドのインターネットトラフィックは、ロードバランサーを経由します。

    3. [セキュリティグループ] で、既存のセキュリティグループを選択することも、新しいセキュリティグループを作成することもできます。既存のセキュリティグループを使用するには、セキュリティグループを選択し、次のステップに進みます。新しいセキュリティグループを作成するには、[Create a new security group (新しいセキュリティグループの作成)] を選択します。セキュリティグループの名前、説明を指定してから、セキュリティグループのインバウンドルールを 1 つ以上追加する必要があります。

    4. [Public IP] (パブリック IP) では、タスクの Elastic Network Interface (ENI) にパブリック IP アドレスを自動的に割り当てるかどうかを選択します。

      AWS Fargate タスクは、パブリックサブネットで実行するときに、インターネットへのルートを持つようにパブリック IP アドレスを割り当てることができます。詳細については、Amazon Elastic Container Service ユーザーガイド AWS Fargate用のFargateタスクネットワーキングを参照してください。

  8. デプロイ時に設定と互換性のあるデータボリュームをタスクで使用する場合は、ボリューム を拡張してボリュームを設定できます。

    ボリューム名とボリュームタイプは、タスク定義リビジョンの作成時に設定され、スタンドアロンタスクの実行時に変更することはできません。ボリューム名とタイプを更新するには、新しいタスク定義リビジョンを作成し、新しいリビジョンを使用してタスクを実行する必要があります。

    このボリュームタイプを設定するには この操作を行います

    Amazon EBS

    1. EBS ボリュームタイプ で、タスクにアタッチする EBS ボリュームのタイプを選択します。

    2. サイズ (GiB ) には、ボリュームサイズの有効な値をギビバイト (GiB ) 単位で入力します。最小 1 GiB、最大 16,384 GiB のボリュームサイズを指定できます。スナップショット ID を指定しない限り、この値は必須です。

    3. IOPS には、ボリュームが提供する入出力オペレーション (IOPS) の最大数を入力します。この値は、io1io2、および gp3ボリュームタイプでのみ設定できます。

    4. スループット (MiB / 秒) には、ボリュームが提供するスループットを 1 秒あたりのメビバイト数 (MiBps、または MiB / 秒) で入力します。この値は、 gp3ボリュームタイプに対してのみ設定できます。

    5. スナップショット ID で、既存の Amazon EBS ボリュームスナップショットを選択するか、スナップショットからボリュームを作成する場合はスナップショットの ARN を入力します。スナップショット ID を選択または入力しないで、新しい空のボリュームを作成することもできます。

    6. 終了ポリシー では、タスクの終了後にタスクへのアタッチ用に設定されたボリュームを保持する場合は、チェックボックスをオフにします。デフォルトでは、タスクにアタッチされている EBS ボリュームは、タスクが終了すると削除されます。

    7. ファイルシステムタイプ で、ボリュームのデータの保存と取得に使用するファイルシステムのタイプを選択します。オペレーティングシステムのデフォルトまたは特定のファイルシステムタイプを選択できます。Linux のデフォルトは ですXFS。スナップショットから作成されたボリュームの場合、スナップショットの作成時にボリュームが使用していたのと同じファイルシステムタイプを指定する必要があります。ファイルシステムタイプが一致しない場合、タスクは開始できません。

    8. インフラストラクチャロール で、Amazon ECS がタスクの Amazon EBS ボリュームを管理できるようにする必要なアクセス許可を持つ IAM ロールを選択します。AmazonECSInfrastructureRolePolicyForVolumes マネージドポリシーをロールにアタッチすることも、ポリシーをガイドとして使用して、特定のニーズを満たすアクセス許可を持つ独自のポリシーを作成してアタッチすることもできます。必要なアクセス許可の詳細については、「」を参照してくださいAmazon ECS インフラストラクチャ IAM ロール

    9. 暗号化 で、デフォルト設定で Amazon EBS 暗号化を使用する場合は、デフォルト を選択します。アカウントにデフォルトで暗号化が設定されている場合、ボリュームは 設定で指定された AWS Key Management Service (AWS KMS) キーで暗号化されます。デフォルトを選択し、Amazon EBS のデフォルト暗号化が有効になっていない場合、ボリュームは暗号化されません。

      カスタム を選択した場合、ボリュームの暗号化に AWS KMS key 任意の を指定できます。

      None を選択すると、デフォルトで暗号化が設定されていないか、暗号化されたスナップショットからボリュームを作成しない限り、ボリュームは暗号化されません。

    10. Custom for Encryption を選択した場合は、 AWS KMS key 使用する を指定する必要があります。KMS キー には、 を選択する AWS KMS key か、キー ARN を入力します。対称カスタマーマネージドキーを使用してボリュームを暗号化することを選択した場合は、 AWS KMS key ポリシーで定義されている適切なアクセス許可があることを確認してください。詳細については、「Amazon EBS ボリューム のデータ暗号化」を参照してください。

    11. (オプション) タグ では、タスク定義からタグを伝播するか、独自のタグを指定することで、Amazon EBS ボリュームにタグを追加できます。

      タスク定義からタグを伝播する場合は、 からタグを伝播するタスク定義を選択します。を伝播しない、または値を選択しない場合、タグは伝播されません。

      独自のタグを指定する場合は、タグを追加を選択し、追加する各タグのキーと値を指定します。

      Amazon EBS ボリュームのタグ付けの詳細については、「Amazon EBS ボリュームのタグ付け」を参照してください。

  9. (オプション) デフォルト以外のタスク配置戦略を使用するには、[Task Placement] (タスクの配置) を展開し、以下のオプションから選択します。

    詳細については、「Amazon ECS がコンテナインスタンスにタスクを配置する方法」を参照してください。

    • AZ バランススプレッド – アベイラビリティーゾーン間およびアベイラビリティーゾーン内のコンテナインスタンス間でタスクを分散します。

    • AZ バランス – BinPack アベイラビリティーゾーン間およびメモリが最小のコンテナインスタンス間でタスクを分散します。

    • BinPack — 使用可能な CPU またはメモリの最小量に基づいてタスクを分散します。

    • ホストごとに 1 つのタスク – 各コンテナインスタンスにサービスから最大 1 つのタスクを配置します。

    • カスタム – 独自のタスク配置戦略を定義します。

    [Custom] (カスタム) を選択した場合、タスクを配置するアルゴリズムと、タスク配置時に考慮されるルールを定義します。

    • [Strategy] (方針) にとって [Type] (タイプ) そして [Field] (フィールド) で、アルゴリズムとアルゴリズムに使用するエンティティを選択します。

      最大 5 個の戦略を入力できます。

    • [制約][タイプ] および [式] で、制約のルールと属性を選択します。

      例えば、T2 インスタンスにタスクを配置する制約を設定するには、[Expression] (表現) で、[attribute:ecs.instance-type =~ t2.*] と入力します。

      最大 10 個の制約を入力できます。

  10. (オプション) タスク IAM ロール、またはタスク定義で定義されているタスク実行ロールをオーバーライドするには、[Task overrides] (タスクのの上書き) を展開し、以下のステップを実行します。

    1. [タスクロール] で、このタスクの IAM ロールを選択します。詳細については、「タスク IAM ロール」を参照してください。

      ecs-tasks.amazonaws.com信頼関係を持つロールのみが表示されます。タスクの IAM ロールを作成する方法については、「タスク用の IAM ロールとポリシーの作成」を参照してください。

    2. [タスク実行ロール] で、タスク実行ロールを選択します。詳細については、「Amazon ECS タスク実行IAM ロール」を参照してください。

  11. (オプション) コンテナコマンドと環境変数をオーバーライドするには、[Container Overrides] (コンテナの上書き) を展開し、コンテナを展開します。

    • タスク定義コマンド以外のコンテナにコマンドを送信するには、[コマンドの上書き] で Docker コマンドを入力します。

      Docker 実行コマンドの詳細については、「Docker リファレンスマニュアル」の「Docker Run reference」(Docker 実行リファレンス) を参照してください。

    • [Add Environment Variable] (環境変数の追加) で、環境変数を追加します。Keyに、環境変数の名前を入力します。Value(値) で、(文字列を囲む二重引用符 (" ") なしで) 環境値の文字列値を入力します。

      AWS は文字列を二重引用符 (" ") で囲み、次の形式で文字列をコンテナに渡します。

      MY_ENV_VAR="This variable contains a string."
  12. (オプション) タスクを識別しやすくするには、[Tags] (タグ) セクションを展開し、タグを設定します。

    Amazon ECS で、新しく起動されたすべてのタスクに、クラスター名とタスク定義のタグで自動でタグ付けするには、[Turn on Amazon ECS managed tags] (Amazon ECS で管理されたタグを有効にする) を選択し、[Task definition] (タスク定義) を選択します。

    タグを追加または削除します。

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

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

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

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

  13. [作成] を選択します。