안녕하세요. J4J입니다.
이번 포스팅은 ALB에 CloudFront 적용하는 방법에 대해 적어보는 시간을 가져보려고 합니다.
들어가기에 앞서
다음 글들을 통해 ALB 설정 방법과 Route53에 도메인을 등록하는 방법을 참고하시면 글을 읽는데 이해를 도울 수 있습니다.
[AWS] ALB(Application Load Balancer) 사용하기 (Feat, SSL 설정)
[AWS] Cafe24 도메인 AWS EC2에 연결하기 (Feat. Route53)
CloudFront란?
CloudFront는 AWS에서 제공해주는 CDN (Content Delivery Network) 서비스로 이미지 파일, 정적 및 동적 콘텐츠를 사용자들에게 더 빨리 제공하도록 도와줍니다.
CDN이 사용자들에게 콘텐츠를 더 빨리 제공해주는 이유는 다음과 같습니다.
- 엣지 로케이션이라고 부르는 전 세계 여러 장소에 분산되어 있는 서버들이 구성되어 있음
- 사용자가 서비스에 접근할 때 지연 시간이 가장 작은 엣지 로케이션을 활용하여 콘텐츠 제공
- 엣지 로케이션에는 파일들이 캐싱되어 보관
SSL 인증서 발급
AWS에서 SSL 인증서는 ACM을 이용하여 무료로 발급받을 수 있습니다.
발급을 받기 전 필요한 준비물로는 Route53에 사용할 도메인이 등록되어 있어야 합니다.
또한 CloudFront에 사용될 SSL은 버지니아 북부 리전에서 만들어져야 합니다.
리전을 버지니아 북부로 변경한 뒤 아래 작업을 진행해 주시길 바랍니다.
[ 1. ACM 접속 ]
[ 2. 인증서 요청하기 ]
[ 3. 인증서 유형 선택 ]
[ 4. 인증서 정보 입력 ]
도메인, 검증 방법, 키 알고리즘 등을 다음과 같이 선택해주시면 됩니다.
도메인 같은 경우는 멀티 도메인을 적용하고 싶다면 "이 인증서에 다른 이름 추가" 버튼을 클릭하여 추가적으로 작성해 주시면 됩니다.
작성이 완료되면 요청 버튼을 클릭하여 생성해줍니다.
[ 5. 생성한 인증서 상세 정보 접속 ]
인증서를 생성했다면 인증서 ID를 클릭하여 상세 정보로 접속해 줍니다.
[ 6. Route 53에 레코드 생성 ]
"Route 53에서 레코드 생성" 버튼을 클릭해 줍니다.
그리고 도메인을 선택하여 레코드 생성 버튼을 클릭합니다.
[ 7. 레코드 생성 확인 ]
생성을 완료한 뒤 문제가 없다면 1~2분 내로 다음과 같이 상태가 자동으로 변경됩니다.
상태가 변경되지 않는 다면 문제가 있는 것이니 Route53쪽 확인을 해보시면 됩니다.
CloudFront 생성
[ 1. CloudFront 접속 ]
[ 2. 배포 생성 ]
[ 3. 원본 정보 ]
원본 도메인은 생성되어 있는 ALB를 선택해 줍니다.
프로토콜은 ALB가 사용되는 것으로 선택해 주시면 됩니다.
나머지 정보들도 원하는 사항에 맞게 입력을 해주시면 됩니다.
[ 4. 기본 캐시 동작 정보 ]
기본 캐시 쪽도 HTTP 메서드 등 원하는 방향대로 자유롭게 선택해주시면 됩니다.
다만 캐시 설정에서는 다음과 같이 헤더에 Host가 추가되어 있어야 합니다.
[ 5. 함수 연결 정보 ]
함수 연결 정보도 필요한 경우 추가해 주시면 됩니다.
[ 6. 설정 정보 ]
설정 정보에서는 위에서 생성한 ACM SSL 인증서를 다음과 같이 등록해 줍니다.
또한 사용되는 도메인의 이름을 대체 도메인 이름에 추가해 줍니다.
그 외 정보들은 자유롭게 선택해 주면 됩니다.
모든 정보 입력이 완료되었다면 배포 생성을 클릭해 줍니다.
[ 7. 배포 확인 ]
처음 생성을 하면 다음과 같이 세부 정보에 배포 중인 상태 값이 표시됩니다.
이 상태에서 약 5분 내로 다음과 같이 수정 시간이 적용되는 것을 확인할 수 있습니다.
Route53 설정
[ 1. Route53 접속 ]
[ 2. 등록한 호스팅 선택 ]
왼쪽 호스팅 영역 메뉴에 접속한 뒤 CloudFront에 사용될 호스팅을 선택해 줍니다.
[ 3. 레코드 생성 ]
[ 4. 레코드 정보 입력 ]
레코드 유형은 A로 한 뒤 별칭을 클릭하여 오른쪽으로 토글이 이동되도록 해줍니다.
그다음 트래픽 라우팅 대상에서 "CloudFront 배포에 대한 별칭"을 선택해 주고 생성한 CloudFront를 등록해 줍니다.
테스트
레코드를 생성한 뒤 약간의 시간이 지난 상태에서 등록한 도메인을 접속해 보시면 다음과 같은 결과를 확인할 수 있습니다.
이상으로 ALB에 CloudFront 적용하는 방법에 대해 간단하게 알아보는 시간이었습니다.
읽어주셔서 감사합니다.
'Infra, Cloud > AWS' 카테고리의 다른 글
[AWS] VPC 피어링 연결하기 (0) | 2023.07.20 |
---|---|
[AWS] Session Manager를 이용하여 EC2 인스턴스에 접근하기 (0) | 2023.07.17 |
[AWS] ECS 사용하기 (4) - ECS 수정하기 (0) | 2022.12.05 |
[AWS] ECS 사용하기 (5) - ECS 외부 인스턴스 추가하기 (0) | 2022.11.29 |
[AWS] ECS 사용하기 (3) - GitLab으로 ECS 인스턴스에 배포하기 (0) | 2022.11.18 |
댓글