김원일, 서종호의 저서 [따라하며 배우는 AWS 네트워크 입문]을 요약한다. 이 포스트에서는 3장 VPC 고급, 4장 인터넷 연결을 다룬다.
Index
- 3장 VPC 고급
- 4장 인터넷 연결
3장 VPC 고급
01. VPC 엔드포인트
VPC 엔드포인트
VPC 엔드포인트는 AWS의 퍼블릭 서비스나 직접적으로 생성한 AWS 서비스에 대해 외부 인터넷 구간을 통한 접근이 아닌 직접적으로 접근할 수 있는 프라이빗 엑세스 기능이다.
인터페이스 엔드포인트와 엔드포인트 서비스를 통한 연결을 프라이빗 링크라고 부른다.
주된 특징
- 연결 대상 서비스가 동일 리전으로 제한
- 하나의 VPC에만 연결 가능
예시
엔드포인트 서비스를 사용할 때 인터페이스 엔드포인트도 함께 구성해야한다는 점이 인상깊었다.
-> 인터페이스 엔드포인트로 데이터를 전달하고, 프라이빗 링크로 엔드포인트 서비스가 생성된 CustomVPC의 NLB로 전달된다.
04. 배치 그룹
배치 그룹
- 배치 그룹은 그룹 내 인스턴스의 배치를 조정하는 기능이다. 즉, 하드웨어적으로 어디에 인스턴스를 배치할 것인지 조정하는 기능이다.
- 물리 호스트의 장애에 대해 영향도를 최소화하기 위해 기본 설정으로
분산 배치된다.
종류
클러스터 배치 그룹
- 단일 가용 영역 내에 인스턴스를 배치한다.
- 짧은 네트워크 지연시간, 높은 네트워크 처리량이 필요한 어플리케이션에 적합하다.
- 한 랙에 문제가 생기면 모든 인스턴스들에 문제가 생길 수 있다.
파티션 배치 그룹
- 동일한 파티션(랙) 안에 인스턴스를 배치하지만, 여러 AZ에 파티션을 분산하는 배치이다.
- 파티션이 나눠져있어, 장애 분산이 안된다.
Hadoop,Cassandra,Kafkka등 대규모 분산 및 복제 워크로드를 별개의 렉으로 분산해 배포하는데 적합하다.
분산형 배치 그룹
- 각각 고유한 하드웨어에 인스턴스를 배치한다.
- 여러 가용 영역에 인스턴스를 분산 배치 했기 떄문에 처리량을 높일 수 있다.
05. 메타데이터
EC2 인스턴스는 인스턴스에 대한 메타데이터를 가지고 있고, 169.254.169.254라는 빌트인 주소에 요청하면 HTTP 응답으로 확인할 수 있다. v1은 인스턴스에 접속한 누구나 메타 정보를 볼 수 있어 보안상 좋지 못했기 떄문에 토큰 방식이 추가된 v2가 만들어졌다.
|
|
4장 인터넷 연결
AWS VPC <-> 인터넷 연결 조건
- 인터넷 게이트웨이
- 라우팅 테이블
- 공인 IP
- 보안 그룹과 ACL
인터넷 연결 방안
- 인터넷 게이트웨이
- NAT 디바이스
- Proxy 인스턴스
인터넷 게이트웨이
- Public IP와 Private IP
1:1 NAT한다.- 1:1 연결이기 때문에 해당 IP를 독점적으로 사용하는 것과 유사하다.
- 외부에서 Public IP를 통해 내부 VPC 인스턴스 (Private IP)에 접근 가능하다.
하나의 VPC는하나의 인터넷 게이트웨이만 사용할 수 있다.
NAT 디바이스
NAT 인스턴스와 NAT 게이트웨이를 통칭해 NAT 디바이스라고 한다.
- Public IP와 Private IP
1:N NAT한다. - 프라이빗 서브넷에서 외부 인터넷으로 통신하기 위한 방식이다.
- 프라이빗 서브넷 -> 외부 인터넷만 가능하다.
- NAT 디바이스는
Public 서브넷에 유치하며인터넷 게이트웨이와 연동한다.
NAT 게이트웨이 vs. NAT 인스턴스
- 성능: 고성능 vs. 인스턴스 유형에 따라
- 가용성: 고가용성 vs. 수동 HA
- 관리: AWS vs. 사용자
- 비용: 전송량 vs. 인스턴스 요금 + 네트워크 요금
NAT 인스턴스 시나리오
NAT 인스턴스와 NAT 게이트웨이 흐름은 유사하다.
이 예시에서는 나오지 않았지만 NAT 인스턴스는 IP masquerading을 통해서 내부 인스턴스의 IP와 포트를 NAT 인스턴스의 IP와 포트로 변환한다.
다수의 인스턴스의 출발지 IP들이 1개의 NAT IP를 공유해서 사용하기 때문에 포트 번호 정보를 기준으로 내부 인스턴스의 트래픽을 구별할 수 있다. 이를 PAT 이라 한다.
예시에는 나오지 않았지만, 원본 포트가 같을 경우 PAT을 할 때 포트를 다르게 할당한다. 이를 포트 오버로딩이라 한다.
| 원본 IP - Port | 변경 IP - Port |
|---|---|
| 10.40.2.101 - 40001 | 10.20.1.100 - 40001 |
| 10.40.2.201 - 40001 | 10.20.1.100 - 50001 |
Proxy 인스턴스
- 서버의 대리자이다.
- 목적지 IP가 Proxy 인스턴스로 향하도록 되어있다.