AWS のサービス用にクロスリージョン VPC エンドポイントを設定するにはどうすればよいですか?

最終更新日: 2022 年 3 月 31 日

プライベートリンクを使用して、Amazon Simple Storage Cloud (Amazon S3) バケットなどの AWS リソースにアクセスできるように、クロスリージョン Amazon Virtual Private Cloud (Amazon VPC) エンドポイントを設定します。これを実行するにはどうすればよいですか?

簡単な説明

Amazon Elastic Compute Cloud (Amazon EC2)、VPC、Amazon Relational Database Service (Amazon RDS) などのリソースは、さまざまな AWS リージョンにデプロイできます。このデプロイにより、リソースの可用性が向上するとともに、ユーザーがデータにより高速にアクセスできるようになります。VPC エンドポイントをデプロイして、Amazon S3 や Amazon DynamoDB などの AWS パブリックリソースにプライベートリンク経由でアクセスすることもできます。ただし、これらの VPC エンドポイントには同じリージョンからのみアクセスできます。例えば、us-west-2 リージョンに S3 VPC エンドポイントをデプロイした場合、その VPC エンドポイントから us-west-2 の S3 バケットにアクセスできます。他のリージョンのバケットへのトラフィックはインターネットを経由します。

解決方法

VPC 間で VPC ピアリングを作成して、異なるリージョンのエンドポイントにアクセスするには、次の手順に従います。

注: この解決方法の例では、次の変数が使用されます。

  • VPC1(10.100.10.0/24) は us-east-1 リージョンにあります。
  • VPC1 には S3 エンドポイントがあります。
  • VPC2(172.16.20.0/24) は us-east-2 リージョンにあります。
  • us-east-2 リージョンのユーザーは、us-east-1 リージョンの S3 エンドポイントを使用して us-east-1 の S3 バケットにアクセスしたいと考えています。

VPC1 と VPC2 の間の VPC ピアリングを設定する

1.    Amazon VPC コンソールを開きます。自分のリージョンが us-east-1 であることを確認します。

2.    [VPC peering connections] (VPC ピアリング接続) を選択します。

3.    [Create peering connection] (ピアリング接続を作成) を選択します。

4.    ピアリング接続の [Name] (名前) を入力します。

5.    [Select a local VPC to peer with] (ピアリング接続するローカル VPC を選択) に VPC ID を入力します (この例では、これは VPC1 の VPC ID です)。

5.    [Select another VPC to peer with] (ピアリング接続するもうひとつの VPC を選択) の [Account] (アカウント) で、これが同じアカウントに属するリモート VPC の場合は、[My account] (自分のアカウント) を選択します。これが同じアカウントに属するリモート VPC でない場合は、[Another account] (別のアカウント) を選択し、[Account ID] (アカウント ID) を入力します。

7.    [Select another VPC to peer with] (ピアリング接続するもうひとつの VPC を選択) の [Region] (リージョン) で、[Another Region] (別のリージョン) を選択し、目的のリモート VPC ID を入力します。(この例では、これは VPC2 の VPC ID です)

8.    [Create peering connection] (ピアリング接続を作成) を選択します。ピアリング接続のステータスが [pending acceptance] (承諾の保留中) に変わります。

9.    [Region] (リージョン) を [us-east-2] に変更します。

10.    Amazon VPC コンソールで、[VPC peering connections] (VPC ピアリング接続) を選択します。

11.    [Actions] (アクション)、[Accept request] (リクエストの承諾) の順に選択します。

サブネットルートテーブルとルートテーブルターゲットを更新する

1.    172.16.20.0/24 (VPC2) の us-east-1 エンドポイントのサブネットルートテーブルにルートを追加します。

2.    us-east-2 にある 10.100.10.0/24 (VPC1) 用のユーザーのルートテーブルターゲットに、ピアリング接続 (pcx-xxxxxxxxxxxxxx) としてルートを追加します。

S3 バケットにアクセスする

リモート VPC から VPC エンドポイント FQDN を使用して S3 バケットにアクセスします。

aws s3 --region us-east-1 --endpoint-url https://bucket.vpce-xxxxxxxxxxx.s3.us-east-1.vpce.amazonaws.com ls s3://my-bucket/

トラブルシューティング

  • ローカル VPC サブネットとリモート VPC サブネットのルートテーブルには、ピアリング接続として相互をターゲットとするルートが必要です。
  • VPC エンドポイントの許可ポリシーは、リモート VPC ID を許可する必要があります。
  • VPC エンドポイントに適用されるセキュリティグループは、リモート VPC サブネットを許可する必要があります。

この記事はお役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?