Anexar um plug-in a uma rota da Media CDN

Nesta página, descrevemos como configurar plug-ins de extensões de serviço em rotas da Media CDN.

É possível usar o Media CDN com as extensões de serviço para adicionar código personalizado ao caminho de processamento de solicitação-resposta. Essa personalização permite uma grande variedade de casos de uso leves.

Para mais informações, consulte Visão geral das extensões da Media CDN.

Antes de começar

  1. Criar uma origem do Media CDN
  2. Criar um serviço de CDN de mídia
  3. Criar um plug-in usando as extensões de serviço

Criar uma ação do Wasm para um plug-in

Ao criar uma ação do Wasm, não é possível usar um plug-in que já esteja em uso em uma extensão do Cloud Load Balancing.

Crie uma ação do Wasm para seu plug-in de extensões de serviço executando o comando gcloud alpha service-extensions wasm-actions create:

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

Substitua:

  • WASM_ACTION: o ID ou o nome totalmente qualificado da ação do Wasm.
  • WASM_PLUGIN: o nome do plug-in a que você quer anexar a ação.
  • EVENT: a parte da carga útil a ser processada pelo plug-in, conforme indicado por um ou ambos os valores: request-headers ou response-headers. Se não for especificado, os dois cabeçalhos serão processados.

A criação de uma ação do Wasm pode levar algum tempo.

Anexar um plug-in a uma rota

Para anexar um plug-in a uma rota da Media CDN, siga estas etapas:

  1. Para exportar a configuração atual do serviço para um arquivo YAML, execute o comando gcloud edge-cache services export:

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

    Substitua:

    • SERVICE_NAME: o nome do serviço Media CDN
    • FILENAME: o nome do arquivo YAML
  2. Use um editor de texto para editar o arquivo YAML.

  3. Atualize as rotas no arquivo para adicionar o cabeçalho wasmAction, conforme mostrado no exemplo a seguir:

      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
    

    Substitua:

    • SERVICE_NAME: o nome do serviço Media CDN
    • DOMAIN_NAME: o domínio do serviço Media CDN.
    • PROJECT_NUMBER: o número do projeto
    • ORIGIN_NAME: a origem do conteúdo
    • WASM_ACTION: a ação do Wasm das extensões de serviço
  4. Salve o arquivo YAML.

  5. Execute o comando gcloud edge-cache services import:

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

Pode levar algum tempo para que o novo plug-in seja distribuído em todos os locais. O tempo pode variar de acordo com o local, porque o plug-in não é entregue a todos os locais simultaneamente.

A seguir