Amazon ECS Windows コンテナインスタンスの起動 - Amazon Elastic Container Service

Amazon ECS Windows コンテナインスタンスの起動

Amazon ECS コンテナインスタンスは、Amazon EC2 コンソールを使用して作成されます。開始する前に、Amazon ECS を使用するようにセットアップする のステップを完了するようにしてください。

起動ウィザードの詳細については、「Amazon EC2 ユーザーガイド」の「新しいインスタンス起動ウィザードを使用してインスタンスを起動する」を参照してください。

新しい Amazon EC2 ウィザードを使用してインスタンスを起動できます。パラメータには次のリストを使用できます。リストされていないパラメータは、デフォルトのままにしてください。次の手順では、各パラメータグループについて説明します。

手順

開始する前に、「Amazon ECS を使用するようにセットアップする」のステップを完了します。

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

  2. 画面の上のナビゲーションバーで、現在の AWS リージョンが表示されます (例: 米国東部 (オハイオ))。インスタンスを起動するリージョンを選択します。一部の Amazon EC2 リソースはリージョン間で共有できるため、この選択は重要です。

  3. Amazon EC2 コンソールダッシュボードで、[インスタンスを起動] を選択します。

名前とタグ

インスタンス名はタグで、キーは [Name] (名前)、値は指定した名前です。インスタンス、ボリューム、および伸縮自在なグラフィックスにタグ付けできます。スポットインスタンスの場合、スポットインスタンスリクエストにのみタグを付けることができます。

インスタンス名と追加のタグを指定することはオプションです。

  • [Name] (名前) に、インスタンスのわかりやすい名前を入力します。名前を指定しない場合は、インスタンスをその ID で識別できます。ID は、インスタンスの起動時に自動的に生成されます。

  • タグを追加するには、[Add additional tag] (追加のタグを追加) を選択します。[Add tag] (タグを追加) を選択し、キーと値を入力し、タグ付けするリソースタイプを選択します。追加するタグごとに [Add tag] (タグを追加) を選択します。

アプリケーションと OS イメージ (Amazon マシンイメージ)

Amazon マシンイメージ (AMI) には、インスタンスの作成に必要な情報が含まれています。例えば、ある AMI には、ウェブサーバーとして動作するために必要なソフトウェア (Apache やウェブサイトなど) が含まれています。

最新の Amazon ECS 最適化 AMI とその値については、「Windows Amazon ECS-optimized AMI」(Windows Amazon ECS に最適化された AMI) を参照してください。

[Search] (検索) バーを使用して、AWS によって発行された適切な Amazon ECS 最適化 AMI を検索します。

  1. 要件に基づいて、[Search] (検索) バーに次の AMI のいずれかを入力し、[Enter] を押します。

    • Windows_Server-2022-English-Full-ECS_Optimized

    • Windows_Server-2022-English-Core-ECS_Optimized

    • Windows_Server-2019-English-Full-ECS_Optimized

    • Windows_Server-2019-English-Core-ECS_Optimized

    • Windows_Server-2016-English-Full-ECS_Optimized

  2. [Choose an Amazon Machine Image (AMI]) (Amazon マシンイメージ (AMI) を選択) ページで、[Community AMIs] (コミュニティ AMI) タブを選択します。

  3. 表示されるリストから、発行日が最新の Microsoft 検証済み AMI を選択し、[Select] (選択) をクリックします。

インスタンスタイプ

インスタンスタイプは、インスタンスのハードウェア設定とサイズを定義します。インスタンスタイプが大きくなると、CPU およびメモリも増えます。詳細については、「インスタンスタイプ」を参照してください。

  • [Instance type] (インスタンスタイプ) で、インスタンスのインスタンスタイプを選択します。

    選択したインスタンスタイプによって、タスクの実行に使用できるリソースが決まります。

キーペア (ログイン)

[Key pair name] (キーペア名) には、既存のキーペアを選択するか、[Create new key pair] (新しいキーペアを作成) を選択して新しいキーペアを作成します。

重要

[Proceed without key pair] (キーペアなしで進む) オプションを選択した場合 (非推奨)、ユーザーが別の方法でログインすることを許可するように設定された AMI を選択した場合でなければ、インスタンスに接続できなくなります。

ネットワーク設定

必要に応じて、ネットワーク設定を設定します。

  • [Networking platform] (ネットワーキングプラットフォーム): [Virtual Private Cloud (VPC)] を選択して、[Network interfaces] (ネットワークインターフェイス) セクションでサブネットを指定します。

  • [VPC]: セキュリティグループを作成する既存の VPC を選択します。

  • [サブネット]: インスタンスは、アベイラビリティーゾーン、ローカルゾーン、Wavelength Zone、Outpost のいずれかに関連付けられたサブネットで起動できます。

    アベイラビリティーゾーンでインスタンスを起動するには、インスタンスを起動するサブネットを選択します。新しいサブネットを作成するには、[Create new subnet] を選択して Amazon VPC コンソールに移動します。終了したらインスタンス起動ウィザードに戻り、[Refresh] (更新) アイコンを選択して一覧にサブネットを読み込みます。

    ローカルゾーンでインスタンスを起動するには、ローカルゾーン内に作成したサブネットを選択します。

    アウトポストでインスタンスを起動するには、アウトポストに関連付けられた VPC 内のサブネットを選択します。

  • [Auto-assign Public IP] (パブリック IP の自動割り当て): インスタンスをインターネットからアクセス可能にする場合は、[Auto-assign Public IP] (パブリック IP の自動割り当て) フィールドが [Enable] (有効) に設定されていることを確認します。可能にしない場合には、このフィールドを [無効] に設定します。

    注記

    コンテナインスタンスには、Amazon ECS サービスエンドポイントと通信するためのアクセスが必要です。これは、インターフェイス VPC エンドポイントを介して、またはパブリック IP アドレスを持つコンテナインスタンスを通じて可能になります。

    インターフェイス VPC エンドポイントについての詳細は、「Amazon ECS とインターフェイス VPC エンドポイント (AWS PrivateLink)」を参照してください。

    インターフェイス VPC エンドポイントが設定されておらず、コンテナインスタンスがパブリック IP アドレスを持たない場合、ネットワークアドレス変換 (NAT) を使用してこのアクセスを提供する必要があります。詳細については、「Amazon VPC ユーザーガイド」の「NAT ゲートウェイ」、およびこのガイドの「Amazon ECS Linux コンテナインスタンスに HTTP プロキシを使用する」を参照してください。

  • [Firewall (security groups)] (ファイアウォール (セキュリティグループ)): セキュリティグループを使用して、コンテナインスタンスのファイアウォールルールを定義します。このルールでは、どの着信ネットワークトラフィックをコンテナインスタンスに配信するかを指定します。他のトラフィックはすべて無視されます。

ストレージの設定

選択した AMI には、ルートボリュームを含む、1 つまたは複数のストレージボリュームが含まれます。インスタンスにアタッチする追加のボリュームを指定できます。

[Simple] (シンプル) ビューを使用できます。

  • [Storage type] (ストレージタイプ): コンテナインスタンスのストレージを設定します。

    Amazon ECS に最適化された Amazon Linux 2 AMI を使用している場合、1 つの 30 GiB ボリュームがインスタンスに設定されます。これは、オペレーティングシステムと Docker の間で共有されます。

    Amazon ECS に最適化された AMI を使用している場合、インスタンスには 2 つのボリュームが設定されます。[Root] ボリュームはオペレーティングシステム用で、2 番目の Amazon EBS ボリューム (/dev/xvdcz にアタッチ) は Docker 用です。

    オプションで、アプリケーションのニーズに合わせてインスタンスのボリュームサイズを増減できます。

高度な詳細

[Advanced details] で、セクションを開いてフィールドを表示し、インスタンスの追加パラメータを指定します。

  • [Purchasing option] (購入のオプション): [Request Spot Instances] (スポットインスタンスのリクエスト) を選択して、スポットインスタンスをリクエストします。また、スポットインスタンスに関連する他のフィールドも設定する必要があります。詳細については、「スポットインスタンスのリクエスト」を参照してください。

    注記

    スポットインスタンスを使用していて、"Not available" メッセージが表示される場合は、別のインスタンスタイプを選択する必要があります。

    .

  • [IAM instance profile] (IAM インスタンスプロフィール): コンテナインスタンス IAM ロールを選択します。通常、これは ecsInstanceRole という名前です。

    重要

    適切な IAM アクセス許可を使用してコンテナインスタンスを起動しないと、Amazon ECS エージェントはクラスターに接続できません。詳細については、「Amazon ECS コンテナインスタンスの IAM ロール」を参照してください。

  • (オプション) [User data] (ユーザーデータ): Amazon ECS コンテナエージェントの設定 からのエージェント環境変数のようなユーザーデータを使用して、Amazon ECS コンテナインスタンスを設定します。Amazon EC2 ユーザーデータスクリプトはインスタンスの初回起動時に 1 回のみ実行されます。以下に、ユーザーデータを使用する目的の一般的な例を紹介します。

    • デフォルトでは、コンテナインスタンスはデフォルトのクラスターで起動されます。デフォルト以外のクラスターで起動するには、[Advanced Details] (高度な詳細) リストを選択します。次に、[User data] フィールドに以下のスクリプトを貼り付け、your_cluster_name を使用するクラスターの名前に置き換えます。

      EnableTaskIAMRoleは、タスクの Task IAM ロール機能をオンにします。

      さらに、以下のオプションは、awsvpc ネットワークモードを使用する場合に使用できます。

      • EnableTaskENI: このフラグは、awsvpcネットワークモードを使用する場合に、タスクネットワークをオンにします。

      • AwsvpcBlockIMDS: awsvpcネットワークモードで実行中のタスクコンテナが IMDS にアクセスするのをブロックします。

      • AwsvpcAdditionalLocalRoutes: このオプションフラグを使用すると、タスクの名前空間に追加のルートを持つことができます。

        置換 ip-addressを追加ルートの IP アドレス (例えば 172.31.42.23/32) に置き換えます。

      <powershell> Import-Module ECSTools Initialize-ECSAgent -Cluster your_cluster_name -EnableTaskIAMRole -EnableTaskENI -AwsvpcBlockIMDS -AwsvpcAdditionalLocalRoutes '["ip-address"]' </powershell>