

# Amazon ECS の停止したタスクの接続を検証する
<a name="verify-connectivity"></a>

ネットワーク接続の問題により、タスクが停止することがあります。断続的な問題である可能性がありますが、タスクがエンドポイントに接続できないことが原因である可能性が最も高いです。

## タスクの接続をテストする
<a name="test-network"></a>

`AWSSupport-TroubleshootECSTaskFailedToStart` ランブックを使用して、タスクの接続をテストできます。ランブックを使用する場合は、次のリソースに関する情報が必要です。
+ タスク ID

  最後に失敗したタスク のID を使用します。
+ タスクが属していたクラスター

ランブックの使用方法については、「AWS Systems Manager Automation ランブックリファレンス」の「[https://docs.aws.amazon.com/systems-manager-automation-runbooks/latest/userguide/automation-aws-troubleshootecstaskfailedtostart.html](https://docs.aws.amazon.com/systems-manager-automation-runbooks/latest/userguide/automation-aws-troubleshootecstaskfailedtostart.html)」を参照してください。**

ランブックはタスクを分析します。タスクの開始を妨げる可能性のある次の問題については、「**出力**」セクションで結果を確認できます。
+ 設定済みのコンテナレジストリーへのネットワーク接続
+ VPC エンドポイント接続
+ セキュリティグループのルール設定

## VPC エンドポイントの問題を修正する
<a name="fix-vpc-endpoints"></a>

`AWSSupport-TroubleshootECSTaskFailedToStart` ランブックの結果に VPC エンドポイントの問題が表示された場合は、次の設定を確認します。
+ エンドポイントと VPC エンドポイントを作成する VPC では、プライベート DNS を使用する必要があります。
+ タスクが接続できないサービスの AWS PrivateLink エンドポイントが、タスクと同じ VPC 内にあることを確認してください。詳細については、以下のいずれかを参照してください。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/verify-connectivity.html)
+ ポート 443 DNS (TCP) トラフィックで HTTPS を許可するタスクサブネットのアウトバウンドルールを設定します。詳細については、「*Amazon Elastic Compute Cloud ユーザーガイド*」の「[セキュリティグループのルールを設定する](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/changing-security-group.html#add-remove-security-group-rules)」を参照してください。
+ カスタムネームドメインサーバーを使用する場合は、DNS クエリの設定を確認します。クエリは、53 番ポートで外部への通信を行うことができ、UDP および TCP プロトコルを使用する必要があります。また、443 番ポートでの HTTPS 通信も必要です。詳細については、「*Amazon Elastic Compute Cloud ユーザーガイド*」の「[セキュリティグループのルールを設定する](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/changing-security-group.html#add-remove-security-group-rules)」を参照してください。
+ サブネットにネットワーク ACL がある場合は、次の ACL ルールが必要です。
  + ポート 1024-65535 でトラフィックを許可するアウトバウンドルール
  + ポート 443 の TCP トラフィックを許可するインバウンドルール

  ルールの設定方法については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ネットワーク ACL を使用してサブネットへのトラフィックを制御する](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html)」を参照してください。

## ネットワークの問題を修正する
<a name="fix-network-issues"></a>

`AWSSupport-TroubleshootECSTaskFailedToStart` ランブックの結果にネットワークの問題が表示されたら、次の設定を確認します。

### パブリックサブネットで awsvpc ネットワークモードを使用するタスク
<a name="fix-network-issues-fargate-public"></a>

ランブックに基づいて次の設定を実行します。
+ パブリックサブネットのタスクでは、タスクの起動時に **[Auto-assign public IP]** (自動割り当てパブリック IP)を **[ENABLED]** (有効)に指定する必要があります。詳細については、「[Amazon ECS タスクとしてのアプリケーションの実行](standalone-task-create.md)」を参照してください。
+ インターネットトラフィックを処理するにはゲートウェイが必要です。タスクサブネットのルートテーブルには、ゲートウェイへのトラフィック用のルートが必要です。

  詳細については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ルートテーブルのルートの追加と削除](https://docs.aws.amazon.com/vpc/latest/userguide/WorkWithRouteTables.html#AddRemoveRoutes)」を参照してください。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/verify-connectivity.html)
+ タスクサブネットにネットワーク ACL がある場合は、次の ACL ルールが必要です。
  + ポート 1024-65535 でトラフィックを許可するアウトバウンドルール
  + ポート 443 の TCP トラフィックを許可するインバウンドルール

  ルールの設定方法については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ネットワーク ACL を使用してサブネットへのトラフィックを制御する](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html)」を参照してください。

### プライベートサブネットで awsvpc ネットワークモードを使用するタスク
<a name="fix-network-issues-fargate-private"></a>

ランブックに基づいて次の設定を実行します。
+ タスクの起動時に、**[自動割り当てパブリック IP]** で **[無効]** を選択します。
+  リクエストがインターネットにルーティンされるように VPC の NAT ゲートウェイを設定します。詳細については、「Amazon Virtual Private Cloud ユーザーガイド」の「[NAT ゲートウェイ](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)」を参照してください。**
+ タスクサブネットのルートテーブルには、NAT ゲートウェイへのトラフィック用のルートが必要です。

  詳細については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ルートテーブルのルートの追加と削除](https://docs.aws.amazon.com/vpc/latest/userguide/WorkWithRouteTables.html#AddRemoveRoutes)」を参照してください。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/verify-connectivity.html)
+ タスクサブネットにネットワーク ACL がある場合は、次の ACL ルールが必要です。
  + ポート 1024-65535 でトラフィックを許可するアウトバウンドルール
  + ポート 443 の TCP トラフィックを許可するインバウンドルール

  ルールの設定方法については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ネットワーク ACL を使用してサブネットへのトラフィックを制御する](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html)」を参照してください。

### パブリックサブネットで awsvpc ネットワークモードを使用しないタスク
<a name="fix-network-issues-ec2-public"></a>

ランブックに基づいて次の設定を実行します。
+ クラスターの作成時に、**[Amazon EC2 インスタンスのネットワーク]** の **[IP の自動割り当て]** で、**[オンにする]** を選択します。

  このオプションにより、インスタンスのプライマリネットワークインターフェイスにパブリック IP アドレスを割り当てます。
+ インターネットトラフィックを処理するにはゲートウェイが必要です。インスタンスサブネットのルートテーブルには、ゲートウェイへのトラフィック用のルートが必要です。

  詳細については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ルートテーブルのルートの追加と削除](https://docs.aws.amazon.com/vpc/latest/userguide/WorkWithRouteTables.html#AddRemoveRoutes)」を参照してください。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/verify-connectivity.html)
+ インスタンスサブネットにネットワーク ACL がある場合は、次の ACL ルールが必要です。
  + ポート 1024-65535 でトラフィックを許可するアウトバウンドルール
  + ポート 443 の TCP トラフィックを許可するインバウンドルール

  ルールの設定方法については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ネットワーク ACL を使用してサブネットへのトラフィックを制御する](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html)」を参照してください。

### プライベートサブネットで awsvpc ネットワークモードを使用しないタスク
<a name="fix-network-issues-fargate-private"></a>

ランブックに基づいて次の設定を実行します。
+ クラスターの作成時に、**[Amazon EC2 インスタンスのネットワーク]** の **[IP の自動割り当て]** で、**[オフにする]** を選択します。
+  リクエストがインターネットにルーティンされるように VPC の NAT ゲートウェイを設定します。詳細については、*Amazon VPC ユーザーガイド* の [NAT ゲートウェイ](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) を参照してください。
+ インスタンスサブネットのルートテーブルには、NAT ゲートウェイへのトラフィック用のルートが必要です。

  詳細については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ルートテーブルのルートの追加と削除](https://docs.aws.amazon.com/vpc/latest/userguide/WorkWithRouteTables.html#AddRemoveRoutes)」を参照してください。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/verify-connectivity.html)
+ タスクサブネットにネットワーク ACL がある場合は、次の ACL ルールが必要です。
  + ポート 1024-65535 でトラフィックを許可するアウトバウンドルール
  + ポート 443 の TCP トラフィックを許可するインバウンドルール

  ルールの設定方法については、「*Amazon Virtual Private Cloud ユーザーガイド*」の「[ネットワーク ACL を使用してサブネットへのトラフィックを制御する](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html)」を参照してください。