본문 바로가기
Cloud AWS, Azure, GCP

AWS 인프라 구축 실습 12회 - CloudFront

by SB리치퍼슨 2021. 12. 8.

AWS 인프라 구축 실습 12회 - CloudFront



실습과정
1. CloudFront 생성
2. 원본 긴급 업데이트 요청 시 CDN 업데이트

준비사항
1. S3 : sbrich-s3
2. Route53 : S3 도메인 s3.sbrich.shop


CloudFront란 글로벌 컨텐츠 전송네트워크입니다.
Amazon CloudFront는 짧은 대기 시간과 빠른 전송 속도로 전 세계 고객에게 데이터, 비디오, 애플리케이션 및 API를 안전하게 전달하는 고속 콘텐츠 전송 네트워크(CDN) 서비스입니다. 이 서비스의 장점은 사이트 대기시간 감소, 보안 개선, 비용절감, 사용자 정의 전송이 있습니다. 실시간 스트리밍 서비스나 소프트웨어 업데이트나 ioT OTA 업데이트 배포(엣지 로케이션 서비스)가 있습니다. 

S3 서비스의 경우에는 최신데이터를 제공하고 CloudFront에는 시간차 업데이트로 데이터 서비스를 제공합니다.
특정시간 서버 업데이트 서비스 실습
실습 : 외부이용자 cdn url(firefbox), 관리자 s3 url(crome) 사용 : 브라우저 캐쉬문제로 브라우저 별도 사용


1. CloudFront 생성


CloudFront 메뉴로 이동합니다.

CloudFront 시작페이지에서 "CloudFront 배포 생성" 버튼을 클릭하여 배포 생성 작업을 시작합니다.

- CloudFront 배포생성 (freetier)
원본도메인(origin) : s3.sbrich.shop
원본경로 : (공백)
이름 : default

디폴트 값으로 진행합니다.



캐시동작 : default

아래 설정값도 디폴트로 진행합니다. 기본값 루트 객체는 공백 또는 index.html로 설정합니다.


위의 설정으로 배포생성을 클릭합니다. 
생성된 CloudFront "E2EDTF5G6UVT3F"를 선택해서 배포상태를 확인합니다.


위의 배포도메인 : https://dh5ej1s54ixdc.cloudfront.net을 복사해서 Firefox 웹브라우저에서 접속해 봅니다.

생성된 CloudFront URL 접속 사이트




2. S3 업데이트로 CloudFront 서버 배포상태 확인

생성된 CloudFront 서버를 이용하여 원본 도메인에서 index.html을 수정하였을 때 CloudFront 서버를 확인하고 무효화생성 후 두 사이트를 비교하여 보겠습니다.
예를 들어, 원본도메인에서 긴급 업데이트 요청이 발생한 경우라고 가정하고
index.html 파일을 변경한 후에 업로드 반영하여 브라우저에서 확인해 보겠습니다. 
파일을 변경하여 업로드하는 경우에는 권한에서 ACL > 미리 정의된 ACL을 "퍼블릭 읽기 액세스 권한 부여"로 설정해 주어야 실습에서 테스트가 가능합니다.


index.html 을 변경하기 전의 페이지입니다.

 
아래 원본도메인 : http://s3.sbrich.shop/



아래 CDN 도메인 : https://dh5ej1s54ixdc.cloudfront.net/

예상한 것처럼 S3 원본도메인은 업데이트 되었지만 CDN 도메인은 업데이트 되지 않았습니다.

그러면, 변경된 정보를 반영하기 위한 설정을 한 후 각 도메인을 비교해보겠습니다.
CloudFront 페이지로 가서 무효화 탭을 선택합니다.


무효화 생성을 클릭합니다.
index.html 만을 반영할 것이기 때문에 아래와 같이 입력하고 무효화 생성을 클릭합니다.


이렇게 하면 S3서버에서 업데이트가 발생하면 바로 CloudFront 적용될 수 있도록 합니다.


Firefox에서 확인해보겠습니다.

원본도메인 : http://s3.sbrich.shop/


아래 CDN 도메인 : https://dh5ej1s54ixdc.cloudfront.net/
(무효화 요청은 시간이 10분정도까지도 소요됩니다. 따라서 무효화 생성 후 한 참 기다렸다가 확인해야 수정된 index.html을 확인할 수 있습니다. 무효화의 경우 파일 캐시가 서버에 있기 때문에 오래 걸립니다. 10초 이내에 반영을 하기 위해서는 경로나 파일명을 변경해서 새로운 파일로 인식하도록 하면 캐시가 적용되지 않아 빠르게 변경될 수 있습니다)

위와 같이 CDN 도메인에서도 index.html의 파일의 내용이 변경되어 반영되었음을 확인할 수 있습니다.



AWS 인프라 구축 실습 12회 - CloudFront를 해봤습니다.
다음은 AWS 인프라 구축 실습 13회 - ECR 실습을 해보겠습니다.




반응형

댓글