티스토리 뷰
6장 가상 네트워크 서비스 Amazon VPC
6.1 Amazon VPC란: AWS에 생성하는 가상 네트워크
- AWS 상에 네트워크를 구축하기 위해 사용되는 것이 Amazon VIrtual Private Cloud(Amazon VPC)이다.
- EC2나 RDS의 경우 VPC를 선택하지 않으면 서버를 생성할 수 없기 때문에 리소스를 사용하기 위해서는 반드시 필요한 서비스이다.
- VPC는 네트워크와 서브넷 범위, 라우팅 테이블, 네트워크 게이트웨이 등과 같은 가상 네트워킹 환경을 설정할 수 있다.
- VPC의 주요 기능
- CIDR 블록
- 서브넷 마스크
- 가용 영역 (서브넷이 구축된 물리적 장소)
- 인터넷 게이트웨이
- 라우팅
- 라우팅 테이블
- 보안 그룹
- 네트워크 ACL
- VPC 네트워크의 특징
- 소프트웨어가 라우팅한다. 라우터는 IP 주소를 갖지 않는다.
- 라우팅 테이블 한 개에 서브넷 여러 개를 설정할 수 없다.
- VPC 한 개에 인터넷 게이트웨이는 한 개만 설정할 수 있고, IP 주소를 갖지 않는다.
- 서브넷 사이의 통신은 라우터 없이 직접 통신할 수 없다.
- 요약
- 서비스명 : Amazon VPC
- 사용빈도 : ★★★★
- 요금 : AWS 사이트 간 VPC + Client VPC + 데이터 송신 + 옵션
- 매니지드 서비스 : X
- 서울 리전 : O
- VPC : O
6.2 VPC의 사용 절차: 가상 네트워크를 사용하자
- 인터넷 연결 여부와 오토 스케일링이 설계의 중요 포인트이다.
- 인터넷에 연결해야 한다면 인터넷 게이트웨이를 설정해야 하고, 오토 스케일링을 설정해야 한다면 서버가 자동으로 늘어나기 때문에 IP 주소를 많이 확보해 두어야 한다.
- 서브넷을 설정해야 한다.
- 어떻게 해야 할지 잘 모를 때는 기본 VPC를 사용하기를 권장한다.
6.3 기본 VPC: AWS가 제공하는 기본 VPC
- AWS는 네트워크 지식이 없어도 VPC를 사용할 수 있도록 리전별로 기본 VPC를 제공한다.
- 특별한 요건이 없는 이상, 기본 VPC를 사용하는 편이 좋다.
- 기본 VPC는 서브넷과 인터넷 게이트웨이가 기본적으로 구성되어 있다.
- 기본 서브넷은 가용 영역별로 한 개씩 생성되어 있다. 서울 리전의 경우 총 4군데가 있다. (2021년 3월 기준)
- 인터넷 게이트웨이도 구성되어 있으므로 인터넷에 접속할 수 있다.
- 인터넷에 접속하고 싶지 않다면 별도의 VPC를 생성해야 한다.
6.4 서브넷과 DHCP: 사용할 범위 선택
- 서브넷이란 커다란 네트워크를 작게 나눈 네트워크를 말한다.
- 네트워크를 분할해 직접 통신할 수 있는 범위를 좁히고, 방화벽을 설정해 보안을 강화하는 것을 목적으로 한다.
- 네트워크를 분할하려면 CIDR 표기를 사용한다.
- 네트워크는 클래스를 가지고 있다.
6.5 라우팅과 NAT: 공인 IP 주소와 사설 IP 주소 변환
- 네트워크 간 데이터를 주고받으려면 라우팅이나 NAT(네트워크 주소 변환) 방식을 사용해야 한다. AWS를 사용할 때 이와 같은 네트워크 기초 지식이 부족하면 서비스를 구축하기 어려우므로 네트워크 기초 지식에 대한 공부가 필요하다.
- 라우팅은 라우터에서 목적지까지 데이터를 송신하는 방법이다.
- IP 주소는 목적지이다.
- LAN 내부의 출입구가 되는 것이 게이트웨이다.
- IP 마스커레이드는 일대다이며 공인 IP 주소와 사설 IP 주소를 변환한다.
- NAT는 다대다이며 공인 IP 주소와 사설 IP 주소를 변환한다.
- IP 마스커레이드는 포트를 변환할 수 있지만 NAT는 할 수 없다.
6.6 인터넷 게이트웨이와 NAT 게이트웨이: VPC에서 인터넷으로 접속
- 인터넷 게이트웨이는 EC2 인스턴스와 인터넷을 연결한다. (인터넷 -> EC2)
- NAT 게이트웨이는 EC2 인스턴스와 인터넷을 연결한다. 인터넷에서 서브넷으로 접속하지 못하게 할 수 있다. (EC2-> 인터넷)
6.7 보안 그룹과 네트워크 ACL: 보안 설정
- VPC의 가상 방화벽으로 보안 그룹과 네트워크 ACL이 있다.
- 보안 그룹은 인스턴스에 네트워크 ACL은 서브넷에 설정하는 가상 방화벽이다.
- 인바운드 트래픽(데이터가 유입되는 것)과 아웃바운드 트래픽(데이터가 유출되는 것)을 제어하는데 반드시 양쪽 모두 설정해야 하며 명시적으로 설정하지 않으면 기본 설정이 적용된다.
항목 | 보안 그룹 | 네트워크 ACL |
설정 범위 | 인스턴스에 대해 설정한다(보안 그룹을 최대 5개 할당할 수 있다) | 서브넷에 설정한다. |
규칙 | 규칙 허용만 가능하다. | 규칙 허용과 거부가 가능하다. |
설정 | 스테이트풀(stateful) (규칙과 상관없이 반환된 트래픽을 자동으로 허용한다) |
스테이트리스(stateless) (반환된 트래픽을 규칙에 따라 명시적으로 허용한다) |
규칙의 적용 순서 | 모든 규칙을 확인하여 트래픽의 허가 여부를 정한다. | 순서대로 규칙을 처리하면서 트래픽의 허가 여부를 결정한다. |
6.8 VPC 엔드포인트: 다른 AWS 서비스 및 엔드포인트 서비스와 연결
- VPC 엔드포인트란 VPC 내부에서 VPC 외부로 접속하기 위한 연결점을 제공하는 서비스이다.
- AWS의 모든 서비스가 VPC 내에 설치되어 있는 건 아니다. VPC를 사용하지 않는 대표적인 서비스로 S3와 DynamoDB가 있다. AWS 안에서는 전부 통신할 수 있을 거라 생각하는데, 일부러 인터넷 회선을 통해서 외부로 연결해야 한다면 작업도 번거롭고 보안 면에서도 불안할 것이다.
- 이러한 단점을 보완하기 위해 인터넷 게이트웨이를 통하지 않고, S3와 같은 VPC 외부에 있는 서비스와 VPC를 직접 연결해주는 것이 엔드포인트 서비스이다. VPC의 출입구로 엔드포인트를 설정하면 S3와 직접 연결할 수 있다.
- 인터페이스 엔드포인트 : 네트워크 인터페이스(ENI)로 구축하는 유형 (AWS PrivateLink 방식)
- 게이트웨이 엔드포인트 : 라우팅 테이블에 설정된 내용을 라우팅하는 유형
6.9 VPC 연결: VPC와 VPC의 연결과 VPC와 VPN의 연결
- AWS Direct Connect는 AWS 네트워크에 전용선을 물리적으로 연결하는 방법이다. (전용선 회선 공사, 라우터 설치가 필요하며 월 비용도 많이 발생한다)
- AWS VPN은 AWS 네트워크에 가상으로 전용선을 연결한다.
- 전송 게이트웨이는 VPC나 온프레미스 네트워크를 하나로 묶어서 서로 연결하는 연결점을 제공한다.
'개발기타 > 그림으로 이해하는 AWS 구조와 기술' 카테고리의 다른 글
그림으로 이해하는 AWS 구조와 기술 - 8장 알아 두면 좋은 AWS 서비스 (0) | 2021.10.19 |
---|---|
그림으로 이해하는 AWS 구조와 기술 - 7장 RDS (0) | 2021.10.15 |
그림으로 이해하는 AWS 구조와 기술 - 5장 S3 (0) | 2021.10.06 |
그림으로 이해하는 AWS 구조와 기술 - 4장 EC2 (0) | 2021.10.04 |
그림으로 이해하는 AWS 구조와 기술 - 1, 2장 AWS/클라우드/네트워크 기초 (0) | 2021.10.03 |
- Total
- Today
- Yesterday
- aws fargate
- 디버깅
- https
- Refactoring
- Debug It! 실용주의 디버깅
- 일잘러
- 리팩터링이란
- Debugging
- Debug
- 안심 첫 문장
- amazon vpc
- 박소연
- 지시의 언어
- 매개변수화
- 제어플래그
- 그림으로 배우는 HTTP & Network
- SSL
- 코드악취
- 리팩토링
- 마틴파울러
- AWS
- 위임
- amazon aurora
- 조건부 로직
- 코드스멜
- 질의함수
- 변경함수
- HTTP
- 일 잘하는 사람은 단순하게 말합니다
- 그림으로 공부하는 IT 인프라 구조
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |