새소식

AWS/Network

[AWS] VPC Endpoint 에 관하여 (Private Link)

  • -

AWS 를 사용할 때 VPC Endpoint 서비스를 많이 사용해 보았을 것이다.

 

보안을 위해 Public 인터넷을 차단해서 어쩔 수 없이 endpoint 를 사용하는 경우도 있고,
Public 인터넷으로 흐르는 트래픽 비용을 절감하기 위해 endpoint 를 사용하기도 한다.

 

이번 기회에 사용하는 방법은 알지만 '잘' 사용하기 위해 endpoint 에 대한 개념과,
자주 사용되거나 사용할 수 있을법한 AWS vpc endpoint 들을 따로 정리해보고자 한다.

 

 

1. VPC Endpoint vs AWS Private Link


AWS 공식문서를 읽다보면 VPC Endpoint 와 AWS Private Link 가 혼용되어 사용되는 것을 알 수 있다.
두 가지 용어의 차이를 몰라도 문서를 이해하는 데는 문제가 없으나 도대체 두 용어는 무엇을 뜻하길래 혼용해서 사용하는 것일까??

 

1.1. VPC Endpoint ( VPC 엔드포인트 )

VPC Endpoint 는
AWS Service(혹은 다른 계정이나 리전의 VPC) 에 Private 하게 연결할 수 있는 VPC 의 '진입점' (Entry Point) 이다.

 

1.2. AWS Private Link ( AWS 프라이빗 링크 )

AWS Private Link 는 AWS Service 와 VPC 간 Private 연결 (Private DNS)을 가능하게 해주는  '기술'이다.

 

글로만 봐서는 이해가 안될 수도 있다.
다음 그림을 확인해보자
해당 그림은 우리가 자주 사용하는 S3 엔드포인트에 관한 그림이다.

 

그림에서 두 개의 엔드포인트가 S3 에 접근하는 방식이 다른 것을 확인할 수 있다.


Gateway Type 은 Route Table 을 설정하여 S3의 Public URL 을 통해서만 접근이 가능하다.
Interface Type 은 엔드포인트가 생성해주는 Private URL 을 통해서 접근할 수 있다.
(이해하기 쉽게 그림에 임의로 Private Link 선을 그었다.)

 

S3 엔드포인트의 세세한 작동 방식은 다른 포스팅에서 설명하겠다.

 

이렇게 Private URL 을 통해 AWS Service 에 접근할 수 있게 해주는 기술을 Private Link 라고 지칭하고,
Private Link 기술을 지원하는 것이 Interface Endpoint Type 이다.

 

때문에 Interface Endpoint 를 Private Link 라고도 하고,

현재, S3 와 DynamoDB 를 제외한 모든 엔드포인트Interface Type 을 기반으로 하고 있으므로

AWS 에서는 Endpoint 서비스를 Private Link 와 혼용해서 사용하는 듯 싶다.



2. VPC Enpdoint 유형


AWS 의 엔드포인트는 크게 3가지로 구분된다.

  1. Gateway Type
  2. Interface Type
  3. Gateway Loadbalancer Type

 

2.1. Gateway Type

게이트웨이 타입은 S3, DynamoDB 단 두 가지의 서비스에서만 사용된다.
인터페이스 타입에 비해서는 오래된 기술로 대부분의 서비스는 인터페이스 타입으로 대체되었다.
그렇기 때문에 인터페이스 타입에서 지원되는 Private Link 기술을 게이트웨이 타입에서는 지원하지 않는다.
라우팅 테이블 설정을 통해 AWS Service 에 접근한다.
엔드포인트 생성 비용은 없다.


요약
  1. Private Link 지원 X
  2. 라우팅 테이블 사용
  3. 엔드포인트 생성 비용 X

 

2.2. Interface Type

  • Interface Type 은 다시 2가지로 나뉠 수 있다.
  1. AWS Service 에 접근하는 Endpoint
  2. 타 계정 VPC 에 접근하는 Endpoint

현재 대부분의 AWS 엔드포인트 서비스는 인터페이스 타입이다.
Private Link 기술을 지원한다.
서브넷에 AWS Managed ENI 를 생성하여 AWS Service 에 접근한다.
ENI 개당 비용을 지불한다.

 


요약
  1. 2가지 유형으로 구분 (AWS Service 접근, 타 계정 VPC 접근)
  2. Private Link 지원 O
  3. Subnet에 생성되는 AWS Managed ENI 사용
  4. ENI 개당 과금

 

2.3. Gateway Loadbalancer Type

Gateway Loadbalancer Type 은 Gateway Type + Interface Type 이다.
해당 타입으로 만든 로드밸런서를 GWLB 라고 하기도 하며 주로 방화벽 등의 보안 설정을 위해 사용된다.

 

게이트웨이 로드밸런서 엔드포인트에는 다음과 같은 기능이 혼합되어 있다.

 

  • Gateway Type
    - 라우팅 설정 기능 (Traffic In/Out 제어)
  • Interface Type
    - Private Link
    - 타 계정에 접근할 수 있는 기능

 

 

 


VPC Endpoint 에 대한 개요를 알아보았다.
이번 기회에 자주 사용되는 엔드포인트에 대해서 간략하게나마 꾸준히 정리해보고자 한다.

 

포스팅 계획이 있는 엔드포인트 서비스는 다음과 같다. (추후 더 늘어날 수도 있다.)
  1. S3
  2. CloudWatch
  3. Session Manager
  4. CloudTrail
  5. CodeSeries (Commit, Build, Deploy)
  6. DataSync
  7. AppStream 2.0
  8. Lambda
Contents

포스팅 주소를 복사했습니다