지하철 노선도 미션 요구사항

깃헙 저장소를 활용하여 미션을 진행할 수 있어요.

1. 망 구성하기

VPC 생성
CIDR은 C class(x.x.x.x/24)로 생성 (현업에선 가급적 B class로 생성해주세요 )
Subnet 생성
외부망으로 사용할 Subnet : 64개씩 2개 (AZ를 다르게 구성)
외부망은 인터넷 구간과 통신 가능
내부망으로 사용할 Subnet : 32개씩 1개
내부망에서만 인터넷 접근 가능
관리용으로 사용할 Subnet : 32개씩 1개 (system manager를 사용한다면 별도의 관리망 없이 내부망 2개로 구성, 보안그룹도 상황에 맞게 구성)
Security Group 설정
외부망
전체 대역 : 443 포트 오픈
관리망 : 22번 포트 오픈
내부망
외부망 : 3306 포트 오픈
관리망 : 22번 포트 오픈
관리망
자신의 로컬 PC 공인 IP : 22번 포트 오픈

2. 서버 구성하기

외부망에 reverse proxy, WAS 용도의 EC2 생성
내부망에 DB 용도의 EC2 생성
관리망에 베스쳔 서버용도의 EC2 생성 혹은 system manager 활용
(EC2를 생성했다면) 베스쳔 서버에 Session Timeout 600s 설정
(EC2를 생성했다면) 베스쳔 서버에 Command 감사로그 설정
외부망에 웹 애플리케이션을 배포
DNS 구성

3. 3tier 구성하기

운영 환경 구성하기
웹 애플리케이션 앞단에 Reverse Proxy 구성하기
Reverse Proxy에 TLS 설정하기
운영 데이터베이스 구성하기
배포 스크립트 작성하기
개발 프로세스를 위해 배포 환경 구성하기
JUnit : h2, Local : docker(mysql), Prod : 운영 DB를 사용하도록 설정

4. 화면 응답 개선하기

웹 성능 테스트
Reverse Proxy 개선하기
gzip 압축 설정
cache 설정
TLS 설정
HTTP/2 설정
Tomcat 개선하기
gzip 압축 설정
cache 설정