Amazon Virtual Private Cloud
ユーザーガイド

共有 VPC の使用

VPC 共有を使用すると、複数の AWS アカウントで自分のアプリケーションリソース (Amazon EC2 インスタンス、Amazon Relational Database Service (RDS) データベース、Amazon Redshift クラスター、AWS Lambda 関数など) を、共有されて一元管理されている Amazon Virtual Private Cloud (VPC) 内に作成できます。このモデルでは、VPC を所有するアカウント (所有者) は、AWS Organizations で同じ組織に属する他のアカウント (参加者) と 1 つまたは複数のサブネットを共有します。サブネットが共有されると、参加者は共有しているサブネット内にある自分のアプリケーションリソースを表示、作成、変更、および削除できます。参加者は、他の参加者または VPC 所有者に属するリソースを表示、変更、または削除することはできません。

共有 VPC の前提条件

組織のマスターアカウントで、リソース共有を有効にしておく必要があります。リソース共有の有効化の詳細については、AWS RAM ユーザーガイドの「AWS Organizations での共有の有効化」を参照してください。

サブネットの共有

デフォルト以外のサブネットを組織内の他のアカウントと共有できます。サブネットを共有するには、まず共有するサブネットを使用するリソース共有と、そのサブネットを共有する AWS アカウント、組織単位、または組織全体を作成します。リソース共有の作成の詳細については、AWS RAM ユーザーガイドの「リソース共有の作成」を参照してください。

コンソールを使用してサブネットを共有するには

  1. https://console.aws.amazon.com/vpc/にある Amazon VPC コンソールを開きます。

  2. ナビゲーションペインで [サブネット] を選択します。

  3. サブネットを選択してから、[Actions (アクション)]、[Share subnet (サブネットの共有)] の順に選択します。

  4. リソース共有を選択してから、[Share subnet (サブネットの共有)] を選択します。

AWS CLI を使用してサブネットを共有するには

create-resource-share および associate-resource-share コマンドを使用します。

アベイラビリティーゾーン間でのサブネットのマッピング

リソースがリージョンの複数のアベイラビリティーゾーンに分散されるようにするために、アベイラビリティーゾーンは各アカウントの名前に個別にマッピングされます。たとえば、お客様の AWS アカウントのアベイラビリティーゾーン us-east-1a は別の AWS アカウントのアベイラビリティーゾーン us-east-1a と同じ場所にはない可能性があります。

VPC 共有のためにアカウント間でアベイラビリティーゾーンを調整するには、アベイラビリティーゾーンの一意で一貫性のある識別子である AZ ID を使用する必要があります。たとえば、use1-az1us-east-1 リージョンのアベイラビリティーゾーンの 1 つです。アベイラビリティーゾーン ID により、アカウント間でリソースの場所を区別できます。詳細については、AWS RAM ユーザーガイドの「リソースの AZ ID」を参照してください。

共有サブネットの共有解除

所有者は、いつでも参加者との共有サブネットの共有を解除できます。所有者が共有サブネットの共有を解除した後、以下のルールが適用されます。

  • 既存の参加者リソースは非共有サブネットで引き続き実行される。

  • 参加者は非共有サブネットに新しいリソースを作成できない。

  • 参加者はサブネット内のリソースを変更、定義、削除できる。

  • 参加者のリソースがまだ非共有サブネットにある場合、所有者は共有サブネットまたは共有サブネット VPC を削除できない。所有者は、参加者が非共有サブネット内のすべてのリソースを削除した後でのみ、サブネットまたは共有サブネット VPC を削除できます。

コンソールを使用してサブネットの共有を解除するには

  1. https://console.aws.amazon.com/vpc/にある Amazon VPC コンソールを開きます。

  2. ナビゲーションペインで、[Subnets] を選択します。

  3. サブネットを選択してから、[Actions (アクション)]、[Share subnet (サブネットの共有)] の順に選択します。

  4. [Actions (アクション)]、[Stop sharing (共有の停止)] の順に選択します。

AWS CLI を使用してサブネットの共有を解除するには

disassociate-resource-share コマンドを使用します。

共有サブネットの所有者の識別

参加者は、Amazon VPC コンソールまたはコマンドラインツールを使用して、共有しているサブネットを表示できます。

コンソールを使用してサブネット所有者を識別するには

  1. https://console.aws.amazon.com/vpc/にある Amazon VPC コンソールを開きます。

  2. ナビゲーションペインで、[Subnets] を選択します。[Owner (所有者)] 列にサブネットの所有者が表示されます。

AWS CLI を使用してサブネット所有者を識別するには

describe-subnets および describe-vpcs コマンドを使用します。これらの出力に所有者の ID が含まれます。

共有サブネットのアクセス許可

所有者のアクセス許可

VPC 所有者は、サブネット、ルートテーブル、ネットワーク ACL、ピアリング接続、VPC エンドポイント、PrivateLink エンドポイント、インターネットゲートウェイ、NAT ゲートウェイ、仮想プライベートゲートウェイ、中継ゲートウェイアタッチなど、VPC レベルのすべてのリソースの作成、管理、削除を担当します。

VPC 所有者は、参加者が作成したセキュリティグループを含む参加者リソースを変更または削除することはできません。VPC 所有者は、トラブルシューティングと監査を容易にするために、すべてのネットワークインターフェイスの詳細と、参加者リソースにアタッチされているセキュリティグループを表示できます。VPC 所有者は、トラフィックのモニタリングまたはトラブルシューティング用に、VPC、サブネット、または ENI レベルのフローログのサブスクリプションを作成できます。

参加者のアクセス許可

共有 VPC の参加者は、Amazon EC2 インスタンス、Amazon RDS データベース、ロードバランサーなどのリソースの作成、管理、削除を担当します。参加者は、他の参加者アカウントに属するリソースを表示したり変更したりはできません。参加者は、ルートテーブルの詳細と、共有しているサブネットにアタッチされているネットワーク ACL を表示できます。ただし、ルートテーブル、ネットワーク ACL、サブネットなど、VPC レベルのリソースは変更できません。参加者は、セキュリティグループ ID を使用して、他の参加者または所有者に属するセキュリティグループを参照できます。参加者は、自分が所有するインターフェイスのフローログのサブスクリプションのみを作成できます。

所有者と参加者の請求と計測

共有 VPC では、各参加者は Amazon EC2 インスタンス、Amazon Relational Database Service データベース、Amazon Redshift クラスター、AWS Lambda 関数などのアプリケーションリソースに対して料金を請求されます。参加者はアベイラビリティーゾーンのデータ転送、VPC ピアリング接続を介するデータ転送、AWS Direct Connect ゲートウェイを介するデータ転送に対しても料金を請求されます。VPC 所有者は、NAT ゲートウェイ、仮想プライベートゲートウェイ、トランジットゲートウェイ、PrivateLink、および VPC エンドポイントでのデータ処理とデータ転送に対して時間単位料金が課金されます (該当する場合)。同じアベイラビリティーゾーン内のデータ転送 (AZ ID で一意に識別される) は、通信リソースを所有しているアカウントにかかわらず無料です。

共有サブネットでサポートされていないサービス

参加者は、共有サブネット内の次のサービスのリソースを作成できません。

  • AWS CloudHSM Classic

  • Network Load Balancer

    注記

    VPC 所有者は、必要に応じてこれらのリソースを共有 VPC に作成できます。

制約事項

VPC 共有の使用には、以下の制限があります。

  • 所有者は、AWS Organizations の同じ組織内にある他のアカウントまたは組織単位とのみサブネットを共有できます。

  • 所有者は、デフォルトの VPC 内にあるサブネットを共有できません。

  • 参加者は、他の参加者または所有者が所有するセキュリティグループを使用してリソースを起動することはできません。

  • VPC のデフォルトセキュリティグループは所有者に属しているため、参加者はデフォルトのセキュリティグループを使用してリソースを起動することはできません。

  • サービスの制限はアカウントごとに適用されます。サービスの制限の詳細については、アマゾン ウェブ サービス全般のリファレンス の「AWS のサービスの制限」を参照してください。

  • VPC タグは参加者と共有されません。

  • 参加者が共有サブネットでリソースを起動するときは、デフォルトのセキュリティグループに頼らずに、自分のセキュリティグループをリソースにアタッチする必要があります。参加者は、VPC 所有者に属しているため、デフォルトのセキュリティグループを使用することはできません。