Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

複数の VPC から中央のAWS のサービスエンドポイントにプライベートにアクセスする - AWS 規範ガイダンス

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

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

複数の VPC から中央のAWS のサービスエンドポイントにプライベートにアクセスする

マーティン・グエントナー(AWS)とサミュエル・ゴードン(AWS)によって作成されました

概要

ユーザー環境のセキュリティとコンプライアンスの要件により、Amazon Web Services (AWS) のサービスまたはエンドポイントへのトラフィックがパブリックインターネットを経由してはならないことが指定されている場合があります。このパターンは、中央のハブ VPC が複数の分散スポーク VPCs に接続されるハブアンドスポークトポロジー向けにデザインされたソリューションです。このソリューションでは、AWS PrivateLink を使用して、ハブアカウントの AWS のサービスのインターフェイス VPC エンドポイントを作成します。次に、トランジットゲートウェイと分散型ドメインネームシステム (DNS) ルールを使用して、接続されている VPC 全体でエンドポイントのプライベート IP アドレスへのリクエストを解決します。

このパターンでは、AWS Transit Gateway、着信の Amazon Route 53 Resolver エンドポイント、および共有 Route 53 転送ルールを使用して、接続されている VPC 内のリソースからの DNS クエリを解決する方法を説明します。エンドポイント、トランジットゲートウェイ、リゾルバー、転送ルールはハブアカウントで作成します。次に、AWS Resource Access Manager (AWS RAM) を使用して、トランジットゲートウェイと転送ルールをスポーク VPC と共有します。提供されている AWS CloudFormation テンプレートは、ハブ VPC とスポーク VPC にリソースをデプロイして設定するのに役立ちます。

前提条件と制限

前提条件

  • AWS Organizations の同じ組織で管理されている 1 つのハブアカウントと 1 つ以上のスポークアカウント。詳細については、「組織の作成と管理」 を参照してください。

  • AWS Resource Access Manager (AWS RAM) は、AWS Organizations の信頼されたサービスとして設定されています。詳細については、「Using AWS Organizations with other AWS services」 (他の AWS のサービスでの AWS Organizations の使用) を参照してください。

  • ハブアンドスポーク VPC で DNS 解決を有効にする必要があります。詳細については、「PVCの DNS 属性」 (Amazon 仮想プライベートクラウドドキュメント)を参照してください。

制約事項

  • このパターンは、同じ AWS リージョンのハブアカウントとスポークアカウントを接続します。マルチリージョンデプロイでは、リージョンごとにこのパターンを繰り返す必要があります。

  • AWS のサービスは、インターフェイス VPC エンドポイントとして PrivateLink と統合する必要があります。詳細なリストについては、「AWS PrivateLink と統合する AWS のサービス」 (PrivateLink ドキュメント) を参照してください。

  • アベイラビリティーゾーンのアフィニティは保証されません。例えば、アベイラビリティーゾーン A からのクエリは、アベイラビリティーゾーン B からの IP アドレスで応答する場合があります。

  • VPC エンドポイントに関連付けられた Elastic Network Interface には、1 秒あたり 10,000 クエリの制限があります。

アーキテクチャ

ターゲットテクノロジースタック

  • ハブ AWS アカウントのハブ VPC

  • スポーク AWS アカウント内の 1 つ以上のスポーク VPC

  • ハブアカウントの 1 つ以上のインターフェイス VPC エンドポイント

  • ハブアカウントの着信と発信のルート 53 リゾルバー

  • ハブアカウントにデプロイされ、スポークアカウントと共有されるルート 53 Resolver 転送ルール

  • ハブアカウントにデプロイされ、スポークアカウントと共有されるトランジットゲートウェイ

  • ハブとスポーク VPC を接続する AWS Transit Gateway

ターゲットアーキテクチャ

次のイメージは、このソリューションのサンプルアーキテクチャを示しています。このアーキテクチャでは、ハブアカウントの ルート 53 Resolver 転送ルールは、他のアーキテクチャコンポーネントと次のような関係にあります。

  1. 転送ルールは AWS RAM を使用してスポーク VPC と共有されます。

  2. 転送ルールは、ハブ VPC の発信リゾルバーに関連付けられています。

  3. 転送ルールは、ハブ VPC の着信リゾルバーを対象としています。

スポークアカウントとハブアカウントのリソースを表示するアーキテクチャダイアグラム。

次のイメージは、サンプルアーキテクチャを経由するトラフィックフローを示しています。

  1. スポーク VPC の Amazon Elastic Compute Cloud (Amazon EC2) インスタンスなどのリソースは、<service>.<region>.amazonaws.com に DNS リクエストを行います。リクエストはスポーク Amazon DNS リゾルバーによって受信されます。

  2. ハブアカウントから共有され、スポーク VPC に関連付けられているルート 53 転送ルールがリクエストをインターセプトします。

  3. ハブ VPC では、発信リゾルバーは転送ルールを使用してリクエストを着信リゾルバーに転送します。

  4. 着信リゾルバーは、ハブ VPC Amazon DNS リゾルバーを使用して IP アドレスを VPC エンドポイントのプライベート IP <service>.<region>.amazonaws.com アドレスに解決します。VPC エンドポイントが存在しない場合は、パブリック IP アドレスに解決されます。

スポーク VPC 内のリソースからハブ VPC 内のサービスエンドポイントへのトラフィックフロー。

ツール

AWS のサービスとツール

  • AWS CloudFormation を使用すると、AWS リソースをセットアップし、迅速かつ一貫したプロビジョニングを行い、AWS アカウントとリージョン全体でライフサイクル全体にわたってリソースを管理できます。

  • Amazon Elastic Compute Cloud (Amazon EC2)」は、AWS クラウドでスケーラブルなコンピューティング容量を提供します。仮想サーバーを必要な数だけ起動して、迅速にスケールアップまたはスケールダウンができます。

  • AWS Identity and Access Management (IAM)」は、AWS リソースへのアクセスを安全に管理し、誰が認証され、使用する権限があるかを制御するのに役立ちます。

  • AWS Resource Access Manager (AWS RAM) は、 アカウント全体にわたり、リソースを安全に共有して運用上のオーバーヘッドを削減して、可視性と監査性を高めます。

  • Amazon Route 53 は、可用性と拡張性に優れたドメインネームシステム (DNS) ウェブサービスです。

  • AWS Systems Manager」は、AWS クラウドで実行されるアプリケーションとインフラストラクチャの管理に役立ちます。アプリケーションとリソースの管理が簡略化され、オペレーション上の問題の検出と解決時間が短縮され、AWS リソースを大規模かつセキュアに管理できるようになります。

  • AWS Transit Gateway は VPC とオンプレミスネットワークを接続する一元的ハブです。

  • Amazon Virtual Private Cloud (Amazon VPC) を使用すると、定義した仮想ネットワーク内で AWS リソースを起動できます。この仮想ネットワークは、お客様自身のデータセンターで運用されていた従来のネットワークに似ていますが、AWS のスケーラブルなインフラストラクチャを使用できるというメリットがあります。

その他のツールとサービス

  • nslookup」 は DNS レコードのクエリに使用されるコマンドラインツールです。このパターンでは、このツールを使用してソリューションをテストします。

コードリポジトリ

このパターンのコードは、GitHub 内の「vpc-endpoint-sharing」リポジトリで利用できます。このパターンには、次の 2 つの AWS CloudFormation テンプレートが用意されています。

  • ハブアカウントに以下のリソースをデプロイするためのテンプレート。

    • rSecurityGroupEndpoints — VPC エンドポイントへのアクセスを制御するセキュリティグループ。

    • rSecurityGroupResolvers — ルート 53 リゾルバーへのアクセスを制御するセキュリティグループ。

    • rKMSEndpointrSSMMessagesEndpointrSSMEndpointrEC2MessagesEndpoint — ハブアカウントのインターフェイス VPC エンドポイントの例 ユースケースに合わせてこれらのエンドポイントをカスタマイズします。

    • rInboundResolver — ハブの Amazon DNS リゾルバーに対して DNS クエリを解決する ルート 53 リゾルバー。

    • rOutboundResolver — クエリを着信リゾルバーに転送する発信ルート 53 リゾルバー。

    • rAWSApiResolverRule — すべてのスポーク VPC と共有される ルート 53 リゾルバーの転送ルール。

    • rRamShareAWSResolverRule — スポーク VPC rAWSApiResolverRule が転送ルールを使用できるようにする AWS RAM 共有。

    • * rVPC — 共有サービスのモデル化に使用されるハブ VPC。

    • * rSubnet1 — ハブリソースを格納するプライベートサブネット。

    • * rRouteTable1 — ハブ VPC のルートテーブル。

    • * rRouteTableAssociation1 — ハブ VPC rRouteTable1 のルートテーブルの場合、プライベートサブネットのアソシエーション。

    • * rRouteSpoke — ハブ VPC からスポーク VPC へのルート。

    • * rTgw — すべてのスポーク VPC と共有されるトランジットゲートウェイ。

    • * rTgwAttach — ハブ VPC rTgw がトラフィックをトランジットゲートウェイにルーティングできるようにするアタッチメント。

    • * rTgwSharerTgw スポークアカウントがトランジットゲートウェイを使用できるようにする AWS RAM 共有。

  • スポークアカウントに以下のリソースをデプロイするためのテンプレート。

    • rAWSApiResolverRuleAssociation — スポーク VPC がハブアカウントの共有転送ルールを使用できるようにするアソシエーション。

    • * rVPC — スポーク VPC。

    • * rSubnet1, rSubnet2, rSubnet3 — スポークプライベートリソースを格納するために使用される各アベイラビリティーゾーンのサブネット。

    • * rTgwAttach — スポーク VPC がトラフィックを rTgw トランジットゲートウェイにルーティングできるようにするアタッチメント。

    • * rRouteTable1 — スポーク VPC のルートテーブル。

    • * rRouteEndpoints — スポーク VPC 内のリソースからトランジットゲートウェイへのルート。

    • * rRouteTableAssociation1/2/3 — スポーク VPC の rRouteTable1 に対して、プライベートサブネットのアソシエーション。

    • * rInstanceRole — ソリューションのテストに使用される IAM ロール。

    • * rInstancePolicy — ソリューションをテストするために使用される IAM ポリシー。

    • * rInstanceSg — ソリューションのテストに使用されたセキュリティグループ。

    • * rInstanceProfile — ソリューションのテストに使用された IAM インスタンスプロファイル。

    • * rInstance — AWS Systems Manager を介してアクセスできるように事前設定された EC2 インスタンス。このインスタンスを使用してソリューションをテストします。

* これらのリソースはサンプルアーキテクチャをサポートしているため、既存のランディングゾーンにこのパターンを実装する場合は必要ない場合があります。

エピック

タスク説明必要なスキル

コードリポジトリを複製します。

  1. コマンドラインインターフェースで、作業ディレクトリをサンプルファイルを保存する場所に変更します。

  2. 次のコマンドを入力します。

    git clone https://github.com/aws-samples/vpc-endpoint-sharing.git
ネットワーク管理者、クラウドアーキテクト

テンプレートを変更します。

  1. クローンしたリポジトリで hub.yml ファイルと spoke.yml ファイルを開きます。

  2. これらのテンプレートにより、作成されたリソースを確認し、環境に合わせて必要に応じてテンプレートを調整してください。詳細なリストについては、「ツール」 のコードリポジトリセクションを参照してください。アカウントにすでにこれらのリソースがある場合は、CloudFormation テンプレートから削除します。詳細については、「 Working with templates」 (CloudFormation ドキュメント) を参照してください。

  3. hub.yml ファイルと spoke.yml ファイルを保存して閉じます。

ネットワーク管理者、クラウドアーキテクト

CloudFormation テンプレートの準備

タスク説明必要なスキル

コードリポジトリを複製します。

  1. コマンドラインインターフェースで、作業ディレクトリをサンプルファイルを保存する場所に変更します。

  2. 次のコマンドを入力します。

    git clone https://github.com/aws-samples/vpc-endpoint-sharing.git
ネットワーク管理者、クラウドアーキテクト

テンプレートを変更します。

  1. クローンしたリポジトリで hub.yml ファイルと spoke.yml ファイルを開きます。

  2. これらのテンプレートにより、作成されたリソースを確認し、環境に合わせて必要に応じてテンプレートを調整してください。詳細なリストについては、「ツール」 のコードリポジトリセクションを参照してください。アカウントにすでにこれらのリソースがある場合は、CloudFormation テンプレートから削除します。詳細については、「 Working with templates」 (CloudFormation ドキュメント) を参照してください。

  3. hub.yml ファイルと spoke.yml ファイルを保存して閉じます。

ネットワーク管理者、クラウドアーキテクト
タスク説明必要なスキル

ハブリソースをデプロイする。

hub.yml テンプレートを使用して、CloudFormation スタックを作成します。提示された場合、テンプレートのパラメータに値を提供します。詳細については、「スタックの作成」 (CloudFormation ドキュメント) を参照してください。

クラウドアーキテクト、ネットワーク管理者

スポーク・リソースをデプロイします。

spoke.yml テンプレートを使用して、CloudFormation スタックを作成します。提示された場合、テンプレートのパラメータに値を提供します。詳細については、「スタックの作成」 (CloudFormation ドキュメント) を参照してください。

クラウドアーキテクト、ネットワーク管理者

ターゲットアカウントにリソースをデプロイします。

タスク説明必要なスキル

ハブリソースをデプロイする。

hub.yml テンプレートを使用して、CloudFormation スタックを作成します。提示された場合、テンプレートのパラメータに値を提供します。詳細については、「スタックの作成」 (CloudFormation ドキュメント) を参照してください。

クラウドアーキテクト、ネットワーク管理者

スポーク・リソースをデプロイします。

spoke.yml テンプレートを使用して、CloudFormation スタックを作成します。提示された場合、テンプレートのパラメータに値を提供します。詳細については、「スタックの作成」 (CloudFormation ドキュメント) を参照してください。

クラウドアーキテクト、ネットワーク管理者
タスク説明必要なスキル

AWS のサービスへのプライベート DNS クエリをテストします。

  1. AWS Systems Manager の一機能であるセッションマネージャーを使用して rInstance EC2 インスタンスConnect。詳細については、「セッションマネージャーを使用して Linux インスタンスへのConnect」 (Amazon EC2 ドキュメント) を参照してください。

  2. ハブアカウントに VPC エンドポイントがあるAWS のサービスの場合は、nslookup を使用して、着信の ルート 53 Resolver のプライベート IP アドレスが返されることを確認します。

    Amazon Systems Manager nslookup エンドポイントに到達するための使用例を次に示します。

    nslookup ssm.<region>.amazonaws.com
  3. AWS コマンドラインインターフェイス (AWS CLI) で、変更がサービスの機能に影響を及ぼさなかったことを確認するのに役立つコマンドを入力します。コマンドの一覧については、「AWS CLI コマンドリファレンス」 を参照してください。

    たとえば、次のコマンドでは、Amazon Systems Manager のドキュメントのリストが返されます。

    aws ssm list-documents
ネットワーク管理者

AWS のサービスへのパブリック DNS クエリをテストします。

  1. ハブアカウントに VPC エンドポイントがない AWS のサービスの場合は、nslookup を使用してパブリック IP アドレスが返されることを確認します。Amazon Simple Notification Service (Amazon SNS) nslookup エンドポイントに到達するための使用例を次に示します。

    nslookup sns.<region>.amazonaws.com
  2. AWS CLI では、変更がサービスの機能に影響を及ぼさなかったことを確認するのに役立つコマンドを入力します。コマンドの一覧については、「AWS CLI コマンドリファレンス」 を参照してください。

    たとえば、ハブアカウントに Amazon SNS トピックが存在する場合、次のコマンドはトピックのリストを返します。

    aws sns list-topics
ネットワーク管理者

ソリューションをテストする

タスク説明必要なスキル

AWS のサービスへのプライベート DNS クエリをテストします。

  1. AWS Systems Manager の一機能であるセッションマネージャーを使用して rInstance EC2 インスタンスConnect。詳細については、「セッションマネージャーを使用して Linux インスタンスへのConnect」 (Amazon EC2 ドキュメント) を参照してください。

  2. ハブアカウントに VPC エンドポイントがあるAWS のサービスの場合は、nslookup を使用して、着信の ルート 53 Resolver のプライベート IP アドレスが返されることを確認します。

    Amazon Systems Manager nslookup エンドポイントに到達するための使用例を次に示します。

    nslookup ssm.<region>.amazonaws.com
  3. AWS コマンドラインインターフェイス (AWS CLI) で、変更がサービスの機能に影響を及ぼさなかったことを確認するのに役立つコマンドを入力します。コマンドの一覧については、「AWS CLI コマンドリファレンス」 を参照してください。

    たとえば、次のコマンドでは、Amazon Systems Manager のドキュメントのリストが返されます。

    aws ssm list-documents
ネットワーク管理者

AWS のサービスへのパブリック DNS クエリをテストします。

  1. ハブアカウントに VPC エンドポイントがない AWS のサービスの場合は、nslookup を使用してパブリック IP アドレスが返されることを確認します。Amazon Simple Notification Service (Amazon SNS) nslookup エンドポイントに到達するための使用例を次に示します。

    nslookup sns.<region>.amazonaws.com
  2. AWS CLI では、変更がサービスの機能に影響を及ぼさなかったことを確認するのに役立つコマンドを入力します。コマンドの一覧については、「AWS CLI コマンドリファレンス」 を参照してください。

    たとえば、ハブアカウントに Amazon SNS トピックが存在する場合、次のコマンドはトピックのリストを返します。

    aws sns list-topics
ネットワーク管理者

関連リソース

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.