AWS PrivateLink の概念 - Amazon Virtual Private Cloud

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

AWS PrivateLink の概念

Amazon VPC を使用して、論理的に分離された仮想ネットワークである仮想プライベートクラウド (VPC) を定義できます。VPC 内のクライアントがその VPC 外の宛先に接続することを許可できます。例えば、VPC にインターネットゲートウェイを追加してインターネットへのアクセスを許可したり、VPN 接続を追加してオンプレミスネットワークへのアクセスを許可したりします。または、 AWS PrivateLink を使用して、VPC 内のクライアントがプライベート IP アドレスを使用して他の VPCs内のサービスやリソースに接続できるようにします。これは、それらのサービスやリソースが VPC で直接ホストされているかのように行います。

AWS PrivateLinkの使用を開始する際に理解しておくべき重要な概念を次に示します。

アーキテクチャ図

次の図は、 AWS PrivateLink の仕組みの概要を示しています。コンシューマーは、プロバイダーがホストするエンドポイントサービスとリソースに接続するための VPC エンドポイントを作成します。

サービスコンシューマーは、プロバイダーがホストするエンドポイントサービスとリソースに接続するための VPC エンドポイントを作成します。

プロバイダー

プロバイダーに関連する概念を理解します。

サービスプロバイダー

サービスの所有者はサービスプロバイダーです。サービスプロバイダーには AWS、 AWS 、パートナー、その他が含まれます AWS アカウント。サービスプロバイダーは、EC2 インスタンスなどの AWS リソースまたはオンプレミスサーバーを使用してサービスをホストできます。

リソースプロバイダー

データベースや Amazon EC2 インスタンスなどのリソースの所有者は、リソースプロバイダーです。リソースプロバイダーには、 AWS サービス、 AWS パートナー、その他の AWS アカウントが含まれます。リソースプロバイダーは、VPC またはオンプレミスでVPCsホストできます。

エンドポイントサービス

サービスプロバイダーは、エンドポイントサービスを作成して、あるリージョンでそのサービスを利用できるようにします。サービスプロバイダーは、エンドポイントサービスを作成するときにロードバランサーを指定する必要があります。ロードバランサーは、サービスコンシューマーからリクエストを受け取ってサービスにルーティングします。

デフォルトでは、サービスコンシューマーはエンドポイントサービスを使用できません。特定の AWS プリンシパルがエンドポイントサービスに接続できるようにするアクセス許可を追加する必要があります。

サービス名

各エンドポイントサービスはサービス名で識別されます。サービスコンシューマーは、VPC エンドポイントを作成するときに、サービスの名前を指定する必要があります。サービスコンシューマーは、サービス名をクエリできます AWS のサービス。サービスプロバイダーは、自社のサービスの名前をサービスコンシューマーと共有する必要があります。

サービスの状態

エンドポイントサービスの可能な状態は次のとおりです。

  • Pending - エンドポイントサービスを作成しています。

  • Available - エンドポイントサービスが使用可能です。

  • Failed - エンドポイントサービスを作成できませんでした。

  • Deleting - サービスプロバイダーがエンドポイントサービスを削除し、その処理が進行中です。

  • Deleted - エンドポイントサービスが削除されました。

リソース設定

リソースプロバイダーは、リソースを共有するためのリソース設定を作成します。リソース設定は、データベースなどの単一のリソースまたはリソースのグループを表す論理オブジェクトです。リソースには、IP アドレス、ドメイン名ターゲット、または Amazon Relational Database Service (Amazon RDS) データベースを使用できます。

他のアカウントと共有する場合、リソースプロバイダーは AWS Resource Access Manager (AWS RAM) リソース共有を介してリソースを共有し、他のアカウントの特定の AWS プリンシパルがリソース VPC エンドポイントを介してリソースに接続できるようにする必要があります。

リソース設定は、サービスネットワーク VPC エンドポイントを介してプリンシパルが接続するサービスネットワークに関連付けることができます。

リソースゲートウェイ

リソースゲートウェイは、リソースを共有している VPC への進入ポイントです。プロバイダーは、VPC からリソースを共有するためのリソースゲートウェイを作成します。

サービスまたはリソースコンシューマー

サービスまたはリソースのユーザーはコンシューマーです。コンシューマーはVPCs またはオンプレミスからエンドポイントサービスとリソースにアクセスできます。

VPC エンドポイント

コンシューマーは VPC エンドポイントを作成して、VPC をエンドポイントサービスまたはリソースに接続します。コンシューマーは、VPC エンドポイントを作成するときに、エンドポイントサービス、リソース、またはサービスネットワークを指定する必要があります。VPC エンドポイントには複数のタイプがあります。必要な VPC エンドポイントのタイプを作成する必要があります。

  • Interface - TCP または UDP トラフィックをエンドポイントサービスに送信するインターフェイスエンドポイントを作成します。エンドポイントサービス宛てのトラフィックは DNS を使用して解決されます。

  • GatewayLoadBalancer - Gateway Load Balancer エンドポイントを作成し、プライベート IP アドレスを使用してトラフィックを仮想アプライアンスのフリートに送信します。ルートテーブルを使用して、VPC から Gateway Load Balancer エンドポイントにトラフィックをルーティングします。Gateway Load Balancer は、トラフィックを仮想アプライアンスに分散し、需要に応じてスケールできます。

  • Resource - リソースエンドポイントを作成して、共有され、別の VPC にあるリソースにアクセスします。リソースエンドポイントを使用すると、データベース、Amazon EC2 インスタンス、アプリケーションエンドポイント、ドメイン名ターゲット、または別の VPC のプライベートサブネットやオンプレミス環境にある IP アドレスなどのリソースにプライベートかつ安全にアクセスできます。リソースエンドポイントはロードバランサーを必要とせず、リソースに直接アクセスできます。

  • Service network - サービスネットワークエンドポイントを作成して、作成または共有したサービスネットワークにアクセスします。単一のサービスネットワークエンドポイントを使用して、サービスネットワークに関連付けられている複数のリソースとサービスにプライベートかつ安全にアクセスできます。

別のタイプの VPC エンドポイントである Gateway があり、これはゲートウェイ エンドポイントを作成してトラフィックを Amazon S3 または DynamoDB に送信します。ゲートウェイエンドポイントは、他のタイプの VPC エンドポイントとは異なり AWS PrivateLink、 を使用しません。詳細については、「ゲートウェイエンドポイント」を参照してください。

エンドポイントのネットワークインターフェイス

エンドポイントネットワークインターフェイスは、エンドポイントサービス、リソース、またはサービスネットワーク宛てのトラフィックのエントリポイントとして機能するリクエスタマネージドネットワークインターフェイスです。VPC エンドポイントの作成時に指定した各サブネットに、エンドポイントのネットワークインターフェイスを作成します。

VPC エンドポイントが IPv4 をサポートしている場合、エンドポイントのネットワークインターフェイスは IPv4 アドレスを持ちます。VPC エンドポイントが IPv6 をサポートしている場合、エンドポイントのネットワークインターフェイスは IPv6 アドレスを持ちます。エンドポイントのネットワークインターフェイスの IPv6 アドレスに、インターネットからアクセスすることはできません。エンドポイントのネットワークインターフェイスを IPv6 アドレスで記述する場合は、denyAllIgwTraffic が有効になっていることに注意してください。

エンドポイントポリシー

VPC エンドポイントポリシーは、VPC エンドポイントにアタッチする IAM リソースポリシーです。これは、VPC エンドポイントを使用してエンドポイントサービスにアクセスできるプリンシパルを決定します。デフォルトの VPC エンドポイントポリシーでは、すべてのリソースに対して、VPC エンドポイント経由でのすべてのプリンシパルによるすべてのアクションが許可されます。

エンドポイントの状態

インターフェイス VPC エンドポイントを作成すると、エンドポイントサービスは接続リクエストを受け取ります。サービスプロバイダーは、リクエストを受け入れるか、または拒否できます。サービスプロバイダーがリクエストを受け入れると、サービスコンシューマーは、Available 状態になった後に VPC エンドポイントを使用できます。

VPC エンドポイントの可能な状態は次のとおりです。

  • PendingAcceptance - 接続リクエストが保留中です。これは、リクエストが手動で受け入れられた場合の初期状態です。

  • Pending - サービスプロバイダーが接続リクエストを受け入れました。これは、リクエストが自動で受け入れられた場合の初期状態です。サービスコンシューマーが VPC エンドポイントを変更すると、VPC エンドポイントはこの状態に戻ります。

  • Available - VPC エンドポイントが使用可能です。

  • Rejected - サービスプロバイダーが接続リクエストを拒否しました。サービスプロバイダーは、接続が使用可能になった後にその接続を拒否することもできます。

  • Expired - 接続リクエストの有効期限が切れました。

  • Failed - VPC エンドポイントを使用可能にできませんでした。

  • Deleting - サービスコンシューマーが VPC エンドポイントを削除し、その処理が進行中です。

  • Deleted - VPC エンドポイントが削除されました。

VPC からのトラフィックは、VPC エンドポイントとエンドポイントサービスまたはリソース間の接続を使用してエンドポイントサービスまたはリソースに送信されます。VPC エンドポイントとエンドポイントサービスまたはリソース間のトラフィックは、パブリックインターネットを経由することなく、ネットワーク内に AWS 留まります。

サービスプロバイダーは、サービスコンシューマーがエンドポイントサービスにアクセスできるように許可を追加します。サービスコンシューマーが接続を開始すると、サービスプロバイダーは接続リクエストを承諾または拒否します。リソース所有者またはサービスネットワーク所有者は、コンシューマーがリソースまたはサービスネットワークにアクセスできる AWS Resource Access Manager ように、 を介してリソース設定またはサービスネットワークをコンシューマーと共有します。

インターフェイス VPC エンドポイントを使用すると、コンシューマーはエンドポイントポリシーを使用して、VPC エンドポイントを使用してエンドポイントサービスまたはリソースにアクセスできる IAM プリンシパルを制御できます。

プライベートホストゾーン

ホストゾーンは、ドメインまたはサブドメインのトラフィックをルーティングする方法を定義する DNS レコードのコンテナです。パブリックホストゾーンでは、インターネット上でトラフィックをルーティングする方法をレコードで指定します。プライベートホストゾーンでは、VPC でトラフィックをルーティングする方法をレコードで指定します。

ドメイントラフィックを VPC エンドポイントにルーティングするように Amazon Route 53 を設定できます。詳細については、「ドメイン名を使用してトラフィックを VPC エンドポイントにルーティングする」を参照してください。

Route 53 を使用して分割期間 DNS を設定できます。ここでは、パブリックウェブサイトと を利用したエンドポイントサービスの両方に同じドメイン名を使用します AWS PrivateLink。コンシューマー VPC からのパブリックホスト名の DNS リクエストは、エンドポイントのネットワークインターフェイスのプライベート IP アドレスに解決されますが、VPC の外部からのリクエストは引き続きパブリックエンドポイントに解決されます。詳細については、「トラフィックをルーティングするための DNS メカニズムおよび AWS PrivateLink デプロイのフェイルオーバーの有効化」を参照してください。