Mit Service Extensions können Nutzer von Google Cloud Produkten wie Cloud Load Balancing, Media CDN und Secure Web Proxy benutzerdefinierten Code direkt in den Datenpfad einfügen. So können Sie das Verhalten dieser Produkte an Ihre geschäftlichen Anforderungen anpassen. Auf dieser Seite finden Sie eine allgemeine Übersicht über Service Extensions.
Arten von Erweiterungen
Der Datenpfad in Netzwerkprodukten wie Cloud Load Balancing, Media CDN und Secure Web Proxy kann als Pipeline von Datenverarbeitungsphasen visualisiert werden. Mit Service Extensions können Sie benutzerdefinierte Logik in eine oder mehrere dieser Phasen einfügen.
Service Extensions bietet zwei Möglichkeiten zum Einfügen benutzerdefinierter Logik: Plug-ins und Aufrufe.
Plug-ins
Mit Plug-ins können Sie benutzerdefinierten Code inline in den Netzwerkdatenpfad einfügen.
Sie erstellen Plug-ins mit WebAssembly (Wasm) und der Proxy-Wasm-ABI. Plug-ins werden als Wasm-Module in einer von Google verwalteten Sandbox-Infrastruktur ausgeführt, die einer serverlosen Infrastruktur ähnelt. Plug-ins werden auf von Google verwalteten Compute-Ressourcen ausgeführt. Sie haben eingeschränkte Funktionen und strenge Laufzeitanforderungen. Sie werden in der Nähe der Datenebene ausgeführt und die Latenzoptimierung wird verwaltet.
Weitere Informationen zu Plug-ins finden Sie unter Plug-ins – Übersicht.
Aufrufe
Mit Aufrufen können Sie Cloud Load Balancing verwenden, um während der Datenverarbeitung Envoy-gRPC-Aufrufe an Google-Dienste und nutzerverwaltete Dienste zu senden.
Aufrufe werden als gRPC-Server für allgemeine Zwecke auf nutzerverwalteten Compute-VMs, auf Google Kubernetes Engine-Pods (GKE) in GKE Multi-cloud oder in lokalen Umgebungen ausgeführt.
Für Aufrufe gelten keine Laufzeitbeschränkungen und vorhandene Software kann bei Bedarf wiederverwendet werden. Mit Aufrufen profitieren Sie von vollständig verwalteten Diensten, die auch an die individuellen Anforderungen bestimmter Arbeitslasten angepasst werden können. Sie müssen nur die Skalierbarkeit und Verfügbarkeit Ihres Aufrufdienstes bestätigen.
Weitere Informationen zu Aufrufen finden Sie unter Aufrufe – Übersicht.
Erweiterungen für Cloud Load Balancing
Mit Service Extensions für Cloud Load Balancing können Nutzer die Anfrage- und Antwortverarbeitungspfade für unterstützte Application Load Balancer umfassend anpassen.
Weitere Informationen finden Sie unter Erweiterungen für Cloud Load Balancing – Übersicht.
Plug-ins
Mit Service Extensions können Sie vorab veröffentlichte Plug-ins für Ihre benutzerdefinierten Anforderungen verwenden, indem Sie sie dem Verarbeitungspfad von Cloud Load Balancing hinzufügen.
Verwenden Sie Plug-ins mit Cloud Load Balancing in den folgenden Beispielszenarien:
- Ausnahmebehandlung
- Clients für bestimmte Antwortklassen auf eine benutzerdefinierte Fehlerseite weiterleiten
- Benutzerdefiniertes Logging
- Benutzerdefinierte Header oder benutzerdefinierte Daten in Cloud Logging protokollieren
- Header-Hinzufügung
- Neue Header erstellen, die für Ihre Anwendungen oder für bestimmte Kunden relevant sind
- Neue Header für Anfrage und Antwort einfügen
- Header-Manipulation
- Vorhandene Anfrage- und Antwortheader umschreiben oder Clientheader auf dem Weg zum Backend oder bei der Antwort an einen Client überschreiben
- Sicherheit
- Benutzerdefinierte Sicherheitsrichtlinien basierend auf Clientanfrage- oder -antwortheadern schreiben und Entscheidungen zur Durchsetzung innerhalb Ihres Plug-ins treffen
- Skript-Injection
- HTML aus dem Ursprung für die Google reCAPTCHA-Einbindung oder das Google Analytics-Tagging umschreiben
- Cloud CDN beeinflussen
- HTTP-Anfrageeigenschaften bearbeiten, um die benutzerdefinierte Caching-Dynamik zu beeinflussen und zu bestimmen, welche Inhalte aus dem Cloud CDN-Cache bereitgestellt werden
- Routenplanung
- HTTP-Anfragen umschreiben, um die Auswahl des Backend-Dienstes zu beeinflussen und so erweiterte Routingentscheidungen am Edge zu ermöglichen
Aufrufe an nutzerverwaltete Dienste
Mit Service Extensions können unterstützte Application Load Balancer einen Aufruf vom Datenverarbeitungspfad an Backend-Dienste senden, die vom Nutzer verwaltet werden.
Verwenden Sie Aufrufe mit Cloud Load Balancing für Folgendes:
- Wenn die Menge an Compute- oder Speicherressourcen beliebig ist
- Wenn Sie den Status beibehalten möchten
- Wenn Sie externe Dienste wie BigQuery oder Anwendungen von Drittanbietern verwenden möchten, die überall gehostet werden können
Aufrufe sind sehr flexibel und unterstützen eine Vielzahl von Anpassungen. Einige Beispiele für alltägliche Anwendungsfälle:
- Benutzerdefiniertes Routing und Trafficmanagement
- HTTP- oder URL-Weiterleitungen ausführen
- Anfrageattribute wie Header oder URLs basierend auf anwendungsspezifischer Logik ändern, um die URL-Zuordnung zu zwingen, einen anderen Backend-Dienst auszuwählen als ursprünglich von der Anfrage vorgesehen
- Header hinzufügen, entfernen oder ändern oder URLs basierend auf komplexer anwendungsspezifischer Logik umschreiben, bevor der Traffic an den Backend-Dienst weitergeleitet wird
- Benutzerdefinierte Sitzungsaffinität oder -persistenz basierend auf den spezifischen Attributen einer Anfrage implementieren
- In der Vorschau, dynamische Weiterleitung implementieren, die Mandanten programmatisch Endpunkten zuordnet.
- Sicherheit und Logging
- Benutzerdefinierte Informationen aus Nutzlasten oder benutzerdefinierten Headern in Logging oder einer benutzerdefinierten Logginglösung protokollieren
- Sicherheitstools oder -dienste verwenden, einschließlich benutzerdefinierter Unterstützung für Nutzerauthentifizierung und -autorisierung
- Beliebige Header und Abfrageparameter wie Geräte-IDs validieren
- Anfragen und Antworten in Logginglösungen von Drittanbietern protokollieren
- Benutzerdefinierte Nutzerauthentifizierung und -autorisierung implementieren
- Partner integration
- Sicherheitsprodukte wie API Gateway-Sicherheit, Bot-Verwaltung oder Web Application Firewall (WAF) einbinden
- Autorisierung
- Den Autorisierungsentscheidungsprozess verbessern oder die Autorisierungsentscheidungen von von Google bereitgestellten integrierten Autorisierungs-Engines weiter einschränken
- Autorisierungsentscheidungen aus mehreren Autorisierungssystemen kombinieren
- Google-Autorisierungs-Engines nahtlos in umfassendere Autorisierungssysteme und -infrastrukturen einbinden, einschließlich externer Richtlinien-Engines
Weitere Informationen finden Sie unter Erweiterungen für Cloud Load Balancing und Cloud CDN – Übersicht.
Aufrufe an Google-Dienste
Mit Service Extensions können unterstützte Application Load Balancer einen Aufruf vom Datenverarbeitungspfad an ausgewählte Google-Dienste senden.
Sie können eine Erweiterung so konfigurieren, dass Model Armor aufgerufen wird, um Sicherheitsrichtlinien für den Inferenz-Traffic auf Application Load Balancern, einschließlich GKE Inference Gateway, einheitlich durchzusetzen.
Weitere Informationen finden Sie unter Einbindung in Google-Dienste.
GKE-Erweiterungen
Das Google Kubernetes Engine-Gateway (GKE) unterstützt die Verwendung von Erweiterungen, um benutzerdefinierten Code in den Verarbeitungspfad für das Load Balancing einzufügen. Mit diesen Erweiterungen können Sie das Routing anpassen, Anfrage- oder Antwortnutzlasten ändern und in externe Dienste einbinden.
Weitere Informationen finden Sie unter Trafficrouting für GKE Gateway mit Service Extensions anpassen.
Media CDN-Erweiterungen
Media CDN bietet viele integrierte Kernfunktionen für die häufigsten Anwendungsfälle von Content Delivery Networks (CDNs). Mit Service Extensions können Sie mehrere Anforderungen erfüllen, die über diese Funktionen hinausgehen.
Weitere Informationen finden Sie unter Erweiterungen für Media CDN – Übersicht.
Plug-ins für Media CDN
Mit Service Extensions können Sie vorab veröffentlichte Plug-ins für Ihre benutzerdefinierten Anforderungen verwenden, indem Sie sie dem Verarbeitungspfad von Media CDN hinzufügen.
Einige wichtige Anwendungsfälle, in denen Sie Plug-ins mit Media CDN verwenden können:
- Anpassung
- Anfrage-URLs umschreiben
- Headerwerte normalisieren, um die Cacheleistung zu verbessern
- Sicherheit und Logging
- Bei Live-Events Nutzer mit gestohlenen Tokens blockieren
- Benutzerdefinierte Nutzerauthentifizierung und -autorisierung unterstützen
- Benutzerdefinierte URL-Signierung übersetzen und implementieren
- Cache-Schlüssel, anwendungsspezifische Header oder Gerätetypen anpassen
- Benutzerdefinierte Variablen in Cloud Logging protokollieren
- Targeting und Monetarisierung
- Conversions durch A/B-Tests verbessern
- Benutzerdefiniertes Anzeigen-Targeting implementieren
- Testnutzungsmodelle ohne Aufpreis anbieten
- Partner integration
- Video-Wasserzeichen implementieren
- Videos und Bilder optimieren
Erweiterungen für Secure Web Proxy
Secure Web Proxy ist ein Cloud-first-Dienst, der eine zentrale, richtlinienbasierte Steuerung des ausgehenden Traffics Ihrer Organisation bietet. Weitere Informationen finden Sie unter Erweiterungen für Secure Web Proxy – Übersicht.
Mit Secure Web Proxy können Sie Autorisierungsrichtlinien konfigurieren, um die Identität einer Quell-Arbeitslast oder eines Agents zu validieren, der versucht, auf Tools zuzugreifen oder mit anderen Agents im Internet zu interagieren.
Aufrufe für Secure Web Proxy
Mit Service Extensions können Sie Aufrufe verwenden, um benutzerdefinierte Dienste direkt in den Verarbeitungspfad von Secure Web Proxy einzufügen.
Einige wichtige Anwendungsfälle, in denen Sie Aufrufe mit Secure Web Proxy verwenden können:
- Sicherheit
- Autorisierungsentscheidungen an konfigurierte Richtlinien-Engines oder Agent-Anwendungen delegieren
- Ausgehende Datenübertragungen und KI-Agent-Abläufe in spezialisierte Sicherheitsanbieter einbinden
- Benutzerdefinierte Authentifizierungs- oder Autorisierungslösungen implementieren
- Anpassung
- Traffic prüfen, ändern oder blockieren, bevor er an sein Ziel weitergeleitet wird
- HTTP-Header dynamisch hinzufügen
- Benutzerdefinierte Geschäftslogik erzwingen
Globales Frontend
Global Front End kombiniert Service Extensions, globale externe Application Load Balancer, Google Cloud Armor und Cloud CDN in einer Lösung, mit der Sie Ihre internetorientierten Anwendungen bereitstellen, skalieren und schützen können. Mit der Abrechnungsstufe „Global Front End Enterprise“ werden die Preise für diese Produkte in einem einzigen Preis planzusammengefasst.
Sie können die Abrechnungsstufe „Global Front End Enterprise“ in Ihrem Google Cloud Projekt aktivieren. Weitere Informationen finden Sie auf der Seite „Global Front End“ in der Google Cloud Console.