Externe Back-Ends, die über Internet-NEGs angegeben werden

Verwenden Sie externe Back-Ends (auch benutzerdefinierte Ursprünge genannt) für Cloud CDN (Content Delivery Network), wenn Inhalte lokal oder in einer anderen Cloud gehostet werden und Sie die Inhalte über die verteilte Edge-Caching-Hochleistungsinfrastruktur von Google bereitstellen möchten.

Terminologie

Die folgenden Begriffe werden manchmal synonym verwendet, da sie dieselbe oder eine ähnliche Bedeutung haben:

  • Externes Back-End: Ein Back-End, das sich außerhalb von Google Cloud befindet und über das Internet erreichbar ist. Der Endpunkt in einer Internet-NEG.
  • Benutzerdefinierter Ursprung:Entspricht einem externen Back-End. Im CDN ist Ursprung der in der Branche übliche Begriff für eine Back-End-Instanz, die Webinhalte bereitstellt.
  • Internetnetzwerk-Endpunktgruppe (NEG): Die Google Cloud API-Ressource, mit der Sie ein externes Back-End angeben.
  • Externer Endpunkt: Entspricht einem externen Back-End.

Zur Wahrung der Konsistenz mit der Dokumentation zum Load-Balancing wird in diesem Dokument der Begriff externes Back-End verwendet, sofern nicht auf die Internet-NEG API-Ressource verwiesen wird.

Unterstützte Back-End-Typen für Cloud CDN

Cloud CDN nutzt HTTP(S)-Load-Balancing, um Ihren Nutzern Inhalte bereitzustellen. Der externe HTTP(S)-Load-Balancer stellt die Front-End-IP-Adressen und -Ports bereit, die Anfragen empfangen. Cloud CDN-Inhalte können von verschiedenen Arten von Back-Ends bereitgestellt werden:

Externe Back-Ends können in einer lokalen Infrastruktur gehostet oder von Drittanbietern bereitgestellt werden. In den folgenden Abschnitten werden externe Back-Ends ausführlicher behandelt.

Hybrid- und Multi-Cloud-Architekturen

Wenn Sie Ihre Dienste zu Google Cloud migrieren, müssen Sie dies möglicherweise in Phasen tun. Manchmal können bestimmte Inhalte nicht sofort in eine Cloud-Umgebung verschoben werden und müssen möglicherweise lokal bleiben. In anderen Fällen können die Inhalte vielleicht in einer anderen Cloud gehostet werden. Die Cloud CDN-Unterstützung für externe Back-Ends ermöglicht Ihnen, für solche Inhalte die global verteilte Edge-Caching-Infrastruktur von Google zu nutzen.

Hybrid- und Multi-Cloud-Architektur
Hybrid- und Multi-Cloud-Architektur

Im Diagramm befinden sich die images-Inhalte in Google Cloud, während sich video in einem Rechenzentrum in Tokio befindet, das entweder lokal ist oder sich in einer anderen Cloud befindet. Bei externen Back-Ends können Ursprünge im Rechenzentrum in Tokio die Back-End-Quelle der video-Inhalte sein, wobei Cloud CDN und das HTTP(S)-Load-Balancing die Inhalte für Nutzer bereitstellen.

Mithilfe von URL-Zuordnungen kann diese Bereitstellung Ursprungs-Pull-Anfragen für Video-Traffic an das externe Back-End in Tokio weiterleiten. Diese Zuordnung wird anhand der Anfrage-URL /video bestimmt.

Für Bilder (ermittelt anhand der Anfrage-URL /images) werden die Inhalte von Google Cloud bezogen und über die Cloud CDN-Edge-Infrastruktur bereitgestellt.

Externes Back-End angeben

Ähnlich wie beim Konfigurieren von Cloud CDN mit Ihren in Google Cloud bereitgestellten Endpunkten können Sie die API für Netzwerk-Endpunktgruppen (NEGs) verwenden, um Ihren Server als externes Back-End für Cloud CDN hinzuzufügen.

Verwenden Sie eine Internet-NEG, um das externe Back-End anzugeben. Eine Internet-NEG hat einen der in der folgenden Tabelle aufgeführten Endpunkttypen.

Endpunktadresse Typ Definition Wann sie genutzt wird
Hostname und ein optionaler Port INTERNET_FQDN_PORT Ein öffentlich auflösbarer voll qualifizierter Domainname (Fully Qualified Domain Name, FQDN) und ein optionaler Port, z. B. backend.example.com:443 (Standardports: 80 für HTTP und 443 für HTTPS) Verwenden Sie diesen Endpunkt, wenn Ihr externes Back-End mithilfe eines FQDN mit öffentlichem DNS aufgelöst werden kann.
IP-Adresse und ein optionaler Port INTERNET_IP_PORT Eine öffentlich zugängliche IP-Adresse und ein optionaler Port, z. B. 192.0.2.8 oder 192.0.2.8:443 (Standardports: 80 für HTTP und 443 für HTTPS) Verwenden Sie diesen Endpunkt, um eine öffentlich zugängliche IP-Adresse und einen Port für die Verbindung anzugeben.

Die Best Practice besteht darin, die Internet-NEG mit dem Endpunkttyp INTERNET_FQDN_PORT und einem FQDN-Wert als Wert für den Ursprungs-Hostnamen zu erstellen. Dadurch wird die Cloud CDN-Konfiguration von IP-Adressänderungen in der Ursprungsinfrastruktur isoliert. Netzwerkendpunkte, die mithilfe von FQDNs definiert wurden, werden über ein öffentliches DNS aufgelöst. Sorgen Sie dafür, dass der konfigurierte FQDN über Google Public DNS aufgelöst werden kann.

Nachdem Sie die Internet-NEG erstellt haben, kann der Typ nicht mehr zwischen INTERNET_FQDN_PORT und INTERNET_IP_PORT geändert werden. Sie müssen eine neue Internet-NEG erstellen und den Back-End-Dienst ändern, um die neue Internet-NEG zu verwenden.

Wenn Sie ein externes Back-End verwenden, der für den Host-Header der HTTP-Anfrage einen bestimmten Wert erwartet, müssen Sie den Back-End-Dienst so konfigurieren, dass der Host-Header auf diesen erwarteten Wert gesetzt wird. Wenn Sie keinen benutzerdefinierten Anfrageheader konfigurieren, behält der Back-End-Dienst den Host-Header bei, den der Client für die Verbindung mit dem externen HTTP(S)-Load-Balancer in Google Cloud verwendet hat. Allgemeine Informationen zu benutzerdefinierten Anfrageheadern finden Sie unter Benutzerdefinierte Anfrageheader erstellen. Ein konkretes Beispiel finden Sie unter Cloud CDN mit einem externen Back-End einrichten.

Wenn Sie statische Antworten von Ihrem Ursprung automatisch im Cache speichern möchten, können Sie die CACHE_ALL_STATICCache-Modus-Einstellung verwenden.

Wenn Sie die Cache-Fähigkeit für jede Antwort mithilfe von HTTP-Cache-Anweisungen steuern möchten, legen Sie den Cache-Modus so fest, dass er Ursprungsheader (USE_ORIGIN_HEADERS) verwendet. Informationen zu den Cache-Anweisungen, die Cloud CDN versteht und dazu, was nicht von Cloud CDN zwischengespeichert wird, finden Sie unter Cache-fähige Inhalte und Nicht Cache-fähige Inhalte.

Wenn Ihr Ursprung keine nutzerbasierten dynamischen Inhalte bereitstellt, sollten Sie alle Antworten des Ursprungs im Cache speichern. Verwenden Sie dazu den Modus FORCE_CACHE_ALL. In diesem Modus werden alle Antworten unabhängig von Inhaltstyp oder Cache-Anweisungen im Cache gespeichert.

Wenn Sie nicht explizit einen Cache-Modus auswählen, wenn Sie Cloud CDN in einem Back-End aktivieren, sind die API und das gcloud-Befehlszeilentool standardmäßig auf USE_ORIGIN_HEADERS eingestellt und die Cloud Console verwendet standardmäßig CACHE_ALL_STATIC.

Externe Back-Ends und Google Cloud-basierte Ursprünge verwenden

Die folgende Abbildung zeigt eine Internet-NEG, die zur Bereitstellung eines externen Back-Ends mit HTTP(S)-Load-Balancing und Cloud CDN verwendet wird.

Cloud CDN mit externen Back-Ends
Cloud CDN mit externen Back-Ends

Nächste Schritte