拡張 VPC ルーティングは Amazon Redshift ではどのように機能しますか?
Amazon Redshift で拡張 VPC ルーティングを有効にしようとしています。拡張 VPC ルーティングはどのように機能しますか? また、それを使用するための重要な考慮事項は何ですか?
簡単な説明
Amazon Redshift では、COPY、UNLOAD、および Amazon Redshift Spectrum によって作成されたネットワークトラフィックは、ネットワークインターフェイスを介して流れます。このネットワークインターフェイスは Amazon Redshift クラスターの内部にあり、Amazon Virtual Private Cloud (Amazon VPC) の外側にあります。デフォルトでは、ネットワークトラフィックはパブリックインターネットを介してルーティングされ、宛先に到達します。
ただし、Amazon Redshift 拡張 VPC ルーティングを有効にすると、Amazon Redshift は、代わりに VPC を介してネットワークトラフィックをルーティングします。Amazon Redshift 拡張 VPC ルーティングでは、利用可能なルーティングオプションを使用し、ネットワークトラフィックについて最も特定的なルートを優先します。VPC エンドポイントは、ルートの優先度において最も優先されます。VPC エンドポイントが利用できない場合、Amazon Redshift はネットワークトラフィックをインターネットゲートウェイ、NAT インスタンス、または NAT ゲートウェイを介してルーティングします。
Amazon Redshift 拡張 VPC ルーティングを有効にするかどうかを判断するには、次のユースケースを検討してください。
- パブリックインターネットを介してではなく、VPC ゲートウェイエンドポイントを介する COPY または UNLOAD の Amazon S3 トラフィック。
- VPC またはオンプレミスサーバーのリモートホストからの (SSH 取り込みを介した COPY コマンドの実行による) SSH トラフィック。
- VPC インターフェイスエンドポイントを介した Redshift Spectrum 向けの AWS Glue、Amazon Athena、または Apache Hive メタストアのトラフィック。
- ピア接続された VPC にあるプライベート Amazon Relational Database Service (Amazon RDS) インスタンスへのフェデレーションクエリ。
Amazon Redshift 拡張 VPC ルーティングがクラスターのニーズに合っているかどうかを判断するには、次の考慮事項に留意してください。
- ネットワークトラフィックを制御できます。
- ネットワークトラフィックにプライベート IP アドレスを使用するため、セキュリティを強化します。
- Amazon Redshift が他のリソースにアクセスする方法に影響します。したがって、拡張 VPC ルーティングでは、セキュリティグループ、ネットワークアクセスコントロールリスト (ネットワーク ACL)、またはルートテーブルを設定するときに、追加のオーバーヘッドが発生することがあります。
注意: 正しく設定されていない場合、拡張 VPC ルーティングにより、COPY、UNLOAD、または Redshift Spectrum ジョブが失敗する可能性があります。 - クラスターのパフォーマンスは向上しません。
解決方法
Amazon Redshift によるルーティングメソッドの優先順位付け
重要: 拡張 VPC ルーティングが有効な場合、VPC を介したトラフィックフローは自動的に有効になりません。VPC エンドポイントを作成し、サブネットのルートテーブルで指定する必要があります。
複数のネットワークパスが存在する場合、Amazon Redshift は利用可能かつ最も特定的なルートを介してトラフィックをルーティングします。
例 1: Amazon Simple Storage Service (Amazon S3) ゲートウェイエンドポイント
次の例では、Amazon Redshift は Amazon S3 ゲートウェイエンドポイント (「vpce-xxxxx」) を介してネットワークトラフィックをルーティングします。
Destination | Target ------------------------- 10.0.0.0/16 | local 0.0.0.0/0 | igw-xxxxx pl-6fa54006 | vpce-xxxxx
注意: VPC 内の各サブネットは、ルートテーブルに関連付ける必要があります。
例 2: インターネット、NAT ゲートウェイ、または NAT インスタンス
サブネットルートテーブルの次の例では、Amazon S3 トラフィックはインターネットゲートウェイ (「igw-xxxxx」) を介してルーティングされます。
Destination | Target ------------------------- 10.0.0.0/16 | local 0.0.0.0/0 | igw-xxxxx
例 3: 宛先への利用可能なルートがない
利用可能なルーティング方法がなく、ルートテーブルが S3 に到達できない場合、COPY および UNLOAD のネットワークトラフィックは次のようにタイムアウトします。
Destination | Target ------------------------------ 10.0.0.0/16 | local
数回の再試行後、S3 に到達できないルーティング方法により、次のエラーメッセージが表示されます。
"ERROR: S3CurlException: Connection timed out after 50001 milliseconds, CurlError 28, multiCurlError 0, CanRetry 1, UserError 0"
拡張 VPC ルーティングが有効になっているかどうかを確認しています。
Amazon Redshift で 拡張 VPC ルーティングが有効になっているかどうかを確認するには、次のいずれかの方法を使用します。
- Amazon Redshift コンソール: Amazon Redshift コンソールを使用して、拡張 VPC ルーティングが有効になっているかどうかを確認できます。詳細については、拡張 VPC ルーティングを有効にするを参照してください。
- AWS コマンドラインインターフェイス (AWS CLI): describe-clusters および grep コマンドを使用して、拡張 VPC ルーティングが「true」に設定されているかどうかを確認します。
- VPC フローログ: フローログを使用して、VPC 内のネットワークインターフェイスとの間で送受信される IP トラフィックに関する情報をキャプチャします。
拡張 VPC ルーティング設定を確認するために使用される AWS CLI コマンド構文の例を次に示します。
$ aws redshift describe-clusters --cluster-id <cluster-id> | grep EnhancedVpcRouting || EnhancedVpcRouting | True
VPC フローログの例を次に示します。ここでは、プライベート Amazon Redshift IP アドレスと S3 バケット間の COPY ネットワークトラフィックを示します。
Account_ID ENI Source_IP Destination_IP Source_Port Destination_Port Protocol Packets Bytes Start_Time End_Time ...... 2 540754XXXXXX eni-01783841dad81XXXX 52.216.29.118 172.31.13.236 443 37516 6 279740 390798072 1589668161 1589668221 ACCEPT OK 2 540754XXXXXX eni-01783841dad81XXXX 172.31.13.236 52.216.29.118 37516 443 6 9206 368276 1589668161 1589668221 ACCEPT OK ......
その他の考慮事項
- Amazon S3 VPC エンドポイントを使用している場合、S3 バケットは Amazon Redshift クラスターと同じリージョンに存在する必要があります。
- VPC で DNS サポートが有効になっている必要があります。カスタム DNS を使用している場合は、Amazon S3 および AWS Glue サービスのエンドポイントが解決できることを確認してください。
- トラフィックが VPC を介して Redshift Spectrum から AWS Glue にプライベートに流れるように、AWS Glue インターフェイスエンドポイントを設定してください。それ以外の場合は、NAT ゲートウェイまたはインターネットゲートウェイが必要です。
関連するコンテンツ
- 質問済み 10ヶ月前lg...
- 承認された回答質問済み 6ヶ月前lg...
- 質問済み 1年前lg...
- 質問済み 6ヶ月前lg...
- AWS公式更新しました 2年前
- AWS公式更新しました 2年前
- AWS公式更新しました 2年前
- AWS公式更新しました 1年前