아래 포스팅에서 이어지는 글입니다.
[AWS] 3-Tier-Architecture 구축 #1 - 설계
Django로 만든 프로젝트를 AWS에서 3 Tier Architecture로 구현하는 실습을 해보려고 한다. 먼저 3 Tier Architecture에 대해 알아보자. 3 Tier Architecture란? 애플리케이션을 Web Server, Application Server, Database Server
jjung0326.tistory.com
1. VPC 생성
계획한 IP 대역에 맞게 VPC를 생성해준다.
2. Subnet 생성
계획한 서브넷에 맞게 서브넷을 생성해준다.
예시로 2개를 띄웠지만, 8개 모두에 대해 생성해주었다.
이때 가용영역을 아키텍처와 같이 a와 c로 나누어 생성해주어야한다.
서브넷 이름을 가시적으로 Public/Private으로 나누었지만 실제 서브넷을 생성할때는 이를 설정해주는게 따로 없다.
AWS에서 Public/Private subnet 여부는 Internet Gateway에 연결되었는지 아닌지에 따라 구분된다!
3. Internet Gateway 생성
Public Subnet은 Internet Gateway를 통해 외부망과 연결될 수 있다.
따라서 앞에서 생성한 VPC에 Internet Gateway를 생성해주었다.
Internet Gateway를 생성해주면 다음과 같은 안내문구가 뜬다.
VPC에 연결해주자.
4. IGW - Routing Table 생성
Internet Gateway를 VPC에 생성해주었지만 아직 해야할 작업들이 남아있다.
트래픽이 전달되게 하려면 Internet Gateway의 라우팅 테이블을 설정해주어야한다.
라우팅 테이블은 서브넷에서 밖으로 나가는 아웃바운드에 대한 라우팅 경로를 설정해준다.
먼저 기본 라우팅 설정으로 VPC의 내부통신(local)은 열려있다.
IGW에 대해 외부망(0.0.0.0/0)으로 라우팅할 수 있도록 설정을 추가해준다.
만든 라우팅 테이블에 Public Subnet인 public-nat와 public-bastion을 연결해준다. (public subnet을 외부망과 연결하기 위해서 명시적으로 연결한다.)
5. IGW - Routing Table 설정
Internet Gateway를 VPC에 연결해준다고 끝나는 것이 아니다.
트래픽이 전달될 수 있도록 라우팅 테이블을 설정해주어야한다.
라우팅 테이블은 서브넷에서 밖으로 나가는 아웃바운드에 대한 라우팅 경로를 설정해줄 때, 목적지와 타겟을 미리 정의해 둔 테이블이다.
- 먼저 기본 라우팅 설정으로 VPC에 대한 내부통신(local)은 열려있다.
- 추가로 모든 IP 주소에 대해 인터넷 게이트웨이를 통해 라우팅할 수 있도록 설정을 추가해준다.
생성한 Routing Table에 Public 서브넷인 NAT Gateway와 Bastion Gateway를 명시적으로 연결해준다.
3-Tier 구축의 뼈대가 되는 VPC, Subnet, Internet Gateway와 Internet Gateway Routing Table 설정까지 완료하였다.
다음 포스팅에서는 NAT Gateway 설정방법을 알아보고자 한다.
추가로 AWS NAT Gateway는 생성만해도 시간당 0.045 USD의 요금이 부과된다 ㅎㅎ.. (데이터 처리시 추가적으로 더 요금이 부과된다.)
따라서 이 비용을 줄일 수 있는 방법도 함께 알아보려고 한다 !
'AWS' 카테고리의 다른 글
[AWS] 서버리스로 서버없이 간단한 웹 애플리케이션 만들기 (0) | 2023.06.26 |
---|---|
[AWS] 3-Tier-Architecture 구축 #4 - Bastion Host와 WEB 계층 (0) | 2023.06.15 |
[AWS] 3-Tier-Architecture 구축 #3 - NAT Gateway 대신 NAT Instance를 사용해 비용 절약하기 (0) | 2023.06.15 |
[AWS] 3-Tier-Architecture 구축 #1 - 설계 (0) | 2023.06.14 |
[AWS] Windows에서 EC2 인스턴스 접속하기 (0) | 2023.06.13 |