

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# MediaTailor との基本的な CloudFront 統合を設定する
<a name="cloudfront-basic-setup"></a>

AWS Elemental MediaTailor Amazon CloudFront との統合により、ビューワーのコンテンツ配信パフォーマンスが向上します。このトピックでは、MediaTailor の基本的な CloudFront ディストリビューションを設定する方法について説明します。この統合により、ビューワーは CloudFront ネットワークを介してパーソナライズされたコンテンツにアクセスできます。また、さまざまなコンテンツタイプに適切なキャッシュを設定する方法についても説明します。

認可とルーティングのために CloudFront を介してクエリパラメータを渡す方法については、「」を参照してください[MediaTailor マニフェストクエリパラメータ](manifest-query-parameters.md)。動的変数を使用した高度なルーティングについては、「」を参照してください[複数のコンテンツソースの MediaTailor ドメイン変数](variables-domains.md)。

## 前提条件
<a name="cf-basic-prerequisites"></a>

MediaTailor で CloudFront を設定する前に、以下があることを確認してください。
+ CloudFront ディストリビューションを作成および管理するためのアクセス許可を持つアクティブな AWS アカウント
+ 設定された MediaTailor 再生設定 (「」を参照[AWS Elemental MediaTailor を使用して広告を挿入する](configurations.md))
+ コンテンツオリジンサーバーが適切にセットアップされ、アクセス可能である
+ ビデオストリーミングの概念に関する基本的な理解 (HLS/DASH)

## CloudFront ディストリビューションの設定
<a name="cf-basic-configuration"></a>

MediaTailor の CloudFront ディストリビューションを作成および設定するには、次の手順に従います。

**MediaTailor の CloudFront ディストリビューションを作成するには**

1.  AWS マネジメントコンソールにサインインし、[https://console.aws.amazon.com/cloudfront/v3/home](https://console.aws.amazon.com/cloudfront/v3/home) で CloudFront コンソールを開きます。

1. **[ディストリビューションを作成]** を選択します。

1. **オリジンドメイン**には、MediaTailor エンドポイント URL (例: ) を入力します`a1b2c3d4.mediatailor.us-west-2.amazonaws.com`。

1. Protocol では****、**HTTPS のみ**を選択します。

1. Name には****、このオリジンを識別するのに役立つ名前を入力します (例: `mediatailor-origin`)。

1. デフォルトのキャッシュ動作設定を構成します。

   1. **パスパターン**には、デフォルト値 () を使用します`*`。

   1. **オブジェクトを自動的に圧縮**するには、**「はい**」を選択します。

   1. **ビューワープロトコルポリシー**で、**HTTP を HTTPS にリダイレクトを選択します**。

   1. **許可された HTTP メソッド**では、**GET、HEAD **を選択します。

   1. **キャッシュポリシー**で、**CachingDisabled** を選択します。

   1. **オリジンリクエストポリシー**で、**AllViewer** を選択して、デフォルトの動作のすべてのヘッダーを転送します。
**注記**  
デフォルトの動作では、AllViewer を使用して、特定のパスパターンに一致しないコンテンツを安全に処理します。マニフェストとセグメントの特定のキャッシュ動作は、適切なポリシーで個別に設定されます。

1. ディストリビューション設定を構成します。

   1. **Price クラス**で、対象者のロケーションに最も適したオプションを選択します。

   1. **AWS WAF ウェブ ACL** の場合は、既存のウェブ ACL を選択するか、**セキュリティ保護を有効にしないのままにします**。

   1. **デフォルトルートオブジェクト**の場合は、空のままにします。

   1. **標準ログ記録**では、**オン**を選択してログ記録を有効にします。

1. **[ディストリビューションを作成]** を選択します。

## キャッシュ動作の設定
<a name="cf-cache-behaviors"></a>

ディストリビューションを作成したら、さまざまなタイプのコンテンツを適切に処理するように追加のキャッシュ動作を設定する必要があります。このセクションでは、CloudFront の基本的なキャッシュ動作の設定について説明します。

高度な TTL 設定、キャッシュキー設定、パフォーマンスチューニングなどの包括的なキャッシュ最適化については、CDN 最適化ガイド[CDN と MediaTailor の統合のキャッシュ最適化](cdn-optimize-caching.md)の「」を参照してください。

### マニフェストキャッシュ動作の設定
<a name="cf-manifest-behavior"></a>

マニフェストにはパーソナライズされたコンテンツが含まれているため、キャッシュしないでください。キャッシュ動作を設定するには、次の手順に従います。

**マニフェストキャッシュの動作を設定するには**

1. CloudFront コンソールで、ディストリビューションを選択します。

1. [**Behaviors**] タブを選択します。

1. **[Create behavior]** (動作の作成) を選択します。

1. **パスパターン**には、HLS マルチバリアントとメディアプレイリスト`*.m3u8`と一致するように と入力します。

1. **オリジン**で、MediaTailor オリジンを選択します。

1. **キャッシュポリシー**で、**CachingDisabled** を選択します。

1. **オリジンリクエストポリシー**で、**AllViewer** を選択して、動的コンテンツに必要なすべてのヘッダーを転送します。

1. **[作成]** を選択します。

1. MPDs に一致するパスパターンを使用して`*.mpd`、DASH マニフェストに対してこれらのステップを繰り返します。

この設定により、各ビューワーは特定の広告コンテンツを含むパーソナライズされたマニフェストを受信できます。CDN はこれらのマニフェストをキャッシュしないため、各リクエストは MediaTailor に直接送信されます。

### セグメントキャッシュ動作の設定
<a name="cf-segment-behavior"></a>

広告セグメントとコンテンツセグメントに個別のキャッシュ動作を設定して、パフォーマンスを最適化し、CORS の適切な処理を確保します。

#### 広告セグメントのキャッシュ動作の設定
<a name="cf-ad-segment-behavior"></a>

`/tm/*` パスパターンを通じて提供される広告セグメントには、CORS を適切に処理するための特定の設定が必要です。以下の手順に従ってください。

**広告セグメントのキャッシュ動作を設定するには**

1. CloudFront コンソールで、ディストリビューションを選択します。

1. [**Behaviors**] タブを選択します。

1. **[Create behavior]** (動作の作成) を選択します。

1. **パスパターン**には、MediaTailor が提供する広告セグメントと一致する`/tm/*`ように と入力します。

1. **オリジン**で、MediaTailor セグメントのオリジン (`segments.mediatailor.region.amazonaws.com`ホスト名を使用) を選択します。

1. **キャッシュポリシー**で、**CachingOptimized** を選択します。

1. **オリジンリクエストポリシー**で、**なし**を選択します。

1. **レスポンスヘッダーポリシー**で、**CORS-with-preflight-and-SecurityHeadersPolicy** を選択して、適切な CORS ヘッダーがレスポンスに含まれていることを確認します。

1. **[作成]** を選択します。

#### コンテンツセグメントのキャッシュ動作の設定
<a name="cf-content-segment-behavior"></a>

コンテンツセグメントは、パフォーマンスを最適化するために標準のキャッシュポリシーを使用できます。セグメント形式ごとに個別の動作を設定します。

**コンテンツセグメントのキャッシュ動作を設定するには**

1. CloudFront コンソールで、ディストリビューションを選択します。

1. [**Behaviors**] タブを選択します。

1. **[Create behavior]** (動作の作成) を選択します。

1. **パスパターン**には、HLS コンテンツセグメント`*.ts`と一致するように と入力します。

1. **オリジン** で、コンテンツオリジンを選択します。

1. **キャッシュポリシー**で、**CachingOptimized** を選択します。

1. **オリジンリクエストポリシー**で、**なし**を選択します。

1. **レスポンスヘッダーポリシーで**、**CORS-with-preflight-and-SecurityHeadersPolicy** を選択して、すべてのコンテンツタイプで一貫した CORS 処理を確保します。

1. **[作成]** を選択します。

1. 適切なパスパターンを使用して、他のコンテンツセグメント形式に対してこれらのステップを繰り返します。
   + `*.mp4` MP4 セグメントの
   + `*.m4s` DASH セグメントの
   + `*.cmfv` CMAF セグメント`*.cmfa`の および

この設定により、広告セグメントとコンテンツセグメントが適切な CORS 処理で適切にキャッシュされます。広告セグメントは CORS 保護で MediaTailor セグメントオリジンを使用し、コンテンツセグメントは最適化されたキャッシュポリシーでコンテンツオリジンを使用します。

## MediaTailor 設定の更新
<a name="cf-mediatailor-config"></a>

CloudFront ディストリビューションを設定したら、CloudFront ドメインを使用するように MediaTailor 設定を更新します。

**MediaTailor 設定を更新するには**

1. [MediaTailor コンソール](https://console.aws.amazon.com/mediatailor/home)を開きます。

1. 更新する設定を選択します。

1. **CDN 設定**セクションで、**CDN コンテンツセグメントプレフィックス**フィールドに CloudFront ディストリビューションドメイン名 ( など`d1234abcdef.cloudfront.net`) を入力します。

1. 変更内容を保存します。

この設定では、MediaTailor はオリジンに直接ではなく CloudFront ディストリビューションを指す URLs を持つマニフェストを生成します。

## 統合のテスト
<a name="cf-basic-testing"></a>

CloudFront ディストリビューションを設定し、MediaTailor 設定を更新したら、統合をテストします。

**CloudFront と MediaTailor の統合をテストするには**

1. CloudFront ディストリビューション ( など`https://d1234abcdef.cloudfront.net/v1/master/12345/my-config/index.m3u8`) を使用してマニフェストをリクエストします。

1. マニフェストに CloudFront ドメインを指すセグメント URLsが含まれていることを確認します。

1. 動画プレーヤーを介してコンテンツを再生し、コンテンツと広告の両方が正しく再生されていることを確認します。

1. CloudFront ログをチェックして、リクエストが正しくルーティングされていることを確認します。

## 設定例
<a name="cf-basic-example"></a>

以下は、適切なキャッシュ動作を持つ MediaTailor の CloudFront ディストリビューション設定の例です。

**Example 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)**: 動的コンテンツ`AllViewer`に `CachingDisabled`と を使用します
+ **セグメント動作 (\*.ts)**: `CachingOptimized`と を使用します `CORS-with-preflight-and-SecurityHeadersPolicy`

## 次の手順
<a name="cf-basic-next-steps"></a>

MediaTailor との基本的な CloudFront 統合を設定したら、次のステップを検討してください。
+ 追加の CloudFront 機能でパフォーマンスを最適化する (「」を参照[CloudFront 機能を使用した MediaTailor のパフォーマンスの最適化](cloudfront-performance-optimization.md))
+ MQAR を使用してマルチリージョンレジリエンスを実装する (「」を参照[MQAR を使用して MediaTailor のマルチリージョンレジリエンスを実装する](media-quality-resiliency.md))
+ モニタリングとトラブルシューティングを設定する (「」を参照[CloudFront と MediaTailor の統合のモニタリングとトラブルシューティング](monitoring-and-troubleshooting.md))