Privaten Vorschauserver einrichten

Dieser Leitfaden richtet sich an Entwickler, die Cloud Run für serverseitiges Tagging verwenden und einen privaten Vorschauserver einrichten möchten.

Beim serverseitigen Tagging können Sie Tagging-Änderungen im Vorschau- und Debug-Modus in der Vorschau ansehen, bevor Sie sie anwenden. Dies ist ein wichtiger Teil des Entwicklungsworkflows, um sicherzustellen, dass Ihre Tags wie vorgesehen funktionieren. Für diese Funktion sind zwei Cloud Run-Bereitstellungen erforderlich: eine für einen Tagging-Server und eine für einen Vorschauserver. In diesem Leitfaden finden Sie weitere Informationen dazu, wie die beiden Server kommunizieren und wie Sie sie in einer Unternehmensumgebung konfigurieren können.

Übersicht

Wenn Sie serverseitiges Tagging in Cloud Run bereitstellen, können Sie es mit oder ohne Load Balancer bereitstellen. Bei Bereitstellungen in mehreren Regionen benötigen Sie einen Load Balancer, um den Traffic an die nächstgelegene Instanz weiterzuleiten.

Ohne Load Balancer

Abbildung 1: Bereitstellung ohne Load Balancer

Mit einem Load Balancer

Abbildung 2: Bereitstellung mit einem Load Balancer

Bei beiden Bereitstellungen ist der Einstiegspunkt sowohl für den Vorschauserver als auch für die Produktions-Tagging-Umgebung dieselbe URL (z. B. sgtm.example.com). Der Tagging-Server wird mit einer Umgebungsvariablen namens PREVIEW_SERVER_URL bereitgestellt, die die URL des Vorschauservers darstellt.

Wenn Sie tagmanager.google.com aufrufen und den Vorschaumodus öffnen, wechselt Tag Manager zu sgtm.example.com?id=[gtm_server_id]&gtm_auth=[auth_id]&gtm_preview=[env_id] und setzt ein Cookie. Wenn Sie dann mit demselben Browser die Zielwebsite aufrufen, werden Anfragen, die an sgtm.example.com gesendet werden, auch an das Cookie weitergeleitet. Aufgrund des Cookies weiß der Tagging-Server, dass es sich um Ihre Ereignisse handelt, und leitet sie nur an den Vorschauserver weiter, damit Sie sie sich ansehen und Fehler beheben können.

Der Tagging-Server leitet diese Ereignisse weiter, indem er HTTP-Anfragen an die URL sendet, die in der Umgebungsvariablen PREVIEW_SERVER_URL festgelegt ist.

Öffentliche Vorschauserver

Für dieses Standardverhalten muss Ihr Vorschauserver öffentlich sein. Für einige Organisationen ist dies jedoch problematisch, da sie Einschränkungen haben, welche Infrastruktur öffentlich zugänglich sein darf, und in der Regel zusätzliche Sicherheitsmaßnahmen über einen Load Balancer erzwingen. Ein Load Balancer bietet folgende Vorteile:

  • Bessere Kontrolle über Funktionen wie SSL-Richtlinien, um Chiffresammlungen einzuschränken.
  • Native Einbindung in Cloud Armor für Web Application Firewall (WAF) oder Distributed Denial of Service (DDoS).
  • Erweiterte Funktionen zur Trafficverwaltung

Vorschauserver über einen Load Balancer weiterleiten

Wenn Sie einen privaten Vorschauserver erstellen möchten, verwenden Sie das hostbasierte Routing über den Load Balancer mit einer zusätzlichen Subdomain. Im Rest dieses Leitfadens wird beschrieben, wie Sie Ihren Vorabversionsserver über einen Load Balancer leiten.

Vorbereitung

Schritt 1: Umgebungsvariable mit einer neuen Subdomain aktualisieren

Wenn Sie die neue Vorschauserverdomain verwenden möchten, aktualisieren Sie die Umgebungsvariable PREVIEW_SERVER_URL für den serverseitigen Tagging-Server:

  1. Öffnen Sie Cloud Run.
  2. Wählen Sie den Tagging-Server aus.
  3. Klicken Sie auf Bearbeiten und dann auf Neue Überarbeitung bereitstellen.
  4. Ändern Sie auf dem Tab Variablen und Secrets im Abschnitt Container die PREVIEW_SERVER_URL in die neue Domain. Beispiel: preview.sgtm.example.com.

Schritt 2: Vorhandenen Load Balancer für das hostbasierte Routing konfigurieren

Konfigurieren Sie den vorhandenen Load Balancer mit hostbasiertem Routing und leiten Sie den Traffic an den richtigen Server weiter:

  1. Öffnen Sie in Cloud Run die Seite Load Balancing und klicken Sie auf den Namen Ihres Load Balancers.
  2. Klicken Sie auf die Schaltfläche Bearbeiten.
  3. Klicken Sie auf die Seite Back-End-Konfiguration und öffnen Sie das Drop-down-Menü für Backend-Dienste und Backend-Buckets.
  4. Klicken Sie auf Back-End-Dienst erstellen und führen Sie die folgenden Schritte aus:
    1. Geben Sie ihm einen geeigneten Namen, z. B. preview-backend-service.
    2. Wählen Sie als Back-End-Typ Endpunktgruppe in serverlosem Netzwerk aus.
  5. Erstellen Sie im Bereich Backend eine neue Endpunktgruppe für ein serverloses Netzwerk und führen Sie die folgenden Schritte aus:
    1. Geben Sie einen Namen ein und wählen Sie die Region aus, in der der Vorschauserver gehostet wird.
    2. Wählen Sie Cloud Run als Typ der Endpunktgruppe für ein serverloses Netzwerk und den Preview-Server als Dienst aus.
    3. Klicken Sie auf Erstellen.
  6. Ändern Sie die anderen Einstellungen nach Bedarf oder belassen Sie die Standardeinstellungen und klicken Sie auf Erstellen.

Schritt 3: Neue Regel hinzufügen und die Ingress-Kontrolle aktualisieren

So fügen Sie eine Regel für die neue Host-URL hinzu und aktualisieren die Ingress-Steuerung:

  1. Öffnen Sie die Seite Host- und Pfadregeln.
  2. Fügen Sie eine neue Regel hinzu, die folgende Bedingungen erfüllt:
    • Der Host ist die neue URL: preview.sgtm.example.com
    • Der Pfad lautet: /*
    • Das Backend ist: preview-backend-service
  3. Klicken Sie auf die Schaltfläche Aktualisieren, um den Load Balancer neu bereitzustellen.
  4. Öffnen Sie in Cloud Run den Vorschauserver und wählen Sie den Tab Networking (Netzwerk) aus.
  5. Ändern Sie die Ingress-Steuerung in Intern und setzen Sie ein Häkchen bei Traffic von externen Application Load Balancern zulassen, damit der Dienst nicht öffentlich zugänglich ist.

Ergebnis: Ihre Serverarchitektur sollte jetzt so aussehen wie in Abbildung 3. Dabei werden alle Trafficanfragen an den Tagging-Server weitergeleitet, der sie an den Vorschauserver weiterleiten kann.

Hostbasiertes Routing

Abbildung 3: Hostbasiertes Routing

Konfiguration prüfen

So prüfen Sie Ihre Konfiguration:

  1. Öffnen Sie Google Tag Manager.
  2. Öffnen Sie den Servercontainer.
  3. Klicken Sie auf Verwaltung > Containereinstellungen und legen Sie die Servercontainer-URL auf die Tagging-Server-URL fest.
  4. Schließen Sie das Fenster und sehen Sie sich eine Vorschau des Arbeitsbereichs an. Das Debug-Fenster wird geöffnet. Wenn Sie sich auf Ihrer Website bewegen, sollten Ihre Ereignisse im Debug-Fenster angezeigt werden.