As extensões de serviço permitem que os usuários de produtos do Google Cloud, como Cloud Load Balancing, Media CDN e Secure Web Proxy, insiram código personalizado diretamente no caminho de dados. Isso ajuda você a personalizar o comportamento desses produtos para atender às necessidades da sua empresa. Esta página oferece uma visão geral de alto nível sobre as Service Extensions.
Tipos de extensões
O caminho de dados em produtos de rede, como Cloud Load Balancing, Media CDN e Secure Web Proxy, pode ser visualizado como um pipeline de etapas de processamento de dados. Com as Service Extensions, é possível inserir lógica personalizada em uma ou mais dessas etapas.
Service Extensions oferece duas maneiras de inserir lógica personalizada: plug-ins e chamadas.
Plug-ins
Com os plug-ins, é possível inserir código personalizado inline no caminho de dados de rede.
Crie plug-ins usando WebAssembly (Wasm) e a ABI Proxy-Wasm. Os plug-ins são executados como módulos Wasm em uma infraestrutura de sandbox gerenciada pelo Google, semelhante a uma infraestrutura sem servidor. Os plug-ins são executados em computação gerenciada pelo Google. Eles têm capacidade restrita e requisitos de tempo de execução rigorosos. Eles são executados perto do plano de dados, e a otimização de latência é gerenciada.
Para mais informações sobre plug-ins, consulte Visão geral dos plug-ins.
Chamadas
Com os destaques, você usa o Cloud Load Balancing para fazer chamadas gRPC do Envoy para serviços do Google e gerenciados pelo usuário durante o processamento de dados.
As callouts são executadas como servidores gRPC de uso geral em VMs de computação gerenciadas pelo usuário, em pods do Google Kubernetes Engine (GKE) no GKE Multi-Cloud ou em ambientes locais.
As indicações não têm restrições de tempo de execução e podem reutilizar o software existente, conforme necessário. Com as frases de destaque, você aproveita os benefícios de serviços totalmente gerenciados que também podem ser personalizados para atender às necessidades exclusivas de cargas de trabalho específicas. Você só precisa confirmar a escalonabilidade e a disponibilidade do seu serviço de ligação.
Para mais informações sobre frases de destaque, consulte Visão geral das frases de destaque.
Extensões do Cloud Load Balancing
Service Extensions para Cloud Load Balancing permitem que os usuários adicionem personalização avançada aos caminhos de processamento de solicitações e respostas do balanceamento de carga para balanceadores de carga de aplicativo compatíveis.
Para mais informações, consulte a visão geral das extensões do Cloud Load Balancing.
Plug-ins
O Service Extensions ajuda você a usar plug-ins pré-publicados para suas necessidades personalizadas adicionando-os ao caminho de processamento do Cloud Load Balancing.
Use plug-ins com o Cloud Load Balancing nos seguintes exemplos de cenário:
- Tratamento de exceções
- Redirecione os clientes para uma página de erro personalizada em determinadas classes de resposta.
- Geração de registros personalizada
- Registre cabeçalhos definidos pelo usuário ou dados personalizados no Cloud Logging.
- Adição de cabeçalho
- Crie cabeçalhos relevantes para seus aplicativos ou clientes específicos.
- Insira novos cabeçalhos para solicitação e resposta.
- Manipulação de cabeçalho
- Reescreva cabeçalhos de solicitação e resposta ou substitua cabeçalhos do cliente no caminho para o back-end ou ao responder a um cliente.
- Segurança
- Escreva políticas de segurança personalizadas com base em cabeçalhos de solicitação ou resposta do cliente e tome decisões de restrição no seu plug-in.
- Injeção de script
- Reescreva o HTML da origem para integração do Google reCAPTCHA ou inclusão de tag do Google Analytics.
- Influenciar o Cloud CDN
- Manipule as características da solicitação HTTP para influenciar a dinâmica de armazenamento em cache personalizada e determine qual conteúdo é disponibilizado pelo cache do Cloud CDN.
- Roteamento
- Reescreva solicitações HTTP para influenciar a seleção de serviço de back-end, permitindo decisões de roteamento mais avançadas na borda.
Chamadas para serviços gerenciados pelo usuário
Com o Service Extensions, os balanceadores de carga de aplicativo compatíveis enviam uma chamada do caminho de tratamento de dados para serviços de back-end gerenciados pelo usuário.
Use as chamadas com o Cloud Load Balancing para o seguinte:
- Quando a quantidade de computação ou armazenamento é arbitrária
- Quando você quer manter o estado
- Quando você quer usar serviços externos, como BigQuery ou aplicativos de terceiros hospedados em qualquer lugar
As frases de destaque são muito flexíveis e aceitam várias personalizações. Confira alguns exemplos de casos de uso diários:
- Roteamento personalizado e gerenciamento de tráfego
- Realize redirecionamentos de HTTP ou URL.
- Modifique atributos de solicitação, como cabeçalhos ou URLs, com base em lógica específica do aplicativo para forçar o mapa de URL a escolher um serviço de back-end diferente do originalmente segmentado pela solicitação.
- Adicione, remova ou modifique cabeçalhos ou reescreva URLs com base em uma lógica complexa específica do aplicativo antes de encaminhar o tráfego para o serviço de back-end.
- Implemente a afinidade da sessão ou a fixação personalizada com base nos atributos específicos de uma solicitação.
- Em Visualização, implemente o encaminhamento dinâmico, que mapeia locatários para endpoints de maneira programática.
- Segurança e geração de registros
- Registre informações personalizadas de payloads ou cabeçalhos personalizados no Logging ou em uma solução de registro personalizada.
- Use ferramentas ou serviços de segurança, incluindo autenticação de usuário personalizada e suporte à autorização.
- Valide cabeçalhos e parâmetros de consulta arbitrários, como IDs de dispositivos.
- Registre solicitações e respostas em soluções de geração de registros de terceiros.
- Implemente a autenticação e autorização personalizadas do usuário.
- Integração de parceiros
- Integre produtos de segurança, como segurança do gateway de API, gerenciamento de bots ou firewall de aplicativos da Web (WAF).
- Autorização
- Enriqueça o processo de tomada de decisão de autorização ou restrinja ainda mais as decisões de autorização dos mecanismos integrados fornecidos pelo Google.
- Misture decisões de autorização de vários sistemas de autorização.
- Integre perfeitamente os mecanismos de autorização do Google com ecossistemas e infraestruturas de autorização mais amplos, incluindo mecanismos de políticas externas.
Para mais informações, consulte Visão geral das extensões do Cloud Load Balancing e do Cloud CDN.
Chamadas para os Serviços do Google
Com as extensões de serviço, os balanceadores de carga de aplicativo compatíveis podem enviar uma solicitação do caminho de processamento de dados para serviços selecionados do Google.
É possível configurar uma extensão para chamar o Model Armor e aplicar políticas de segurança de maneira uniforme ao tráfego de inferência em balanceadores de carga de aplicativos, incluindo o GKE Inference Gateway.
Para mais informações, consulte Integração com os Serviços do Google.
Extensões do GKE
O gateway do Google Kubernetes Engine (GKE) permite usar extensões para adicionar código personalizado ao caminho de processamento do balanceamento de carga. É possível usar essas extensões para personalizar o roteamento, modificar payloads de solicitação ou resposta e integrar com serviços externos.
Para mais informações, consulte Personalizar o roteamento de tráfego do gateway do GKE usando Service Extensions.
Extensões do Media CDN
A Media CDN oferece muitos recursos principais integrados para resolver os casos de uso mais comuns de redes de fornecimento de conteúdo (CDNs). O Service Extensions ajuda você a atender a vários requisitos que vão além desses recursos.
Para mais informações, consulte Visão geral das extensões da Media CDN.
Plug-ins para Media CDN
O Service Extensions ajuda você a usar plug-ins pré-publicados para suas necessidades personalizadas adicionando-os ao caminho de processamento do Media CDN.
Confira alguns casos de uso importantes em que você pode usar plug-ins com o Media CDN:
- Personalização
- Reescreva URLs de solicitação.
- Normalize valores de cabeçalho para melhorar o desempenho do cache.
- Segurança e geração de registros
- Durante eventos ao vivo, bloqueie usuários com tokens pirateados.
- Ofereça suporte à autenticação e autorização personalizadas do usuário.
- Traduza e implemente a assinatura de URL personalizada.
- Personalize chaves de cache, cabeçalhos específicos do aplicativo ou tipos de dispositivos.
- Registre variáveis personalizadas no Cloud Logging.
- Segmentação e monetização
- Melhore as conversões com testes A/B.
- Implemente a segmentação de anúncios personalizada.
- Ofereça modelos de uso de teste sem custo extra.
- Integração de parceiros
- Implemente a marca-d'água de vídeo.
- Otimize vídeos e imagens.
Extensões do Secure Web Proxy
O Secure Web Proxy é um serviço que prioriza a nuvem e oferece controle centralizado e baseado em políticas para o tráfego de saída da sua organização. Para mais informações, consulte Visão geral das extensões do Secure Web Proxy.
O Secure Web Proxy ajuda a configurar políticas de autorização para validar a identidade de uma carga de trabalho ou agente de origem que está tentando acessar ferramentas ou interagir com outros agentes localizados na Internet.
Destaques do Secure Web Proxy
O Service Extensions ajuda você a usar callouts para inserir serviços personalizados diretamente no caminho de processamento do Secure Web Proxy.
Confira alguns casos de uso importantes em que é possível usar indicadores com o Secure Web Proxy:
- Segurança
- Delegue decisões de autorização a mecanismos de política configurados ou aplicativos agentes.
- Integre seus fluxos de transferência de dados de saída e agentes de IA com provedores de segurança especializados.
- Implemente soluções personalizadas de autenticação ou autorização.
- Personalização
- Inspecione, modifique ou bloqueie o tráfego antes que ele continue até o destino.
- Adicione cabeçalhos HTTP de forma dinâmica.
- Impor uma lógica de negócios personalizada.