AWS PrivateLink - スケーラブルで安全なマルチ VPC の AWS ネットワークインフラストラクチャを構築する

AWS PrivateLink

特定の VPC (サービスプロバイダー) にあるサービス/アプリケーションを、AWS リージョン内の他のコンシューマー VPC にプライベートに公開し、コンシューマー VPC だけがサービスプロバイダー VPC への接続を開始できるようにしたい場合があります。例えば、プライベートアプリケーションからサービスプロバイダー API にアクセスできるようにします。

AWS PrivateLink を使用するには、VPC でアプリケーション用の Network Load Balancer を作成し、このロードバランサーを指す VPC エンドポイントサービス設定を作成します。次に、サービスコンシューマーがサービスへのインターフェイスエンドポイントを作成します。これにより、Elastic Network Interface がプライベート IP アドレスとともにサブネットに作成されます。このアドレスは、サービスへのトラフィックのエントリポイントとなります。コンシューマーとサービスは同じ VPC 内に存在する必要はありません。VPC が異なる場合、コンシューマー VPC とサービスプロバイダー VPC の IP アドレス範囲は重複しても構いません。他の VPC 内のサービスにアクセスするためのインターフェイス VPC エンドポイントを作成するほかに、AWS PrivateLink を介してサポートされている AWS のサービスにプライベートにアクセスするためのインターフェイス VPC エンドポイントを作成こともできます (図 5)。

図 5 – AWS PrivateLink

Transit Gateway、VPC ピアリング、AWS PrivateLink のどれを選択するかは、接続によって異なります。

AWS PrivateLink - クライアント/サーバーセットアップで、サービスプロバイダー VPC 内の特定のサービスや一連のインスタンスへの単方向アクセスを 1 つ以上のコンシューマー VPC に許可する場合は、AWS PrivateLink を使用します。コンシューマー VPC 内のクライアントだけが、サービスプロバイダー VPC 内のサービスへの接続を開始できます。これは、2 つの VPC 内のクライアントとサーバーの IP アドレスが重複している場合にも適しています。AWS PrivateLink は、クライアント VPC 内の ENI を活用してサービスプロバイダーとの IP 競合を回避します。AWS PrivateLink のエンドポイントには、VPC ピアリング、VPN、および AWS Direct Connect 経由でアクセスできます。

VPC ピアリングと Transit Gateway - VPC 間でレイヤー 3 の IP 接続を有効にする場合は、VPC ピアリングと Transit Gateway を使用します。

アーキテクチャでは、以上のテクノロジーを組み合わせてさまざまなユースケースに対応できます。これらすべてのサービスは、相互に組み合わせて運用できます。例えば、AWS PrivateLink では、API スタイルのクライアント/サーバー接続を処理します。VPC ピアリングでは、リージョン内でプレイスメントグループが引き続き必要な場合やリージョン間接続が必要な場合に、直接接続要件を処理します。Transit Gateway では、大規模な VPC 間の接続やハイブリッド接続のエッジ統合を簡素化します。