본문 바로가기

AWS

[AWS] Cross-Region PrivateLink 구성 방법

반응형

AWS 서비스에 대한 프라이빗 연결을 이제는 다른 리전까지 확장할 수 있게 되었습니다.
기존 PrivateLink는 “동일 리전” 연결만 지원했지만, 이제부터는 S3, Route 53, ECR 등 주요 AWS 서비스를 인터넷 없이 다른 리전에서 접근하는 구성이 정식으로 가능합니다.

Cross-Region PrivateLink 개념 정리

이번 기능의 핵심은 다음과 같습니다.

  • 인터페이스 엔드포인트(Interface Endpoint)만 생성하면 다른 리전의 AWS 서비스에도 프라이빗 경로가 자동 구성됩니다.
  • 데이터는 AWS 글로벌 백본망에서만 이동하므로 인터넷 경로는 전혀 사용하지 않습니다.
  • VPC Peering, Transit Gateway, VPN 같은 기존 크로스 리전 네트워크 설계를 대체할 수 있습니다.
  • IAM Condition key가 새롭게 추가되어 데이터 경계(Data Perimeter) 정책을 강화할 수 있습니다.
    • vpce:AllowMultiRegion
    • ec2:VpceServiceRegion
    • aws:SourceVpcArn
  • 인터페이스 엔드포인트 방식만 지원하며, Zonal DNS는 cross-region에서 제공되지 않습니다.

 

구성 방법

아래는 “서울(ap-northeast-2) VPC → 도쿄(ap-northeast-1)의 Amazon S3” 로 프라이빗 연결하는 예시 기반입니다.

1. 연결할 서비스의 PrivateLink 엔드포인트 서비스 이름 확인

AWS 서비스는 리전별로 PrivateLink 서비스 이름이 정해져 있습니다.

예시 (도쿄 리전 S3): com.amazonaws.ap-northeast-1.s3

확인 방법:

  • AWS Console → VPC → Endpoint → Create Endpoint → Service category에서 AWS Services 선택
  • 서비스 목록에서 원하는 리전을 선택해 이름 확인

Cross-region PrivateLink는 “다른 리전의 서비스”도 목록에 나타납니다.


2. 엔드포인트를 생성할 VPC 준비

엔드포인트를 생성할 리전(여기서는 서울 리전)의 VPC를 준비합니다.

필수 조건:

  • 최소 2개 이상의 AZ 서브넷
  • 서브넷에 SG/NACL 규칙이 정상 구성
  • 인터페이스 엔드포인트이므로 VPC에는 DNS hostnames + DNS resolution이 반드시 켜져 있어야 합니다

VPC 설정 예:

enableDnsSupport = true
enableDnsHostnames = true

 

3. 인터페이스 엔드포인트 생성

  1. VPC 콘솔 → Endpoints → Create Endpoint
  2. Service category: AWS Services
  3. Service name: com.amazonaws.ap-northeast-1.s3
  4. Type: Interface
  5. VPC 선택
  6. Availability Zone 별 서브넷 2개 이상 선택
  7. Enable Private DNS: 선택 시 주의
    • Cross-region에서는 Zonal DNS를 제공하지 않으므로 Regional DNS 기반으로 동작합니다.
  8. Security Group 설정
    • S3의 경우 443 포트 허용

생성 후 “pending” → “available” 상태가 되면 연결이 준비된 것입니다.

4. Private DNS 동작 확인

Cross-region PrivateLink는 다음과 같은 형태로 도메인이 매핑됩니다.

  • Zonal DNS: 지원 안 됨
  • Regional DNS: 지원됨
    예: bucket-name.s3.ap-northeast-1.amazonaws.com → vpce-xxxxxxxx.s3.ap-northeast-1.vpce.amazonaws.com

DNS 확인 명령:

nslookup s3.ap-northeast-1.amazonaws.com
 
엔드포인트 주소가 PrivateLink 전용 도메인으로 변환되는지 확인합니다.

5. 실제 요청 테스트

테스트 예시:

aws s3 ls s3://your-bucket --region ap-northeast-1

 

 

정상적으로 스트레이트한 인터넷 경로가 아닌 PrivateLink 경로로 접근된다면 다음이 확인됩니다:

  • 트래픽이 NAT Gateway를 거치지 않음
  • 인터넷 Gateway가 전혀 사용되지 않음
  • VPC Flow Logs에 프라이빗 ENI → AWS 서비스 ENI 형태의 흐름이 기록됨

IAM 정책 설정

Cross-Region PrivateLink가 도입되면서, IAM Condition key도 강화되었습니다.

예시 정책(JSON):

{
  "Effect": "Allow",
  "Action": "s3:*",
  "Resource": "*",
  "Condition": {
    "StringEquals": {
      "ec2:VpceServiceRegion": "ap-northeast-1",
      "vpce:AllowMultiRegion": "true"
    }
  }
}

 

 

이 정책은 다음을 의미합니다.

  • S3 호출은 도쿄 리전 서비스에 대해서만 허용
  • Multi-Region PrivateLink를 이용한 접근만 허용

또는 특정 VPC만 허용(JSON):

"aws:SourceVpcArn": "arn:aws:ec2:ap-northeast-2:111122223333:vpc/vpc-abc123"

이러한 설정을 데이터 경계 정책(Data Perimeter)에 맞춰 구성하면 보안 성숙도를 한 단계 올릴 수 있습니다.

운영 상황에서 고려할 점

고가용성 구성

엔드포인트는 AZ별로 생성되므로 반드시 2개 이상 AZ에 배포하는 것을 권장합니다.

비용 구조

  • 기본 PrivateLink 요금
    • Inter-Region Data Transfer 비용 발생
      Cross-region 전송이므로 네트워크 비용을 사용량 기반으로 함께 고려해야 합니다.

Zonal DNS 미지원

Cross-region에서는 Zonal DNS가 없기 때문에, 일부 애플리케이션은 Regional DNS 기반으로 재설정이 필요합니다.

서비스별 지원 여부

S3, Route 53, ECR, Firehose 등 주요 AWS 서비스부터 확장 중이며, 서비스별 엔드포인트 사용 가능 여부를 항상 확인하는 것을 권장합니다.

활용 시나리오 예시

  • 다른 리전에 있는 S3 데이터 레이크를 서울 리전에서 프라이빗하게 접근
  • AI/ML 모델이 타 리전의 학습 데이터를 직접 스트리밍
  • 리전 장애 시, 대체 리전의 AWS 서비스에 인터넷 없이 자동 전환
  • 규제 환경에서 특정 리전 서비스만 허용하는 데이터 경계 적용

정리

Cross-Region PrivateLink는 기존의 복잡한 리전 간 네트워크 설계를 상당 부분 단순화해주므로, 특히 보안 요구사항이 높은 환경에서 적극적으로 고려해 볼 만한 기능입니다.

반응형