# 서비스 배포 인프라 구성도
# 정정 내용 : PublicSubnet 라우팅 테이블에는 igw 경로가 추가되고 PrivateSubnet 에는 nat gw 경로가 추가된다.
또한 nat gw는 PublicSubnet과 연결되어 있어야 한다.
구성전 해야할 작업은 아래와 같다.
2022.05.02 - [AWS/AWS Network] - AWS 기본 네트워크 구성
2022.05.03 - [AWS/AWS Network] - Private Subnet에 존재하는 EC2에 접근하기
2022.05.03 - [리눅스/명령어 모음] - scp 명령어 활용 서버간 파일 전송
기본적으로 jar를 배포하여 웹프로그램이 동작 가능한 소스 코드가 준비되어 있어야 한다.
2022.03.29 - [SpringBoot/build] - 리눅스 java 설치 및 Gradle로 빌드하기
2022.04.12 - [SpringBoot/build] - jar 파일을 리눅스에서 빌드 후 웹서비스 접속
위의 구성도의 흐름 설명을 진행 한다. (번호 순으로 설명 진행)
1. 사용자 및 개발자가 Internet을 통해 웹 서비스 주소로 접근을 한다.
- ALB로 접근 시 ALB DNS 주소가 Endpoint 접속 주소가 된다.
- private 망에 있는 EC2에 접근 시 public 망에 있는 EC2 인스턴스인 BastionHost를 통해 접근을 해야 한다.
2. 인터넷을 통해 접근을 한다.
3. 가장 먼저 트래픽을 받는것은 InternetGateway이다.
AWS VPC로 들어오는 모든 트래픽은 IGW에서 우선 받는다고 보면 된다.
4. 위에서는 AppicationLoadBalancer로 바로 접근 되도록 했지만 Public망에 존재하는 EC2인 BastionHost로도 바로 접근 할 수 있다. 사용자가 어떤 주소를 호출 하는가에 따라서 Bastion 및 ALB로 이동을 한다.
5~6. 퍼블릭 망에 있는 라우터 테이블을 통해서 VPC내 local영역의 주소를 확인하고 트래픽을 전달 한다.
7~8. 퍼블릭 망의 라우터에서 프라이빗 망의 라우터 테이블로 트래픽을 보내고 프라이빗 망의 라우터 테이블 주소를 확인 후 EC2 인스턴스에 트래픽을 전달 한다.
9. 웹 애플리케이션이 실행되고 있는 실제 EC2 인스턴스 이다. 해당 인스턴스에서 jar 파일로 빌드된 프로그램이 돌고 있다. 클라이언트가 해당 정보를 호출 하면 해당 정보를 다시 역으로 라우팅 테이블, 라우터 를통해 최종적으로 NAT Gateway로 전송 한다.
10. NAT Gateway는 트래픽을 받고 최종적으로 Internet Gateway로 트래픽을 전달 한다. 그리그 Internet Gatwway는 전달받은 트래픽을 인터넷을 통해 사용자에게 전달 한다.
'⌛ AWS 인프라 구성하기 (MiniProject) > ✅ 개발환경 구성 (EC2)' 카테고리의 다른 글
4. Lunch-templates, Userdata, Stickiness cookie, SecurityGroup를 활용한 ASG 구성 (0) | 2022.05.10 |
---|---|
3. Lunch-templates, Userdata, Stickiness cookie를 활용한 ASG 구성 (0) | 2022.05.09 |
2. ASG (AutoScalingGroup) 적용하기 (0) | 2022.05.04 |