プラグインを Media CDN ルートにアタッチする

このページでは、Media CDN ルートで Service Extensions プラグインを構成する方法について説明します。

Media CDN と Service Extensions を使用して、リクエストとレスポンスの処理パスにカスタムコードを追加できます。このようなカスタマイズにより、さまざまな軽量ユースケースが実現します。

詳細については、Media CDN 拡張機能の概要をご覧ください。

始める前に

  1. Media CDN 送信元を作成する
  2. Media CDN サービスを作成する
  3. Service Extensions を使用してプラグインを作成する

プラグインの Wasm アクションを作成する

Wasm アクションを作成するときに、Cloud Load Balancing 拡張機能ですでに使用されているプラグインを使用することはできません。

gcloud alpha service-extensions wasm-actions create コマンドを実行して、Service Extensions プラグインの Wasm アクションを作成します。

gcloud alpha service-extensions wasm-actions create WASM_ACTION \
    --wasm-plugin=WASM_PLUGIN \
    --supported-events=[EVENT,...]

次のように置き換えます。

  • WASM_ACTION: Wasm アクションの ID または完全修飾名
  • WASM_PLUGIN: アクションを関連付けるプラグインの名前
  • EVENT: request-headers または response-headers のいずれかまたは両方の値で示される、プラグインで処理されるペイロードの部分。指定しない場合、両方のヘッダーが処理されます。

Wasm アクションの作成には時間がかかることがあります。

プラグインをルートにアタッチする

Media CDN ルートにプラグインをアタッチする手順は次のとおりです。

  1. サービスの現在の構成を YAML ファイルにエクスポートするには、gcloud edge-cache services export コマンドを実行します。

      gcloud edge-cache services export SERVICE_NAME \
          --destination=FILENAME.yaml
    

    以下を置き換えます。

    • SERVICE_NAME: Media CDN サービスの名前
    • FILENAME: YAML ファイルの名前
  2. テキスト エディタを使用して YAML ファイルを編集します。

  3. 次の例に示すように、ファイル内のルートを更新して wasmAction ヘッダーを追加します。

      name: SERVICE_NAME
      routing:
        hostRules:
        - hosts:
          - DOMAIN_NAME 
          pathMatcher: routes
        pathMatchers:
        - name: routes
          routeRules:
          - priority: '1'
            description: Route 1
            matchRules:
            - prefixMatch: /plugins
            origin: projects/PROJECT_NUMBER/locations/global/edgeCacheOrigins/ORIGIN_NAME
            routeAction:
              wasmAction: projects/PROJECT_NUMBER/locations/global/wasmActions/WASM_ACTION
    

    以下を置き換えます。

    • SERVICE_NAME: Media CDN サービスの名前
    • DOMAIN_NAME: Media CDN サービスのドメイン
    • PROJECT_NUMBER: プロジェクト番号
    • ORIGIN_NAME: コンテンツのオリジン
    • WASM_ACTION: Service Extensions Wasm アクション
  4. YAML ファイルを保存します。

  5. gcloud edge-cache services import コマンドを実行します。

      gcloud edge-cache services import SERVICE_NAME \
          --source=FILENAME.yaml
    

新しいプラグインがすべての場所に配信されるまでには、しばらく時間がかかることがあります。プラグインはすべての地域に同時に配信されるわけではないため、地域によって時間が異なる場合があります。

次のステップ