AWS VPC 구성부터 ECS 배포까지

- ECS 배포를 위한 VPC의 기본 구성은 위와 같습니다.
- 앞으로 몇개의 글에 거쳐 위와 같은 형태로 배포하는 방법을 소개해보겠습니다

- 그리고 마지막에는 비용 절감을 위해, 위와 같은 형태로 배포도 해보겠습니다
그리고 여러 가지 중요한 개념들은 아래에서 다시 한 번 살펴보겠습니다.
순서대로 읽다가 모르는 개념이 있으시면 아래쪽 '주요개념'을 확인해 주시면 좋을것같습니다
1. VPC 및 네트워크 구성하기


- vpc에서 create VPC를 클릭
- VPC and more을 선택해 줍니다.

- public, private subnets는 모두 2개씩 선택해줍니다.
- private subnet을 사용하기 위해 NAT gateway를 하나 만들어줍니다.
- 비용 문제로 우선 하나만 생성(In 1 AZ)해줍니다.
- 당장 필요 없으니 VPC endpoints는 None으로 하겠습니다.

- 그러면 위와 같은 형태로 네트워크가 구성됩니다.

- 생성 버튼을 누르면 위처럼 전체 요소들이 한번에 생성됩니다
- VPC
- Subnets (public 1, 2, private 1, 2)
- IGW
- route tables
- NAT gateway...
- NAT생성에 시간이 5분정도 소요됩니다.
전체 생성 결과 확인하기
VPC

Subnets

IGW(인터넷 게이트웨이)

Route Table(라우트 테이블)

- 라우트 테이블은 3개가 생성되었고, 1번부터 각 2개, 1개, 1개 할당되어있습니다.


- rt-2, 3은 각각 NAT에 연결되어있습니다.
NAT(Network Address Translation)

ACL(Access Control List)


- ACL은 public, private 구분 없이 하나만 생성되어있고, Inbound, Outbound 모두 All traffic이 열려있네요.
- 일반적으로 Private는 전체를 열어줘도 좋지만, Public의 경우에는 필요에 따라 조정해 줍니다(80, 443, 3000 등..)
주요개념
VPC(Virtual Private Cloud)란?
- AWS에서 제공하는 가상 사설 네트워크 서비스
- 사용자가 정의한 IP 주소 범위 내에서 하나 이상의 서브넷을 포함하고 있음
- 공유기와 비슷한 개념
- 10.1.0.0/16
서브넷(Subnet)?
- VPC의 IP 주소 범위 내에서 사용자가 정의한 IP 주소 범위
- 서브넷은 하나의 가용 영역에 속해 있음
- 10.1.1.0/24
- 10.1.2.0/24
가용영역(Availability Zone)?
- AWS의 데이터 센터가 위치한 물리적인 장소
(b, d 말고 a, c 쓰세요)
IGW(Internet Gateway)란?
- VPC와 인터넷 간의 통신을 가능하게 해주는 게이트웨이
- IGW는 서브넷의 라우팅 테이블에 연결되어 있어야 함
라우팅 테이블(Routing Table)이란?
- 네트워크 트래픽을 전달하는 규칙을 정의한 테이블
- 라우팅 테이블은 서브넷에 연결되어 있음
NAT Gateway란?
- VPC 내부의 인스턴스가 인터넷과 통신할 수 있게 해주는 게이트웨이
- 퍼블릭 IP 주소를 가지고 있고, 퍼블릭 서브넷에 연결되어 있어야 함
ACL(Access Control List)이란?
- 서브넷과 연결된 인스턴스에 대한 네트워크 트래픽을 제어하는 방화벽
- 보안 그룹의 상위 개념, 서브넷에 연결된 모든 인스턴스에 적용됨
ECS(Elastic Container Service)란?
- AWS에서 제공하는 컨테이너 관리 서비스로, Docker 컨테이너를 실행하고 관리하는 서비스