기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
MediaTailor와의 기본 CloudFront 통합 설정
AWS Elemental MediaTailor Amazon CloudFront와 통합하면 최종 사용자의 콘텐츠 전송 성능이 향상됩니다. 이 주제에서는 MediaTailor에 대한 기본 CloudFront 배포를 설정하는 방법을 안내합니다. 이 통합을 통해 최종 사용자는 CloudFront 네트워크를 통해 개인화된 콘텐츠에 액세스할 수 있습니다. 또한 다양한 콘텐츠 유형에 적합한 캐싱을 구성하는 방법도 알아봅니다.
권한 부여 및 라우팅을 위해 CloudFront를 통해 쿼리 파라미터를 전달하는 방법에 대한 자세한 내용은 섹션을 참조하세요MediaTailor 매니페스트 쿼리 파라미터. 동적 변수를 사용한 고급 라우팅은 섹션을 참조하세요여러 콘텐츠 소스에 대한 MediaTailor 도메인 변수.
사전 조건
MediaTailor로 CloudFront를 구성하기 전에 다음이 있는지 확인합니다.
-
CloudFront 배포를 생성하고 관리할 수 있는 권한이 있는 활성 AWS 계정
-
구성된 MediaTailor 재생 구성( 참조AWS Elemental MediaTailor 를 사용하여 광고 삽입)
-
콘텐츠 오리진 서버를 올바르게 설정하고 액세스할 수 있습니다.
-
비디오 스트리밍 개념에 대한 기본 이해(HLS/DASH)
CloudFront 배포 구성
다음 단계에 따라 MediaTailor용 CloudFront 배포를 생성하고 구성합니다.
MediaTailor용 CloudFront 배포를 생성하려면
-
AWS Management Console에 로그인하고 https://console.aws.amazon.com/cloudfront/v3/home
CloudFront 콘솔을 엽니다. -
배포 생성(Create Distribution)을 선택합니다.
-
오리진 도메인에 MediaTailor 엔드포인트 URL(예:
a1b2c3d4.mediatailor.us-west-2.amazonaws.com)을 입력합니다. -
프로토콜에서 HTTPS만 선택합니다.
-
이름에이 오리진을 식별하는 데 도움이 되는 이름(예:
mediatailor-origin)을 입력합니다. -
기본 캐시 동작 설정을 구성합니다.
-
경로 패턴의 경우 기본값()을 사용합니다
*. -
객체 자동 압축에서 예를 선택합니다.
-
뷰어 프로토콜 정책에서 HTTP를 HTTPS로 리디렉션을 선택합니다.
-
허용된 HTTP 메서드에서 GET, HEAD를 선택합니다.
-
캐시 정책에서 CachingDisabled 선택합니다.
-
오리진 요청 정책에서 AllViewer를 선택하여 기본 동작에 대한 모든 헤더를 전달합니다.
참고
기본 동작은 AllViewer를 사용하여 특정 경로 패턴과 일치하지 않는 모든 콘텐츠를 안전하게 처리합니다. 매니페스트 및 세그먼트에 대한 특정 캐시 동작은 적절한 정책을 사용하여 별도로 구성됩니다.
-
-
배포 설정을 구성합니다.
-
가격 클래스에서 대상 위치와 가장 일치하는 옵션을 선택합니다.
-
AWS WAF 웹 ACL에서 기존 웹 ACL을 선택하거나 보안 보호 활성화 안 함으로 둡니다.
-
기본 루트 객체의 경우 비워 둡니다.
-
표준 로깅에서 켜기를 선택하여 로깅을 활성화합니다.
-
-
배포 생성(Create Distribution)을 선택합니다.
캐시 동작 구성
배포를 생성한 후에는 다양한 유형의 콘텐츠를 적절하게 처리하도록 추가 캐시 동작을 구성해야 합니다. 이 섹션에서는 CloudFront의 기본 캐시 동작 설정을 다룹니다.
고급 TTL 설정, 캐시 키 구성 및 성능 튜닝을 포함한 포괄적인 캐싱 최적화는 CDN 최적화 가이드CDN 및 MediaTailor 통합을 위한 캐싱 최적화의 섹션을 참조하세요.
매니페스트 캐시 동작 구성
매니페스트에는 개인 맞춤형 콘텐츠가 포함되어 있으므로 캐시하지 마세요. 다음 단계에 따라 캐시 동작을 구성합니다.
매니페스트 캐시 동작을 구성하려면
-
CloudFront 콘솔에서 배포를 선택합니다.
-
동작 탭을 선택합니다.
-
동작 만들기(Create behavior)를 선택합니다.
-
경로 패턴에
*.m3u8를 입력하여 HLS 다변량 및 미디어 재생 목록과 일치시킵니다. -
오리진에서 MediaTailor 오리진을 선택합니다.
-
캐시 정책에서 CachingDisabled 선택합니다.
-
오리진 요청 정책에서 AllViewer를 선택하여 동적 콘텐츠에 필요한 모든 헤더를 전달합니다.
-
생성(Create)을 선택합니다.
-
경로 패턴을 사용하여 MPDs
*.mpd와 일치하는 DASH 매니페스트에 대해이 단계를 반복합니다.
이 구성을 사용하면 각 최종 사용자가 특정 광고 콘텐츠가 포함된 개인화된 매니페스트를 수신할 수 있습니다. CDN은 이러한 매니페스트를 캐싱하지 않으므로 각 요청은 MediaTailor로 직접 전달됩니다.
세그먼트 캐시 동작 구성
성능을 최적화하고 적절한 CORS 처리를 보장하기 위해 광고 세그먼트 및 콘텐츠 세그먼트에 대해 별도의 캐시 동작을 구성합니다.
광고 세그먼트 캐시 동작 구성
/tm/* 경로 패턴을 통해 제공되는 광고 세그먼트는 CORS를 제대로 처리하려면 특정 구성이 필요합니다. 다음 단계를 따릅니다.
광고 세그먼트 캐시 동작을 구성하려면
-
CloudFront 콘솔에서 배포를 선택합니다.
-
동작 탭을 선택합니다.
-
동작 만들기(Create behavior)를 선택합니다.
-
경로 패턴
/tm/*에 MediaTailor에서 제공하는 광고 세그먼트와 일치하도록를 입력합니다. -
오리진에서 MediaTailor 세그먼트 오리진(
segments.mediatailor.region.amazonaws.com호스트 이름 사용)을 선택합니다. -
캐시 정책에서 CachingOptimized 선택합니다.
-
오리진 요청 정책에서 없음을 선택합니다.
-
응답 헤더 정책에서 CORS-with-preflight-and-SecurityHeadersPolicy를 선택하여 응답에 적절한 CORS 헤더가 포함되도록 합니다.
-
생성(Create)을 선택합니다.
콘텐츠 세그먼트 캐시 동작 구성
콘텐츠 세그먼트는 최적의 성능을 위해 표준 캐싱 정책을 사용할 수 있습니다. 다양한 세그먼트 형식에 대해 별도의 동작을 구성합니다.
콘텐츠 세그먼트 캐시 동작을 구성하려면
-
CloudFront 콘솔에서 배포를 선택합니다.
-
동작 탭을 선택합니다.
-
동작 만들기(Create behavior)를 선택합니다.
-
경로 패턴에
*.ts를 입력하여 HLS 콘텐츠 세그먼트와 일치시킵니다. -
오리진에서 콘텐츠 오리진을 선택합니다.
-
캐시 정책에서 CachingOptimized 선택합니다.
-
오리진 요청 정책에서 없음을 선택합니다.
-
응답 헤더 정책에서 CORS-with-preflight-and-SecurityHeadersPolicy를 선택하여 모든 콘텐츠 유형에서 일관된 CORS 처리를 보장합니다.
-
생성(Create)을 선택합니다.
-
적절한 경로 패턴을 사용하여 다른 콘텐츠 세그먼트 형식에 대해 다음 단계를 반복합니다.
-
*.mp4MP4 세그먼트용 -
*.m4sDASH 세그먼트의 경우 -
*.cmfvCMAF 세그먼트*.cmfa의 경우 및
-
이 구성을 사용하면 광고 세그먼트와 콘텐츠 세그먼트가 적절한 CORS 처리로 적절하게 캐시됩니다. 광고 세그먼트는 CORS 보호와 함께 MediaTailor 세그먼트 오리진을 사용하는 반면, 콘텐츠 세그먼트는 최적화된 캐싱 정책과 함께 콘텐츠 오리진을 사용합니다.
MediaTailor 구성 업데이트
CloudFront 배포를 설정한 후 CloudFront 도메인을 사용하도록 MediaTailor 구성을 업데이트합니다.
MediaTailor 구성을 업데이트하려면
-
MediaTailor 콘솔
을 엽니다. -
업데이트할 구성을 선택합니다.
-
CDN 구성 섹션의 CDN 콘텐츠 세그먼트 접두사 필드에 CloudFront 배포 도메인 이름(예:
d1234abcdef.cloudfront.net)을 입력합니다. -
변경 내용을 저장합니다.
이 구성을 사용하면 MediaTailor는 오리진을 직접 가리키는 대신 CloudFront 배포를 가리키는 URLs을 사용하여 매니페스트를 생성합니다.
통합 테스트
CloudFront 배포를 구성하고 MediaTailor 구성을 업데이트한 후 통합을 테스트합니다.
CloudFront 및 MediaTailor 통합을 테스트하려면
-
CloudFront 배포를 통해 매니페스트를 요청합니다(예:
https://d1234abcdef.cloudfront.net/v1/master/12345/my-config/index.m3u8). -
매니페스트에 CloudFront 도메인을 가리키URLs이 포함되어 있는지 확인합니다.
-
비디오 플레이어를 통해 콘텐츠를 재생하고 콘텐츠와 광고가 모두 올바르게 재생되는지 확인합니다.
-
CloudFront 로그를 확인하여 요청이 올바르게 라우팅되고 있는지 확인합니다.
구성의 예
다음은 적절한 캐시 동작이 있는 MediaTailor에 대한 CloudFront 배포 구성의 예입니다.
예 CloudFront 배포 구성 예제
{ "DefaultCacheBehavior": { "TargetOriginId": "mediatailor-origin", "ViewerProtocolPolicy": "redirect-to-https", "AllowedMethods": { "Quantity": 2, "Items": ["GET", "HEAD"] }, "CachePolicyId": "4135ea2d-6df8-44a3-9df3-4b5a84be39ad", "OriginRequestPolicyId": "59781a5b-3903-41f3-afcb-af62929ccde1", "Comment": "Default behavior with CachingDisabled and AllViewer" }, "CacheBehaviors": [ { "PathPattern": "*.m3u8", "TargetOriginId": "mediatailor-origin", "ViewerProtocolPolicy": "redirect-to-https", "CachePolicyId": "4135ea2d-6df8-44a3-9df3-4b5a84be39ad", "OriginRequestPolicyId": "59781a5b-3903-41f3-afcb-af62929ccde1", "Comment": "Manifest behavior with CachingDisabled and AllViewer" }, { "PathPattern": "*.ts", "TargetOriginId": "mediatailor-origin", "ViewerProtocolPolicy": "redirect-to-https", "CachePolicyId": "658327ea-f89d-4fab-a63d-7e88639e58f6", "OriginRequestPolicyId": "88a5eaf4-2fd4-4709-b370-b4c650ea3fcf", "Comment": "Segment behavior with CachingOptimized and HostHeaderOnly" } ] }
이 예제는 다음을 보여줍니다.
-
기본 동작:
CachingDisabled및를 사용하여 특정 경로 패턴과 일치하지 않는 콘텐츠를AllViewer안전하게 처리합니다. -
매니페스트 동작(*.m3u8): 동적 콘텐츠에
CachingDisabledAllViewer및를 사용합니다. -
세그먼트 동작(*.ts):
CachingOptimized및를 사용합니다.CORS-with-preflight-and-SecurityHeadersPolicy
다음 단계
MediaTailor와의 기본 CloudFront 통합을 설정한 후 다음 단계를 고려하세요.
-
추가 CloudFront 기능으로 성능 최적화( 참조CloudFront 기능으로 MediaTailor 성능 최적화)
-
MQAR을 사용하여 다중 리전 복원력 구현( 참조MQAR을 사용하여 MediaTailor에 대한 다중 리전 복원력 구현)
-
모니터링 및 문제 해결 설정( 참조CloudFront 및 MediaTailor 통합 모니터링 및 문제 해결)