AWS 서비스에 대한 크로스 리전 VPC 인터페이스 엔드포인트를 구성하려면 어떻게 해야 하나요?

3분 분량
0

프라이빗 링크를 사용하여 AWS 리소스에 액세스하도록 크로스 리전 Amazon Virtual Private Cloud(VPC) 엔드포인트를 구성하고 싶습니다.

간략한 설명

Amazon Elastic Compute Cloud(Amazon EC2), Amazon VPC 및 Amazon Relational Database Service(RDS)와 같은 리소스를 서로 다른 AWS 리전에 배포할 수 있습니다. 이 배포는 리소스의 고가용성을 지원하고 사용자에게 더 빠른 데이터 액세스를 제공합니다. 또한 VPC 게이트웨이 엔드포인트를 배포하여 프라이빗 링크를 통해 Amazon Simple Storage Service(S3)와 같은 AWS 퍼블릭 리소스에 액세스할 수 있습니다. 하지만 동일한 리전에서만 이러한 VPC 게이트웨이 엔드포인트에 액세스할 수 있습니다.

다음은 예시 시나리오입니다. Amazon S3 게이트웨이 엔드포인트를 us-west-2 리전에 배포합니다. 그러면 게이트웨이 엔드포인트를 통해 us-west-2의 S3 버킷에 액세스할 수 있습니다. 다른 리전의 버킷으로 향하는 트래픽은 VPC의 인터넷 게이트웨이를 통해 이동합니다. 소스 AWS 리소스가 NAT 게이트웨이가 있는 프라이빗 서브넷에 있는 경우 트래픽은 NAT 게이트웨이를 통해 이동합니다. 이 트래픽 흐름으로 인해 NAT 게이트웨이는 VPC 엔드포인트보다 더 높은 요금을 부과합니다. 게이트웨이 VPC 엔드포인트 사용에 대한 처리 요금이나 시간당 요금이 부과되지 않기 때문에 Amazon S3 게이트웨이 엔드포인트는 기본적으로 비용 효율적입니다.

참고: 다음 예시에서는 게이트웨이 엔드포인트가 크로스 리전 액세스를 지원하지 않기 때문에 크로스 리전 트래픽에 Amazon S3 인터페이스 엔드포인트를 사용합니다. 모든 VPC 인터페이스 엔드포인트에 동일한 설정을 사용하세요.

해결 방법

다음 단계에 따라 VPC 간에 VPC 피어링을 생성하여 다른 리전의 엔드포인트에 액세스합니다.

참고: 이 예시 해결 방법에는 다음 변수가 사용됩니다.

  • VPC1(10.100.10.0/24)은 us-east-1 리전에 있습니다.
  • VPC1에는 Amazon S3 인터페이스 엔드포인트가 있습니다.
  • VPC2(172.16.20.0/24)는 us-east-2 리전에 있습니다.
  • us-east-2 리전의 사용자가 us-east-1의 S3 버킷에 액세스하려고 합니다. 이 사용자는 us-east-1의 Amazon S3 인터페이스 엔드포인트를 사용하려고 합니다.

VPC1과 VPC2 간 VPC 피어링 구성

1.    [Amazon VPC 콘솔]을 엽니다. us-east-1 리전에 있는지 확인합니다.

2.    VPC 피어링 연결을 선택합니다.

3.    피어링 연결 생성을 선택합니다.

4.    피어링 연결의 이름을 입력합니다.

5.    피어링할 로컬 VPC 선택VPC ID(이 예시에서는 VPC1의 VPC ID)를 입력합니다.

6.    피어링할 다른 VPC 선택계정에서 다음에 따라 관련 옵션을 선택합니다.

동일한 AWS 계정에 속한 원격 VPC인 경우 내 계정을 선택합니다.

동일한 계정에 속하는 원격 VPC가 아닌 경우 다른 계정을 선택한 다음 계정 ID를 입력합니다.

7.    피어링할 다른 VPC 선택리전에서 다른 리전을 선택합니다. 그런 다음 원하는 원격 VPC ID(이 예시에서는 VPC2의 VPC ID)를 입력합니다.

8.    피어링 연결 생성을 선택합니다. 피어링 연결 상태가 수락 대기 중으로 변경됩니다.

9.    [리전(Region)]을 us-east-2로 변경합니다.

10.   Amazon VPC 콘솔을 연 다음 VPC 피어링 연결을 선택합니다.

11.   작업, 요청 수락을 선택합니다.

서브넷 라우팅 테이블 및 라우팅 테이블 대상 업데이트

1.    172.16.20.0/24(VPC2)에 대한 us-east-1 엔드포인트에 대한 서브넷 라우팅 테이블에 경로를 추가합니다.

2.    10.100.10.0/24(VPC1)에 대한 us-east-2에 있는 사용자의 라우팅 테이블 대상에 경로를 피어링 연결(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 ID를 허용해야 합니다.
  • VPC 엔드포인트에 적용된 보안 그룹은 원격 VPC 서브넷을 허용해야 합니다.

AWS 공식
AWS 공식업데이트됨 2달 전