🔎 VPC (Virtual Private Cloud)
- Amazon Virtual Private Cloud(VPC)를 사용하면 AWS 클라우드에서 논리적으로 격리된 공간을 프로지버닝하여 고객이 정의하는
가상 네트워크
에서 AWS 리소스 시작 가능
IP주소 범위 선택, 서브넷 생성, 라우팅 테이블 및 네트워크 게이트웨이 구성
등 가상 네트워킹 환경을 완벽하게 제어할 수 있음
- VPC에서 IPv4와 IPv6를 모두 사용하여 리소스와 애플리케이션을 안전하고 쉽게 액세스 할 수 있음
1) Default VPC
- 계정 생성시 자동으로 셋업 되어 있음 (모든 리전에)
- 모든 서브넷의 인터넷 접근이 가능함
- EC2가 퍼블릭 IP와 Private IP 모두 가지고 있음
- 삭제시 복구 불가
2) Custom VPC
- 새로 만들어야 함
- Defalut VPC에서 가지고 있는 셋팅, 특징을 가지고 있지 않음
💡 설정 가능 영역
- EC2 실행 가능
- 서브넷 구성 가능
- 보안 설정 (IP block, 인터넷에 노출되지 않은 EC2 구성 등) 가능
- VPC Peering (VPC 간 연결 가능)
✓ Transitive Peering 불가능 (ex. B가 A,C 가 연결되어 있다고 해서 A와 C가 연결되는 것은 아님)
- VPC Flow Log
✓ VPC 로그를 CloudWatch에 저장 가능
- IP 대역 지정 가능
- 하나의 리전(Region)에서만 사용됨
💡 구성 요소
📌 Availability Zone (AZ)
- 물리적으로 분리되어 있는 인프라가 모여 있는 데이터 센터
- 고가용성을 위해 항상 일정 거리 이상 떨어져 있음
- 하나의 리전은 2개 이상의 AZ 로 이루어져 있음
- 각 계정의 AZ는 다른 계정의 AZ와 다른 아이디를 부여 받음
(계정 1의 AZ-A는 계정 2의 AZ-A와 다른 곳에 위치할 수 있음)
📌 Subnet
- VPC의 하위 단위
- 하나의 Availability Zone에 속하게 됨 (다른 AZ로 확장 불가)
- 하나의 AZ에는 여러개의 Subnet 생성 가능
- 인터넷에 접근 불가능한 Private Subnet
- 인터넷에 접근이 가능한 Public Subnet
- CIDR block Range 설정 가능 (IP 대역 설정 가능)
✓ ex) A 서브넷은 1~255, B 서브넷은 256~
📌 Internet Gate Way (IGW)
- 인터넷으로 나가는 통로
- 고가용성이 확보되어 있음
- Pivate Subnet은 IGW로 연결되어 있지 않은 서브넷
- Route Table에서 연결 해주어야 함
📌 Network Access Control List / Security Group (NACL)
- 검문소 역할
- NACL: Stateless, SG: Stateful
- 기본적으로 VPC 생성시 만들어줌
- Deny는 NACL에서만 가능
📌 Route Table
- 트래픽이 어디로 가야할지 알려주는 이정표
- 기본적으로 VPC 생성시 만들어줌
📌 Network Address Translation Instance / NAT Gateway
- Private Instance가 외부 인터넷과 통신하기 위한 통로
- NAT Instance는 단일 Instance (EC2)
✓ 사용 시 Source/Destination Check을 해제해 줘야함
✓ Public에 위치해 있어야 함
- Nat Gateway는 AWS에서 제공하는 서비스
✓ 고가용성이 확보되어 있음
✓ traffic에 따라 변동
✓ Security Group 영향을 받지 않음
📌 Bastion Host
- Private Instance에 접근하기 위한 Instance (User)
- Public Subnet에 위치해야 함
- 내부 서브넷에서만 연결이 가능하도록 포트를 개방해야함
📌 VPC Endpoint
- AWS의 DynmaoDB 등과 같은 서비스를 연결할 수 있게 해줌
- AWS PrivateLink 구동을 지원하는 AWS 서비스 및 VPC 엔드포인트 서비스에
비
공개로 연결 가능
- VPC 인스턴스는 서비스 리소스와 통신하는데 퍼블릭 IP주소를 필요로 하지 않음
- VPC와 기타 서비스 간 트래픽은 Amazon 네트워크를 벗어나지 않음
- 인터넷 게이트웨이, NAT 디바이스, VPN 연결 또는 AWS Direct Connect 연결을 필요로 하지 않음
🔎 Interface Endpoint: ENI(Elastic Network Interface) 기반
- Private IP를 만들어 서비스로 연결시켜줌
- 많은 서비스들을 지원 (SQS, SNS, Kinesis, Sagemaker등)
🔎 Gateway Endpoint: 라우팅 테이블에서 경로의 대상으로 지정하여 사용