프론트: module-common에 대해 테스트를 원해요 !! API 명세서 작성해주세요 !!
→ 기존의 멀티 모듈에서 기본 기능에 대해서만 분리하여 단일 서버에 올리고 Swagger를 통해 API 공유 예정
이런 식으로 만들어봅시다~!(이 후에 서버 더 추가할거라 미리 로드 밸런서 넣었음!!)
1) EC2 생성
보안 그룹 설정
-SSH - 22번 포트
-HTTP - 80번 포트
-HTTPS - 443번 포트 (0.0.0.0/0)
인스턴스 시작
2) Route 53 통해 도메인 연결
트래픽 라우팅 대상 4개의 주소 기억 → 레코드 생성
값 필드에 아까 생성했던 탄력적 IP(EIP) 입력 → 레코드 생성
EC2 Elastic IP를 가진 레코드 생성 완료
가비아에 해당 도메인 설정 → 호스트 영역을 설정하고 얻은 4개의 트래픽 라우팅 대상 주소 입력
3) SSL 인증서 발급
인증서 요청
레코드 생성
완전히 정규화된 도메인 이름에 Route53에 등록한 도메인 입력
Route53의 레코드 확인시 CNAME 유형의 레코드가 생성됨
CNAME으로 등록된 정보 가비아 → DNS 관리 → DNS 설정에 등록
인증서가 사용중이 아니기 때문에 갱신 자격이 부적격임
ELB(Elastic Load Balancer)를 사용하여 연결 필요
ALB 사용
고유한 로드 밸런서 이름 설정
매핑 부분은 2a, 2c 선택 (해당 값은 EC2의 zone 확인 시 알 수있음, 서울 리전은 보통 2a, 2c)
보안 인바운드 규칙 - HTTP, HTTPS 허용
기존의 HTTP:80 이외에 HTTPS:443도 추가
아까 ACM에서 생성한 인증서 선택
대상 그룹 생성
식별 가능한 대상 그룹 이름 설정, 프로토콜 및 포트 설정
해당 경로의 status code는 200을 반환해야함
다시 돌아와 대상 그룹으로 선택 → 로드밸런서 생성
HTTP:80의 리스너 편집
Route53의 A레코드에 대해 편집 필요
: 로드 밸런서를 통해서 서버로 포워딩 되도록 도메인 이름으로 접속하면 ec2 인스턴스가 아닌 로드 밸런서로 요청이 가도록 레코드 A를 편집
로드밸런서를 확인, 아직 서버에 코드를 실행시키지않아서 Unhealthy상태가 나온다
'개발' 카테고리의 다른 글
[스프링부트] FCM (Firebase Cloud Messaging) - bulk + 비동기 전송 (0) | 2024.10.08 |
---|---|
AWS 단일 서버 설정 (Docker) - 2편 (0) | 2024.10.07 |
[스프링부트] FCM (Firebase Cloud Messaging) - 개별 전송 (1) | 2024.10.02 |
[스프링부트] 마케팅 수신 동의 멤버 조회, @Cache- (0) | 2024.10.02 |
[스프링부트] 필수 약관 - Native Query (0) | 2024.09.25 |