クライアントがロードバランサーに接続できない理由を特定したいと考えています。
解決策
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーを受け取った場合は、最新の AWS CLI バージョンを使用していることを確認してください。
ポートリスナーを確認する
ロードバランサーポートに適したリスナーが正しく設定されていることを確認します。
ターゲットインスタンスのセキュリティグループを確認する
ロードバランサーの背後にあるインスタンスのセキュリティグループの設定を確認します。ロードバランサーに接続されている各サブネットについて、リスナーポートとヘルスチェックポートの両方向でトラフィックが許可されていることを確認します。
ロードバランサーのセキュリティグループを確認する
ロードバランサーのセキュリティグループの設定を確認します。
**注:**ロードバランサーのセキュリティグループは、リスナーポートとヘルスチェックポートのインスタンスへのアウトバウンドトラフィックを許可する必要があります。
ネットワーク ACL を確認する (VPC 内のロードバランサーの場合)
ロードバランサーサブネットに関連付けられているネットワーク ACL が、適切なトラフィックを許可していることを確認します。仮想プライベートクラウド (VPC) にアタッチされている各サブネットのリスナーポートとヘルスチェックポートの両方向で、トラフィックを許可する必要があります。詳細については、「Network ACLs for load balancers in a VPC」を参照してください。
ルートテーブルを確認する
ロードバランサーにアタッチされたサブネットのルートテーブルが、ロードバランサーへの接続を許可していることを確認します。ロードバランサー接続は、インターネットゲートウェイを指すデフォルトルートを使用する必要があります。
注: 外部ロードバランサーを使用する場合は、インターネットゲートウェイが必要です。
ロードバランサーへの接続を確認する
Amazon Elastic Compute Cloud (Amazon EC2) インスタンスからロードバランサーへの接続を確認するには、以下の手順を実行します。
1.Amazon EC2 インスタンスに接続します (Linux インスタンスまたは Windows インスタンスの手順を参照してください)。
2.netcat (nc) または telnet のいずれかがインスタンスにインストールされていることを確認します。
3. パブリックロードバランサーを使用している場合、インスタンスがインターネットに接続されていることを確認します。インターネット接続を確認するには、インターネットゲートウェイまたはネットワークアドレス変換 (NAT) ゲートウェイを使用します。
4.Amazon EC2 インスタンスのセキュリティグループがインターネットへのアウトバウンド接続を許可していることを確認します。次に、インスタンスが実行されているサブネットにアタッチされている ネットワーク ACL がインバウンドとアウトバウンドのトラフィックを許可していることを確認します。
5.設定に基づいて、次のコマンドのいずれかを実行します。
nc -v <elb_ip_address> <listener_port>
telnet <elb_ip_address> <listener_port>
6.外部クライアントから、ロードバランサーリスナーの IP アドレスに対して traceroute (Linux クライアント) または tracert (Windows クライアント) ユーティリティを実行します。
7.出力を確認します。
注: Classic Load Balancer、Application Load Balancer、または Network Load Balancer から他のエラーコードが返される場合は、以下を参照してください。
負荷や容量の問題を確認する
散発的な接続の問題は、負荷や容量に関連する問題を示している可能性があります。トラブルシューティング手順については、「ELB での Classic Load Balancer のキャパシティーに関する問題のトラブルシューティング方法を教えてください」を参照してください。
関連情報
How Elastic Load Balancing works
The load balancer generates an HTTP error
Troubleshoot a Classic Load Balancer: HTTP errors