진행 사항
현재까지 진행된 상황은
- Route53에서 도메인 구입(https://diggingcode.tistory.com/50)
- SSL 인증서 발급(https://diggingcode.tistory.com/51)
- ALB 생성
이다.
이번 포스팅에서는 https://diggingcode.tistory.com/52 에 이어
대상 생성 & ALB 내 리스너를 설정하며 HTTPS를 적용해주고자 한다.
목표
현재 달성하고자하는 바를 간단하게 설명해 보자면 다음과 같다.
- 구매한 sample.com 도메인의 subdomain을 사용
- jenkins.sample.com를 EC2 3333 포트에 라우팅
- api.sample.com를 EC2 8080 포트로 라우팅
- 발급받은 인증서를 사용하여 HTTPS 접속을 가능케 함
진행 과정
서브도메인 생성 및 ALB 연결
Route53-Hosting 영역-레코드 생성에서 다음과 같이 서브도메인을 생성해 주고,
로드 밸런서를 트래픽 라우팅 대상으로 지정하자
대상 그룹 추가
로드밸런서 리스너 등록 전 라우팅 목적지에 해당하는 '대상 그룹'을 생성해주도록 하자
필자는 jenkins (3333 포트), application(8080 포트) 두 개를 생성하였다.
아래 캡처본은 jenkins 대상 그룹을 생성할 경우이다.
상태 검사는 jenkins의 경우 login이기에 그렇게 기입하였다.
API 서버 같은 경우 미리 구현 해 둔 /healthcheck 엔드포인트로 health check를 진행하지만,
jenkins의 경우에는 /login 이 헬스체크 엔드포인트로 지정되어 있어 두 개로 나누었음
리스너 추가
HTTPS 설정을 위해 리스너를 추가한다.
보안 리스너의 SSL/TLS 서버 인증서에서 ACM에서 발급받은 인증서를 등록하면 HTTPS 통신이 가능해진다.
이로써 ALB의 SSL 인증서 등록은 마무리되었다.
리스너 규칙 추가
1. jenkins.sample.com -> 3333 포트로 라우팅
2. api.sample.com -> 8080 포트로 라우팅
하도록 리스너 - 규칙을 추가해준다
만약 1번의 경우에는, 호스트 헤더에 jenkins.sample.com을 기입해주면 된다.
그러면 리스너 HTTPS 443 포트로 jenkins.sample.com의 헤더를 가지고 접근할 경우 3333 포트로 라우팅된다.
마찬가지로 API 서버에도 적용할 수 있도록 규칙을 생성해주었고,
아래와 같이 한 HTTPS:443 리스너에 다음과 같은 규칙들이 생성되었다
해당 설정을 완성하면 https://jenkins.sample.com에 접근 시 jenkins가 실행 중인 3333 포트로 접속 가능하다.
'Infra > AWS' 카테고리의 다른 글
ALB 생성 및 SSL 적용하기 (1) (0) | 2024.11.19 |
---|---|
ACM을 통한 인증서 발급 (0) | 2024.11.18 |
Route53을 통한 도메인 구매 (0) | 2024.11.18 |