Direct Connect
AWS 클라우드와 온프레미스 네트워크를 연결하는 전용 네트워크 서비스
연결을 위해서는 가상 인터페이스가 필요하고, 종류는 아래와 같이 3가지가 존재
1. 프라이빗 가상 인터페이스: On-Prem <---> VPC
- On-Prem에서 VPC 안에 있는 리소스에 안전하게 접근하기 위한 인터페이스
- 프라이빗 인터페이스를 통해 S3를 붙게하는 방법 (=VPC 엔드포인트 추가)
- Direct Connect + 프라이빗 인터페이스 추가
- VPC에 Interface VPC Endpoint 설정
- VPC Endpoint는 AWS PrivateLink를 통해 VPC 내에서 S3에 안전하게 연결하기 위한 목적
- On-prem --> VPC로 향하는 네트워크가 프라이빗 인터페이스 통해 VPC로 꺾이도록 라우팅 --> VPC endpoint --> S3
2. 퍼블릭 가상 인터페이스: On-Prem <---> 퍼블릭 AWS 서비스 (S3, DynamoDB, SNS 등)
- 퍼블릭 IP를 사용하는 AWS 서비스에 안전하게 접근하고, 인터넷을 경유하지 않는 네트워크 경로를 제공
- 다른 퍼블릭 AWS 서비스 접속과 달리, Direct Connect 퍼블릭 가상 인터페이스 사용 시 인터넷을 경유하지 않는다는 점이 핵심
- 트랜짓 가상 인터페이스
- AWS Transit Gateway와 연결하여 여러 VPC와 온프레미스 네트워크 간의 통신을 관리
- 다양한 리전에 있는 VPC 및 온프레미스 네트워크와의 복잡한 연결을 단일 중앙 네트워크 허브(Transit Gateway)를 통해 관리 시 사용
3가지 인터페이스 모두 AWS Direct Connect는 온프레미스 네트워크와 AWS 간의 안전하고 효율적인 연결을 제공
Transit Gateway
AWS Direct Connect 및 VPN 연결을 중앙에서 관리하고 라우팅할 수 있는 네트워크 허브 서비스
- 여러 VPC가 있는 환경에서 중앙 집중화를 통한 VPC간 네트워크 연결
- VPC 와 On-Prem 역시 연결 가능 (하이브리드 클라우드 연결)
- Direct Connect와 VPN을 추가 사용 시 안정적이고 안전한 하이브리드 클라우드 아키텍처 설계 가능
- 서로 다른 리전에서 운영 중인 VPC도 연결 가능
VPC 관련
VPC 공유, VPC 피어링
-
VPC 공유
- 하나의 VPC 내에서 여러 계정이 네트워크 리소스를 공유하는 방식으로, 네트워크 관리를 단순화하고 싶은 조직에 적합
-
VPC 피어링
- 서로 다른 VPC 간에 안전하고 직접적인 네트워크 연결을 설정하는 방식으로, VPC 간 안전한 통신이 필요한 시나리오에서 사용
- VPC 피어링이 되었다고해서 VPC를 넘나드는 AZ 간의 Auto Scaling Group은 구성할 수 X
| VPC 공유 (VPC Sharing) | VPC 피어링 (VPC Peering) |
|---|
| 주요 목적 | 하나의 VPC 리소스를 다른 계정과 공유 | 두 VPC 간 직접 네트워크 연결 설정 |
| 계정 간 사용 | AWS Organizations 내 여러 계정에서 사용 가능 | 동일 또는 다른 계정 간 사용 가능 |
| 서브넷 공유 | O (여러 계정이 같은 VPC 서브넷을 사용할 수 있음, 하나의 VPC이므로) | X |
| 라우팅 필요여부 | X | O (VPC 간 라우팅테이블 설정 필요) |
PrivateLink
- 인터넷을 거치지 않고 안전하게 VPC인바운드 트래픽 처리
- 기존의 VPN이나 Direct Connect와 달리 PrivateLink는 상대적으로 간단한 설정으로 VPC 간의 보안 통신을 지원
- 각 계정의 VPC 간 중복 IP CIDR 이슈가 있을 때 적합
- PrivateLink는 클라이언트 VPC 내에서 탄력적 네트워크 인터페이스를 사용하므로 서비스 공급자와 IP 주소 충돌이 발생 X
- 대신 라우팅이 원활하게 진행되기 위해서는 서비스공급자와 다른 CIDR를 추가로 생성하긴 해야함
PrivateLink 기본 작동 방식
- VPC 엔드포인트 서비스: 서비스 제공자가 특정 VPC 내에서 엔드포인트 서비스를 구성하면, 다른 VPC(혹은 AWS 서비스)에서 엔드포인트를 통해 이 서비스로 접근
- 엔드포인트: 서비스 소비자(고객)의 VPC에 생성된 엔드포인트가 서비스 제공자의 VPC로 인바운드 트래픽 전송
- NLB: PrivateLink는 주로 서비스 제공자의 NLB를 통해 서비스로 트래픽을 전달