본문 바로가기
서버/클라우드

ELB 에 HTTPS 설정하기 - 2 -

by 사악신 2021. 12. 3.

예전 방식인 Classic Loadbalncer 의 경우, 2017.04.13 - [프로그래밍/AWS(아마존 클라우드)] - ELB 에 HTTPS 설정하기...

포스팅을 참고해주세요.

 

먼저, 로드밸런서를 생성합니다.

이때 Application Load Balancer 를 생성합니다.

로드 밸런서의 이름을 지정합니다.

Network mapping 의 경우 EC2 가 위치하고 있는 가용 영역을 지정합니다. 추후 추가할 영역도 고려하여 복수개 선택합니다. Listeners and routing 에서 HTTP 80 의 타겟 그룹을 생성합니다.

 

타겟 타입은 Instances 를 선택합니다.

타겟 그룹네임을 지정합니다.

프로토콜 버전은 HTTP1 을 선택합니다.

Health check path 를 지정하고 홈페이지에서도 해당 라우트에 대한 작업을 추가합니다.

이후, 타겟 등록 화면에서 연결을 원하는 EC2 를 선택한 후, Include as pending below 버튼을 클릭합니다.

이어서 타겟 그룹을 생성합니다.

타겟 그룹이 생성되면 이전 로드밸런서의 Listeners and routing 설정으로 돌아간 후, 추가한 파리미터 그룹을 지정합니다.

Create load balncer 버튼을 클릭하여 로드밸런서를 생성합니다. 로드 밸런서가 생성되면, HTTP 의 action 을 아래와 같이 수정합니다.

그리고 리스너를 추가합니다. 프로토콜을 HTTPS 로 선택합니다.

인증서를 사용하기 위하여 맨 아래 Request new ACM certificate 링크를 클릭합니다. 아마존 인증서를 사용하기 위하여 인증서 요청 버튼을 클릭합니다.

퍼블릭인증서를 선택하고, 도메인 정보를 입력합니다. 이때 1차 도메인은 동일한 주소여야합니다.(로드 밸런서의 경우, 복수의 인증서를 추가할 수 있으니 다른 도메인의 경우 별도의 인증서를 생성하여 추가합니다.)

지정된 2차 도메인은 Route 53 에 모두 등록되어 있어야합니다. 검증 방법은 DNS 검증으로 한 후, 요청 버튼을 클릭합니다.

인증서가 생성되면 인증서 ID 를 클릭하여 상세 화면으로 들어간 후, Route 53에서 레코드 생성 버튼을 클릭합니다.

이 후, 인증서 검증전까지 수 분이 소요됩니다. 인증서의 상태가 발급됨으로 변경되었는 지 확인합니다.

다시, 로드 밸런서의 Add listner 설정으로 돌아와 Default actions 를 Forward 로 지정한 후, 이전에 생성한 타켓 그룹을 지정합니다.

이 후 생성한 인증서를 지정합니다.

완료된 리스너는 아래와 같은 형태를 보이게 됩니다.

Route 53 에서 각 도메인의 A 레코드를 로드밸런서를 가리키도록 수정합니다.

 

로드밸런서의 보안그룹에 80, 443 포트가 지정되었는지 확인하여야하며, heartbeat 의 요청은 EC2 의 프라이빗 IP 를 호스트로 요청하니 해당 호스트를 담당하는 홈페이지에서 처리하여야합니다. 그 외 라라벨 설정 등은 이전 포스팅 글의 내용을 참고하세요.

반응형

댓글