Amazon SQS のネットワークエラーのトラブルシューティング - Amazon Simple Queue Service

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

Amazon SQS のネットワークエラーのトラブルシューティング

以下のトピックでは、Amazon SQS のネットワーク問題の最も一般的な原因およびトラブルシューティング方法について説明します。

ETIMEOUT error

ETIMEOUT エラーは、クライアントが Amazon SQS エンドポイントへの TCP 接続を確立できない場合に発生します。

トラブルシューティング:

  • ネットワーク接続を確認する

    telnet などのコマンドを実行して、Amazon SQS へのネットワーク接続をテストします。

    Example: telnet sqs.us-east-1.amazonaws.com 443

  • ネットワーク設定を確認する

    • ローカルファイアウォールのルール、ルート、アクセスコントロールリスト (ACL) が、使用するポートのトラフィックを許可していることを確認します。

    • セキュリティグループのアウトバウンド (退出) ルールは、ポート 80 または 443 へのトラフィックを許可する必要があります。

    • ネットワーク ACL のアウトバウンド (退出) ルールは、TCP ポート 80 または 443 へのトラフィックを許可する必要があります。

    • ネットワーク ACL のインバウンド (進入) ルールは、TCP ポート 1024-65535 でのトラフィックを許可する必要があります。

    • パブリックインターネットに接続する Amazon Elastic Compute Cloud (Amazon EC2) インスタンスには、インターネット接続が必要です。

  • Amazon Virtual Private Cloud (Amazon VPC) エンドポイント

    
Amazon VPC エンドポイントを介して Amazon SQS にアクセスする場合、エンドポイントセキュリティグループは、ポート 443 でクライアントセキュリティグループへのインバウンドトラフィックを許可する必要があります。VPC エンドポイントのサブネットに関連付けられたネットワーク ACL には、以下の設定が必要です。

    • ネットワーク ACL のアウトバウンド (退出) ルールは、TCP ポート 1024-65535 (エフェメラルポート) でのトラフィックを許可する必要があります。

    • ネットワーク ACL のインバウンド (進入) ルールは、ポート 443 でのトラフィックを許可する必要があります。

また、Amazon SQS の VPC エンドポイントの AWS Identity and Access Management (IAM) ポリシーは、アクセスを許可する必要があります。次の VPC エンドポイントポリシーの例では、Amazon SQS キュー MyQueue にメッセージを送信することを IAM ユーザー MyUser に許可するよう指定しています。その他のアクション、IAM ユーザー、Amazon SQS リソースは、VPC エンドポイント経由のアクセスが拒否されます。

{ "Statement": [{ "Action": ["sqs:SendMessage"], "Effect": "Allow", "Resource": "arn:aws:sqs:us-east-2:123456789012:MyQueue", "Principal": { "AWS": "arn:aws:iam:123456789012:user/MyUser" } }] }

UnknownHostException error

UnknownHostException エラーは、ホスト IP アドレスを確認できなかった場合に発生します。

トラブルシューティング -

nslookup ユーティリティを使用して、ホスト名に関連付けられた IP アドレスを返します。

  • Windows and Linux OS

    nslookup sqs.<region>.amazonaws.com 
  • AWS CLI または SDK for Python のレガシーエンドポイント:

    nslookup <region>.queue.amazonaws.com

失敗した出力を受け取った場合は、「AWS 情報センターガイド」の「DNS の仕組み、および部分的または断続的な DNS 障害をトラブルシューティングする方法を教えてください。」の指示に従ってください。

有効な出力を受け取った場合は、アプリケーションレベルの問題である可能性があります。アプリケーションレベルの問題を解決するには、以下の方法を試してください。

  • アプリケーションを再起動します。

  • Java アプリケーションに不正な DNS キャッシュがないことを確認します。可能であれば、DNS TTL に準拠するようにアプリケーションを設定します。詳細については、「DNS 名検索の JVM TTL を設定する」を参照してください。

ネットワークエラーのトラブルシューティング方法の詳細については、「AWS 情報センターガイド」の「Amazon SQS の ETIMEOUT および UnknownHostException 接続エラーのトラブルシューティング方法を教えてください。」を参照してください。