Introduction

AWS PrivateLink를 기반으로 하는 인터페이스 엔드포인트(Interface Endpoint)는 S3, DynamoDB를 포함한 대부분의 AWS 서비스와 서드파티 SaaS 서비스에 프라이빗하게 접근할 수 있게 합니다. VPC 내 ENI를 통해 동작하는 이 메커니즘은 트래픽을 AWS 백본 네트워크 내에 유지하면서도 보안 그룹을 통한 세밀한 접근 제어를 가능하게 합니다. S3와 DynamoDB의 경우 무료인 게이트웨이 엔드포인트가 있지만, 온프레미스 접근이나 다양한 AWS 서비스 활용이 필요할 때는 인터페이스 엔드포인트가 유일한 선택입니다.

Interface Endpoint (PrivateLink)

지원 서비스와 동작 원리

인터페이스 엔드포인트(Interface Endpoint)는 S3, DynamoDB를 포함한 대부분의 AWS 서비스(EC2 API, SNS, SQS, Kinesis, SageMaker, CloudWatch 등)와 서드파티 SaaS 서비스를 지원한다. 게이트웨이 엔드포인트가 라우팅 테이블을 수정하는 방식인 반면, 인터페이스 엔드포인트는 VPC 내부에 프라이빗 IP를 가진 ENI를 생성하는 방식으로 동작한다.

인터페이스 엔드포인트를 생성하면 지정한 서브넷에 ENI가 생성되고, 프라이빗 DNS가 활성화된 경우 해당 서비스의 퍼블릭 DNS 이름(예: sns.us-east-1.amazonaws.com)이 이 ENI의 프라이빗 IP로 해석되도록 자동 설정된다. 따라서 애플리케이션 코드를 변경할 필요가 없다. 기존의 AWS SDK 호출이 그대로 프라이빗 경로를 통해 전달된다.

PrivateLink의 핵심 가치

인터페이스 엔드포인트의 기반 기술인 AWS PrivateLink는 다음과 같은 특성을 갖는다.

  1. 트래픽이 AWS 백본 네트워크 내에만 머문다. 퍼블릭 인터넷에 노출되지 않으므로 보안이 강화된다.
  2. 보안 그룹을 적용하여 엔드포인트에 접근할 수 있는 소스를 정밀하게 제어할 수 있다. 예를 들어, 특정 애플리케이션 서버만 SNS 엔드포인트에 접근하도록 제한할 수 있다.
  3. 다른 계정의 VPC나 온프레미스(VPN/Direct Connect 연결 시)에서도 이 엔드포인트를 통해 서비스에 접근할 수 있다. 이는 게이트웨이 엔드포인트에서는 불가능한 기능이다.
  4. 자체 서비스를 PrivateLink로 노출할 수 있다. Network Load Balancer(NLB) 뒤에 서비스를 배치하고 VPC Endpoint Service로 등록하면, 다른 VPC나 계정에서 해당 서비스에 프라이빗하게 접근할 수 있다. 이는 SaaS 제공자가 고객에게 프라이빗 연결을 제공하는 핵심 메커니즘이다.

비용

인터페이스 엔드포인트는 게이트웨이 엔드포인트와 달리 유료다.

항목비용 (us-east-1 기준)
시간당 요금0.01/AZ/시간(0.01/AZ/시간 (≈ 7.2/AZ/월)
데이터 처리$0.01/GB

2개 AZ에 인터페이스 엔드포인트를 생성하고 월 100GB를 처리하면, 월 비용은 약 15.4(15.4(14.4 시간 + 1.0처리)이다.<ahref="/posts/natgateway">NATGateway</a>(1.0 처리)이다. <a href="/posts/nat-gateway">NAT Gateway</a>(32.4 시간 + 4.5처리=4.5 처리 = 36.9)보다 저렴하므로, 특정 서비스로의 트래픽이 대부분인 경우 인터페이스 엔드포인트가 비용 면에서도 유리하다.

AI/ML 서비스의 프라이빗 접근

SageMaker와 Bedrock

프라이빗 서브넷에서 AI/ML 서비스를 호출하는 경우, 인터페이스 엔드포인트가 특히 중요해진다. Amazon SageMaker의 실시간 추론 엔드포인트와 Amazon Bedrock의 모델 호출 API 모두 VPC 인터페이스 엔드포인트를 지원한다. 이를 통해 민감한 학습 데이터나 추론 입력이 퍼블릭 인터넷에 노출되지 않도록 보장할 수 있다.

특히 금융·의료 등 규제 산업에서는 AI 모델 호출 시 데이터가 AWS 백본 네트워크 내에만 머물러야 하는 컴플라이언스 요건이 있다. 인터페이스 엔드포인트에 보안 그룹을 적용하면, 허가된 애플리케이션 서버만 ML 엔드포인트에 접근하도록 네트워크 수준에서 강제할 수 있으며, 엔드포인트 정책으로 특정 SageMaker 엔드포인트나 Bedrock 모델만 호출 가능하도록 제한할 수 있다.

교차 계정 서비스 공유 패턴

PrivateLink의 강력한 활용 사례 중 하나는 멀티 계정 아키텍처에서의 중앙 집중형 엔드포인트 공유다. 공유 서비스 VPC에 인터페이스 엔드포인트를 생성하고, 이를 Transit GatewayVPC Peering을 통해 다른 VPC에서 접근하도록 구성하면, 각 VPC마다 엔드포인트를 생성할 필요가 없어 비용과 관리 복잡성이 줄어든다.

이 패턴에서 프라이빗 DNS를 사용하려면 Route 53 Resolver의 포워딩 규칙forwarding rule을 구성하여, 스포크 VPC에서 공유 VPC의 엔드포인트 DNS를 해석하도록 설정해야 한다. 또한 자체 서비스를 PrivateLink로 노출할 때는 Network Load Balancer(NLB) 뒤에 서비스를 배치하고 VPC Endpoint Service로 등록한 뒤, 소비자 VPC에서 연결 요청connection request을 수락하는 2단계 핸드셰이크로 접근을 제어한다.


출처