기본 CloudFront 배포 시작하기 - Amazon CloudFront

기본 CloudFront 배포 시작하기

이 단원에 나온 절차에서는 CloudFront를 사용하여 다음을 수행하는 기본 구성 설정 방법을 보여줍니다.

  • 배포 오리진으로 사용할 버킷을 생성합니다.

  • 객체의 원래 버전을 Amazon Simple Storage Service(S3) 버킷에 저장합니다.

  • 오리진 액세스 제어(OAC)를 사용하여 Amazon S3 오리진에 인증된 요청을 전송합니다. OAC는 CloudFront를 통해 요청을 전송하여 최종 사용자가 S3 버킷에 직접 액세스하는 것을 방지합니다. OAC에 대한 자세한 내용은 Amazon Simple Storage Service 오리진에 대한 액세스 제한을 참조합니다.

  • 객체에 대한 URL에 CloudFront 도메인 이름을 사용합니다(예: https://d111111abcdef8.cloudfront.net/index.html).

  • 기본 24시간(최소 시간 0초) 동안 CloudFront 엣지 로케이션에 객체를 보관합니다.

이러한 옵션은 대부분 사용자 지정이 가능합니다. CloudFront 배포 옵션을 사용자 지정하는 방법은 배포 생성 단원을 참조하세요.

사전 조건

시작하기 전에 먼저 AWS 계정 설정의 단계를 완료해야 합니다.

Amazon S3 버킷 생성

Amazon S3 버킷은 파일(객체) 또는 폴더를 위한 컨테이너입니다. CloudFront는 S3 버킷을 소스로 사용하여 거의 모든 유형의 파일을 배포할 수 있습니다. 예를 들어 CloudFront에서는 텍스트, 이미지 및 비디오를 배포할 수 있습니다. Amazon S3에 저장할 수 있는 데이터의 양에는 최대값이 없습니다.

이 자습서에서는 사용자는 기본 웹페이지를 생성하는 데 사용할 샘플 hello world 파일이 포함된 S3 버킷을 생성합니다.

버킷을 만들려면

  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. 이 시작하기에서는 hello world 샘플을 사용하는 것이 좋습니다. hello world 웹 페이지 hello-world-html.zip을 다운로드합니다. 압축을 풀고 브라우저를 실행 중인 데스크톱과 같은 편리한 위치에 css 폴더와 index 파일을 저장합니다.

  3. 버킷 생성을 선택합니다.

  4. Amazon Simple Storage Service 사용 설명서의 범용 버킷 이름 지정 규칙을 준수하는 고유한 버킷 이름을 입력합니다.

  5. 리전의 경우 지리적으로 가까운 AWS 리전을 선택하는 것이 좋습니다. 이렇게 하면 지연 시간이 줄어들고 비용이 줄어듭니다.

    • 다른 리전을 선택하는 것도 효과가 있습니다. 예를 들어 규제 요구 사항을 해결하기 위해 이 작업을 수행할 수 있습니다.

  6. 다른 모든 설정은 기본값으로 두고 버킷 생성(Create bucket)을 선택합니다.

버킷에 콘텐츠 업로드

Amazon S3 버킷을 생성한 후에는 압축이 풀린 hello world 파일의 콘텐츠를 버킷에 업로드합니다. (이 파일을 Amazon S3 버킷 생성에 다운로드하고 압축을 풀었습니다.)

Amazon S3에 콘텐츠를 업로드하려면
  1. 범용 버킷 섹션에서 새 버킷의 이름을 선택합니다.

  2. 업로드를 선택합니다.

  3. 업로드 페이지에서 css 폴더와 index 파일을 드롭 영역에 끌어다 놓습니다.

  4. 다른 모든 설정은 기본값으로 두고 업로드를 선택합니다.

OAC와 함께 Amazon S3 오리진을 사용하는 CloudFront 배포 생성

이 자습서에서, 사용자는 오리진 액세스 제어(OAC)가 있는 Amazon S3 오리진을 사용하는 CloudFront 배포를 생성합니다. OAC를 사용하면 Amazon S3 오리진에 인증된 요청을 안전하게 전송할 수 있습니다. OAC에 대한 자세한 내용은 Amazon Simple Storage Service 오리진에 대한 액세스 제한을 참조합니다.

OAC를 사용하는 Amazon S3 오리진으로 CloudFront 배포를 생성하려는 경우
  1. https://console.aws.amazon.com/cloudfront/v4/home에서 CloudFront 콘솔을 엽니다

  2. 배포 생성을 선택합니다.

  3. Origin, Origin 도메인의 경우 이 자습서에서 생성한 S3 버킷을 선택합니다.

  4. 오리진오리진 액세스의 경우 오리진 액세스 제어 설정(권장)을 선택합니다.

  5. 오리진 액세스 제어의 경우 새 OAC 생성을 선택합니다.

  6. 새 OAC 만들기 창에서 기본 설정을 유지하고 만들기를 선택합니다.

  7. 웹 응용 프로그램 방화벽(WAF)의 경우 옵션 중 하나를 선택합니다.

  8. 다른 모든 섹션 및 설정은 기본값을 수락합니다. 이러한 옵션에 대한 자세한 내용은 배포 설정 섹션을 참조하세요.

  9. 배포 생성을 선택합니다.

  10. S3 버킷 정책 업데이트 필요 배너에서 메시지를 읽고 정책 복사를 선택합니다.

  11. 동일한 배너에서 정책을 업데이트하려면 S3 버킷 권한으로 이동 링크를 선택합니다. (이렇게 하면 Amazon S3 콘솔의 버킷 세부 정보 페이지로 이동합니다.)

  12. 버킷 정책에서 편집을 선택합니다.

  13. 10단계에서 복사한 정책을 명령문 편집 필드에 붙여넣습니다.

  14. 변경 사항 저장을 선택합니다.

  15. CloudFront 콘솔로 돌아가서 새 배포에 대한 세부 정보 섹션을 검토합니다. 배포가 완료되면 마지막 수정 필드가 배포 중에서 날짜 및 시간으로 변경됩니다.

  16. CloudFront가 배포에 할당하는 도메인 이름을 기록해 둡니다. d111111abcdef8.cloudfront.net와 유사하게 표시됩니다.

이 자습서의 배포 및 S3 버킷을 프로덕션 환경에서 사용하기 전에 먼저 특정 요구 사항에 맞게 구성해야 합니다. 프로덕션 환경에서 액세스를 구성하는 방법에 대한 자세한 내용은 보안 액세스 구성 및 콘텐츠에 대한 액세스 제한 섹션을 참조합니다.

CloudFront를 통해 콘텐츠에 액세스

CloudFront를 통해 콘텐츠에 액세스하려면 CloudFront 배포의 도메인 이름과 콘텐츠의 기본 페이지를 결합합니다. (배포 도메인 이름을 OAC와 함께 Amazon S3 오리진을 사용하는 CloudFront 배포 생성에 기록했습니다.)

  • 배포 도메인 이름은 d111111abcdef8.cloudfront.net와 같을 수 있습니다.

  • 웹 사이트의 기본 페이지 경로는 일반적으로 /index.html입니다.

따라서 CloudFront를 통해 콘텐츠에 액세스하기 위한 URL은 다음과 같을 수 있습니다.

https://d111111abcdef8.cloudfront.net/index.html.

이전 단계를 수행했고 hello world 웹 페이지를 사용했다면 Hello world!라고 써있는 웹 페이지가 표시됩니다.

이 S3 버킷에 더 많은 콘텐츠를 업로드하는 경우 CloudFront 배포 도메인 이름과 S3 버킷의 객체 경로를 결합하여 CloudFront를 통해 콘텐츠에 액세스할 수 있습니다. 예를 들어 new-page.html이라는 새 파일을 S3 버킷의 루트에 업로드하는 경우 URL은 다음과 같습니다.

https://d111111abcdef8.cloudfront.net/new-page.html.

정리

실습용으로만 배포 및 S3 버킷을 생성한 경우에는 요금이 발생하지 않도록 삭제합니다. 먼저 배포를 삭제합니다. 자세한 내용은 다음 링크를 참조하십시오.

기본 배포 향상

이 시작하기 튜토리얼에서는 배포 생성에 필요한 최소한의 프레임워크를 제공합니다. 다음과 같은 개선 사항을 살펴보는 것이 좋습니다.

  • 기본적으로 Amazon S3 버킷의 파일(객체)은 비공개로 설정됩니다. 버킷을 만든 AWS 계정만 파일을 읽거나 쓸 수 있는 권한이 있습니다. 누구나 CloudFront URL을 사용해 Amazon S3 버킷에 있는 파일에 액세스할 수 있도록 허용하려면 객체에 공개 읽기 권한을 부여해야 합니다.

  • CloudFront 프라이빗 콘텐츠 기능을 사용하여 Amazon S3 버킷의 콘텐츠에 대한 액세스를 제한할 수 있습니다. 비공개 콘텐츠를 배포하는 방법에 대한 자세한 내용은 서명된 URL과 서명된 쿠키를 사용하여 프라이빗 콘텐츠 제공를 참조하십시오.

  • 사용자 지정 도메인 이름(예: d111111abcdef8.cloudfront.net 대신 www.example.com)을 사용하도록 CloudFront 배포를 구성할 수 있습니다. 자세한 내용은 사용자 지정 URL 사용 단원을 참조하십시오.

  • 이 자습서에서는 오리진 액세스 제어(OAC)가 있는 Amazon S3 오리진을 사용합니다. 하지만 오리진이 웹 사이트 엔드포인트로 구성된 S3 버킷인 경우에는 OAC를 사용할 수 없습니다. 이 경우에는 CloudFront를 사용자 지정 오리진으로 사용하여 버킷을 설정해야 합니다. 자세한 내용은 웹 사이트 엔드포인트로 구성된 Amazon S3 버킷 사용 단원을 참조하십시오. OAC에 대한 자세한 내용은 Amazon Simple Storage Service 오리진에 대한 액세스 제한을 참조합니다.