목차
사용자 입장에서 가장 가까운 곳에서 컨텐츠를 받게 해주는 서비스이다.
미국 사용자는 미국에 있는 서버에서 컨텐츠를 받게 해준다.
1) 원본인 S3(스토리지)를 미리 만들어 놓자.
S3 > Create bucket
Bucket name : food1.it-pro1.com
Block all public access : 체크 해제
2) Upload해서 파일을 올리자 !!
index.html
3) Properties > Static website hosting 설정하자.
index.html
error.html
4) URL로 접속 확인 > 안된다.
권한을 추가해야 한다.
5) 권한 추가
Permissions > bucket Policy 에서 권한을 추가한다.
{
"Version": "2012-10-17",
"Id": "S3PolicyId1",
"Statement": [
{
"Sid": "IPAllow",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::food1.it-pro1.com/*",
"Condition": {
"IpAddress": {
"aws:SourceIp": "210.0.0.0/8"
}
}
}
]
}
CDN은 원본서버가 중요하다.
원본서버의 컨텐츠를 각 나라에의 서버로 배포해주는 서비스이다.
S3(스토리지)를 원본으로 이용하는 CloudFront설정법을 알아보자.
1. CloudFront > Create Distribution (분배)
2. 분배할 컨텐츠의 방법선택
1) WEB방식
2) RTMP방식
정적인 컨텐츠인 WEB 방식을 선택한다.
동영상 컨텐츠 프로토콜인 RTMP도 지원한다.
3. Origin Domain Name : food1.it-pro1.com.s3amazonaws.com (선택하도록 되어 있다)
스토리지 사용한다. S3 .
Origin ID 가 자동으로 들어간다.
디폴트로 접근제어 하지 않는다.
4. 디폴트 캐시 설정
Object Caching :
기본은 Origin Cache Headers의 캐싱 만료시점이다.
캐싱만료 시점을 변경하려면 Customize 으로 해서 변경하면 된다.
5. WEB 분배 설정 - 분산 설정
Logging은 on으로 하고 로그를 S3에 저장한다.
Bucket for Logs : food1.it-pro1.com.s3.amazonaws.com (선택 된다)
LogPrefix : cloudfront
Cookie Logging도 ON 한다.
나머지는 디폴트로 설정한다.
6
주의
CloudFront Custom SSL 인증서 적용하려면
미국 동부(버지니아 북부) 리전에서 ACM 생성해야 합니다
https://aws.amazon.com/ko/premiumsupport/knowledge-center/migrate-ssl-cert-us-east/
7. 배포중이다.
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html
8
배포가 완료되는데 15분 정도 걸린다.
아직 in Progress라고 나온다.
9
완료가 되면 Deployed로 변경된다.
10
Web 설정대상과, RTMP설정 대상을 리스트업해서 따로 볼수 있다.
11. 배포 완료된 상태에서 설정된 정보를 확인하도록 하자.
12
해당 도메인 접속시 CDN 이 적용된다.
13
1
EC2 도메인을 크롬으로 접속
2
크롬에서 F12 클릭 > Network > 로딩 시간 확인
3. 크롬에서 리로드 버튼에서 오른 마우스 눌러
캐쉬 초기화 + 다시 로드 하기
4
Cloudfront Orgin Domain Name을 EC2 DNS이름으로 입력하기
나머지는 디폴트로 Cloudfront 생성하기
<5> 확인
1
CDN 이미지로 직접 접속
Network
이미지 더블클릭
X-Cache 보기 => Hit Form CloudFront 확인
<6> 삭제하기
1. CDN사용이 필요없으면 disable 하도록 한다.
이 부분도 15분정도 걸린다.
diable후 지우는 delete는 바로 처리된다.
감사합니다.