brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Mar 22. 2017

20.AWS CloudFront 기본 설정1

목차

<1>  CloudFront 는 CDN 서비스이다.

<2> 원본서버는  S3(스토리지)나  EC2(서버)를 주로 사용한다.

<3>  S3를 원본으로 이용하는 경우 

<4>  EC2를 원본으로 이용하는 경우 

<5> 확인

<6> 삭제하기





<1>  CloudFront 는 CDN 서비스이다.


사용자 입장에서 가장 가까운 곳에서 컨텐츠를 받게 해주는 서비스이다.

미국 사용자는  미국에 있는 서버에서 컨텐츠를 받게 해준다.









<2> 원본서버는  S3(스토리지)나  EC2(서버)를 주로 사용한다.



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"

                }

            }

        }

    ]

}








<3> S3를 원본으로 이용하는 경우 



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





<4>  EC2를 원본으로 이용하는 경우 


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는 바로 처리된다.





감사합니다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari