Service Extensions permite a los usuarios de productos de Google Cloud, como Cloud Load Balancing, Media CDN y Secure Web Proxy, insertar código personalizado directamente en la ruta de datos. Esto te ayuda a personalizar el comportamiento de estos productos para satisfacer las necesidades de tu empresa. En esta página, se proporciona una descripción general de alto nivel sobre Service Extensions.
Tipos de extensiones
La ruta de acceso de los datos en los productos de herramientas de redes, como Cloud Load Balancing, Media CDN y Secure Web Proxy, se puede visualizar como una canalización de etapas de procesamiento de datos. Las extensiones de servicio te permiten insertar lógica personalizada en una o más de estas etapas.
Service Extensions ofrece dos formas de insertar lógica personalizada: complementos y textos destacados.
Complementos
Los complementos te permiten insertar código personalizado intercalado en la ruta de acceso de los datos de red.
Compilas complementos con WebAssembly (Wasm) y la ABI de Proxy-Wasm. Los complementos se ejecutan como módulos de Wasm en una infraestructura de zona de pruebas administrada por Google similar a una infraestructura sin servidores. Los complementos se ejecutan en un entorno de procesamiento administrado por Google. Tienen una capacidad restringida y requisitos de tiempo de ejecución estrictos. Se ejecutan cerca del plano de datos, y se administra la optimización de la latencia.
Para obtener más información sobre los complementos, consulta Descripción general de los complementos.
Textos destacados
Las llamadas te permiten usar Cloud Load Balancing para realizar llamadas gRPC de Envoy a servicios de Google y servicios administrados por el usuario durante el procesamiento de datos.
Las llamadas se ejecutan como servidores gRPC de uso general en VMs de procesamiento administradas por el usuario, en Pods de Google Kubernetes Engine (GKE) en GKE Multi-Cloud o en entornos locales.
Las llamadas no tienen restricciones de tiempo de ejecución y pueden reutilizar el software existente, según sea necesario. Con las leyendas, puedes obtener los beneficios de los servicios completamente administrados que también se pueden personalizar para satisfacer las necesidades únicas de cargas de trabajo específicas. Solo debes confirmar la escalabilidad y la disponibilidad de tu servicio de texto destacado.
Para obtener más información sobre las leyendas, consulta Descripción general de las leyendas.
Extensiones de Cloud Load Balancing
Las extensiones de servicio para Cloud Load Balancing permiten a los usuarios agregar una personalización enriquecida a las rutas de procesamiento de solicitudes y respuestas del balanceo de cargas para los balanceadores de cargas de aplicaciones compatibles.
Para obtener más información, consulta la descripción general de las extensiones de Cloud Load Balancing.
Complementos
Las extensiones de servicio te ayudan a usar complementos publicados previamente para tus necesidades personalizadas agregándolos en la ruta de procesamiento de Cloud Load Balancing.
Usa complementos con Cloud Load Balancing en las siguientes situaciones de ejemplo:
Manejo de excepciones
- Redirecciona a los clientes a una página de error personalizada para ciertas clases de respuesta.
Registro personalizado
- Registra encabezados definidos por el usuario o datos personalizados en Cloud Logging.
Adición de encabezado
- Crea encabezados nuevos que sean relevantes para tus aplicaciones o clientes específicos.
- Inserta encabezados nuevos para la solicitud y la respuesta.
Manipulación de encabezados
- Reescribe los encabezados de solicitud y respuesta existentes, o anula los encabezados del cliente en su camino hacia el backend o mientras respondes a un cliente.
Seguridad
- Escribe políticas de seguridad personalizadas basadas en los encabezados de solicitud o respuesta del cliente y toma decisiones de aplicación dentro de tu complemento.
Inyección de secuencias de comandos
- Reescribir el HTML desde el origen para la integración de Google reCAPTCHA o el etiquetado de Google Analytics
Influye en Cloud CDN
- Manipula las características de las solicitudes HTTP para influir en la dinámica de almacenamiento en caché personalizado y determinar qué contenido se entrega desde la caché de Cloud CDN.
Enrutamiento
- Reescribe las solicitudes HTTP para influir en la selección del servicio de backend, lo que permite tomar decisiones de enrutamiento más avanzadas en el perímetro.
Llamadas externas a servicios administrados por el usuario
Las extensiones de servicio permiten que los balanceadores de cargas de aplicaciones compatibles envíen un texto destacado desde la ruta de procesamiento de datos a los servicios de backend administrados por el usuario.
Usa textos destacados con Cloud Load Balancing para lo siguiente:
- Cuando la cantidad de procesamiento o almacenamiento es arbitraria
- Cuando quieres mantener el estado
- Cuando quieras usar servicios externos, como BigQuery o aplicaciones de terceros alojadas en cualquier lugar
Los textos destacados son muy flexibles y admiten una variedad de personalizaciones. A continuación, se muestran algunos ejemplos de casos de uso cotidianos:
Enrutamiento y administración del tráfico personalizados
- Realizar redireccionamientos HTTP o de URL
- Modificar los atributos de la solicitud, como los encabezados o las URLs, según la lógica específica de la aplicación para forzar al mapa de URLs a elegir un servicio de backend diferente del que se orientó originalmente la solicitud.
- Agrega, quita o modifica encabezados, o reescribe URLs según la lógica compleja específica de la aplicación antes de reenviar el tráfico al servicio de backend.
- Implementar la afinidad de sesión o la persistencia personalizadas según los atributos específicos de una solicitud
- En la versión preliminar, implementa el reenvío dinámico, que asigna los usuarios tipo de usuario a los extremos de manera programática.
Seguridad y registro
- Registra información personalizada de cargas útiles o encabezados personalizados en Logging o en una solución de registro personalizada.
- Usa herramientas o servicios de seguridad, incluida la compatibilidad con la autenticación y autorización de usuarios personalizadas.
- Validar encabezados y parámetros de consulta arbitrarios, como los IDs de dispositivo
- Registra las solicitudes y respuestas en soluciones de registro de terceros.
- Implementar la autenticación y autorización de usuarios personalizadas
Integración de socios
- Integra productos de seguridad, como la seguridad de API Gateway, la administración de BOT o el firewall de aplicación web (WAF).
Autorización
- Enriquece el proceso de toma de decisiones de autorización o restringe aún más las decisiones de autorización de los motores de autorización integrados que proporciona Google.
- Mezclar decisiones de autorización de varios sistemas de autorización
- Integra sin problemas los motores de autorización de Google con ecosistemas e infraestructuras de autorización más amplios, incluidos los motores de políticas externos.
Para obtener más información, consulta Descripción general de las extensiones de Cloud Load Balancing y Cloud CDN.
Llamadas externas a los servicios de Google
Las extensiones de servicio permiten que los balanceadores de cargas de aplicaciones compatibles envíen un texto destacado desde la ruta de procesamiento de datos a los servicios de Google seleccionados.
Puedes configurar una extensión para llamar a Model Armor y aplicar de manera uniforme las políticas de seguridad en el tráfico de inferencia en los balanceadores de cargas de aplicaciones, incluida la puerta de enlace de inferencia de GKE.
Para obtener más información, consulta Integración en los servicios de Google.
Extensiones de GKE
La puerta de enlace de Google Kubernetes Engine (GKE) admite el uso de extensiones para agregar código personalizado a la ruta de procesamiento del balanceo de cargas. Puedes usar estas extensiones para personalizar el enrutamiento, modificar las cargas útiles de solicitud o respuesta, y realizar integraciones en servicios externos.
Para obtener más información, consulta Personaliza el enrutamiento de tráfico de GKE Gateway con extensiones de servicio.
Extensiones de Media CDN
Media CDN proporciona muchas funciones principales integradas para abordar los casos de uso más comunes de las redes de distribución de contenidos (CDN). Las extensiones de servicio te ayudan a abordar varios requisitos que van más allá de estas capacidades.
Para obtener más información, consulta Descripción general de las extensiones de Media CDN.
Extensiones perimetrales para Media CDN
Las extensiones de servicio te permiten usar extensiones perimetrales
(CdnEdgeExtension) para adjuntar complementos de WebAssembly (Wasm) directamente a
los servicios de almacenamiento en caché perimetral de Media CDN (EdgeCacheService).
Puedes usar estas extensiones para inspeccionar y modificar los encabezados de solicitud HTTP y respuesta directamente en las rutas de procesamiento de solicitudes y respuestas. Para obtener más información, consulta Cómo funcionan las extensiones perimetrales de Media CDN en Descripción general de las extensiones de Media CDN.
Estos son algunos casos de uso clave que muestran cómo puedes usar las extensiones perimetrales con Media CDN:
Personalización
- Reescribe las URLs de solicitud.
- Normaliza los valores de los encabezados para mejorar el rendimiento de la caché.
- Establece encabezados de la solicitud que coincidan con las reglas de enrutamiento de Media CDN para la selección de ruta dinámica o la selección de origen.
- Personaliza los encabezados de respuesta para cumplir con los requisitos de tus aplicaciones o usuarios finales.
Seguridad y registro
- Durante los eventos en vivo, bloquea a los usuarios con tokens pirateados.
- Admitir la autenticación y autorización de usuarios personalizadas
- Traducir e implementar la firma de URLs personalizadas
- Personaliza las claves de caché, los encabezados específicos de la aplicación o los tipos de dispositivos.
- Registra variables personalizadas en Cloud Logging.
Segmentación y monetización
- Mejorar las conversiones con pruebas A/B
- Implementa la segmentación de anuncios personalizada.
- Ofrece modelos de uso de prueba sin cargo adicional.
Integración de socios
- Implementar marcas de agua en los videos
- Optimiza imágenes y videos.
Extensiones de Secure Web Proxy
Secure Web Proxy es un servicio centrado en la nube que proporciona un control centralizado y basado en políticas para el tráfico saliente de tu organización. Para obtener más información, consulta la descripción general de las extensiones de Secure Web Proxy.
Secure Web Proxy te ayuda a configurar políticas de autorización para validar la identidad de una carga de trabajo o un agente de origen que intenta acceder a herramientas o interactuar con otros agentes ubicados en Internet.
Llamadas para Secure Web Proxy
Las extensiones de servicio te ayudan a usar textos destacados para insertar servicios personalizados directamente en la ruta de procesamiento de Secure Web Proxy.
A continuación, se muestran algunos casos de uso clave en los que puedes usar textos destacados con Secure Web Proxy:
Seguridad
- Delegar las decisiones de autorización a los Policy Engine o las aplicaciones de agentes configurados.
- Integra tus flujos de transferencia de datos salientes y de agentes de IA con proveedores de seguridad especializados.
- Implementar soluciones de autenticación o autorización personalizadas
Personalización
- Inspecciona, modifica o bloquea el tráfico antes de que continúe hacia su destino.
- Agrega encabezados HTTP de forma dinámica.
- Aplica una lógica empresarial personalizada.
Frontend global
Global Front End combina Service Extensions, balanceadores de cargas de aplicaciones externos globales, Google Cloud Armor y Cloud CDN en una sola solución para ayudar a entregar, escalar y proteger tus aplicaciones orientadas a Internet. Con el nivel de facturación de Global Front End Enterprise, los precios de estos productos se consolidan en un plan de precios único.
Puedes habilitar el nivel de facturación Global Front End Enterprise en tu proyecto de Google Cloud. Para obtener más información, consulta la página Global Front End en la consola de Google Cloud .