Region
각 EC2 Region은 다른 EC2 Region에서 격리되도록 설계되어 있다.
- AWS의 전 세계에 있는 데이터 센터의 물리적 위치를 region(리전)이라고 한다.
- 각 Amazon EC2 리전은 세계 각지 여러곳에서 호스팅하고 있다.
- 사용자에게 가까운 여러 위치에 컴퓨터 및 리소스를 배치할 수 있다.
- 최소한 2개 이상의 가용 영역(AZ)로 구성된다.
Availability Zone (AZ)
각 Region내에 있는 여러 격리된 위치를 말한다. (가용영역)
- 한 region에는 여러 가용 영역이 있다.
- 가용 영역간에는 독립적인 전원, 냉온습, 물리적 보안 등의 시설을 갖추게 되며, 물리적으로 떨어져 있기 때문에 데이터센터의 물리적인 장애가 발생하더라도 가용영역간에 영향을 미치지 않는다.
VPC
VPC(Virtual Private Cloud)란 AWS 네트워크망 안에 사용자 전용의 사설 네트워크 망을 말한다.
- 내부에 Subnet이라는 구분된 그룹을 포함하고 있다.
- VPC를 사용하면 각 사용자가 논리적으로 완전히 분리된 네트워크 망을 가질 수 있어 독립적인 설정이 가능하다.
- 가상 네트워크를 이용하여 물리적으로는 다른곳에 위치하지만 같은 사설망 IP 대역에 위치하게 만들어 리소스들끼리 통신할 수 있게 만들어주는 기술이다.
- EC2 생성 후 VPC는 변경을 할 수 없기때문에 VPC를 먼저 만들고 시작하는 것이 좋다.
Subnet
VPC의 IP 주소 범위이다.
- 서브넷은 VPC의 영역안에서 망을 더 잘개 쪼개는 과정이다.
- VPC와 달리 지역적으로 나누기 때문에 여러 AZ에 걸쳐있는 것이 아닌 단일 AZ에 위치한다.
- 서브넷을 나누는 이유는 더 많은 네트워크망을 만들기 위해서이다.
- 서브넷은 Public Subnet과 Private Subnet으로 나뉜다.
- Public Subnet
- 인터넷과 연결되어있는 서브넷
- 간단하게 외부에서 접근이 가능한 네트워크 영역이라고 생각하면 된다.
- Public Subnet에 존재하는 인스턴스는 인터넷에 연결되어 아웃바운드, 인바운드 트래픽을 주고받을 수 있다.
- 해당 서브넷에 위치한 리소스들은 Public IP를 가질 수 있습니다.
- Private Subnet
- 인터넷과 연결되어있지 않은 서브넷
- 간단하게 외부에서 다이렉트로 접근이 불가능한 네트워크 영역이라고 이해할 수 있다.
- Private Subnet에 위치한 리소스들은 외부에 노출되어 있지 않기 때문에 직접적으로 접근할 수 없다.
- 해당 서브넷에 DB가 있다고 가정, DB 버전을 업그레이드하기 위해서 인터넷 연결이 필요하고 할때 NAT 게이트웨이를 이용하여 내부에서 외부로만 접근이 가능하게 만들어줄 수 있다.
NAT
NAT은 Network Address Translation의 약자이며 패킷의 IP 주소, 포트 등을 변환하는 기술이다.
NAT 사용 이유
Private Network가 외부의 Public Network와 통신하기 위해 사용
즉, 내부 망에서는 사설 IP 주소를 사용하여 통신을 하고, 외부망과의 통신시에는 NAT를 거쳐 공인 IP 주소로 자동 변환한다.
할당 받을 수 있는 IP는 한계가 존재하므로 단체의 구성원 모두에게 Public IP를 부여하는 것은 사실상 불가능하므로 Private Network를 사용하게 되는데, 이 Private Network의 구성원이 외부 인터넷과 통신하고 싶다면 외부에서 식별 가능한 IP가 필요하다.
이 상황에 내부 구성원이 외부와 통신할 때 패킷에 기록된 IP와 포트 번호를 변환하여 외부에서 해당 단체를 식별할 수 있는 Public IP로 변환한다.
NAT Gateway