Eine globale Webanwendung benötigt einen Edge-Einstieg? Erstelle Azure Front Door
Das CloudTrips Application Gateway ist ein regionaler Einstiegspunkt in West Europe. Ein Benutzer in einem anderen Teil der Welt muss diese Region erreichen, bevor Azure die HTTP-Anfrage verarbeiten kann. Die Anwendung stellt außerdem eine regionale öffentliche IP statt eines globalen Anwendungsendpunkts bereit.
Erstelle Azure Front Door als öffentlichen Edge-Einstieg. Front Door ist ein globaler Layer-7-Reverse-Proxy und Content-Delivery-Dienst. Ein Client verbindet sich mit einem nahe gelegenen Microsoft-Edge-Standort. Front Door leitet die Anfrage dann über Microsofts Netzwerk an den konfigurierten Anwendungs-Origin weiter.
Globaler Benutzer
|
Azure-Front-Door-Edge und HTTPS-Endpunkt
|
WAF_v2 Application Gateway in West Europe
|
Private CloudTrips-Web-VMs
Front Door und Application Gateway haben unterschiedliche Aufgaben. Front Door ist der globale Edge. Application Gateway bleibt der regionale Layer-7-Router und die WAF vor den privaten VMs.
Dieser Trip hängt von Eine Webanwendung benötigt OWASP-Schutz? Aktiviere WAF ab. Behalte
agw-cloudtrips-web-test-weu, seine öffentliche IP, WAF Policy, Routingregeln und beide Web-VMs. Starte die VMs, bevor du fortfährst.
Front Door verursacht eine wiederkehrende Profilgebühr sowie Gebühren für Anfragen und Datenverarbeitung. Auch das Application Gateway bleibt kostenpflichtig. Führe die Front-Door-Trips zusammen aus und entferne beide Dienste nach Abschluss der Lab-Sequenz.
Den regionalen Origin prüfen
Rufe die öffentliche IP des Application Gateways ab und prüfe, ob die vorhandene API-Route fehlerfrei ist:
APPGW_IP=$(az network public-ip show \
--resource-group rg-cloudtrips-network-test-weu \
--name pip-cloudtrips-appgw-test-weu \
--query ipAddress \
--output tsv)
printf 'Application-Gateway-Origin: %s\n' "$APPGW_IP"
curl --include "http://${APPGW_IP}/api/health"
Die Anfrage sollte HTTP 200, die CloudTrips-Health-JSON-Antwort und
X-CloudTrips-Gateway: ApplicationGateway zurückgeben. Front Door verwendet
diese öffentliche Adresse als ersten Origin.
Erzeuge aus der aktuellen Abonnement-ID einen global eindeutigen Endpunktnamen:
AFD_ENDPOINT_NAME="cloudtrips-edge-$(az account show \
--query id \
--output tsv | tr -d '-' | cut -c1-8)"
printf 'Front-Door-Endpunktname: %s\n' "$AFD_ENDPOINT_NAME"
Kopiere den angezeigten Namen für das Portal. Azure ergänzt nach der Bereitstellung das Front-Door-Domänensuffix.
Das Front-Door-Profil erstellen
Suche nach Front Door and CDN profiles und wähle Create. Wähle unter Compare offerings die Option Custom create und anschließend Continue to create a Front Door.
Konfiguriere unter Basics:
Subscription: CloudTrips TEST
Resource group: rg-cloudtrips-network-test-weu
Resource group location: West Europe
Name: afd-cloudtrips-test
Tier: Standard
Der Standort der Ressourcengruppe speichert die Verwaltungsmetadaten des Profils. Front Door wird dadurch nicht regional. Der Endpunkt wird im globalen Edge-Netzwerk von Microsoft bereitgestellt.
Standard genügt für dieses Lab, weil die vorhandene Application-Gateway-WAF die Anfragen bereits in West Europe prüft. Premium wird benötigt, wenn Front Door selbst verwaltete WAF-Regeln oder unterstützte Private-Link-Origins verwenden soll.
Den Edge-Endpunkt hinzufügen
Öffne Endpoint, wähle Add an endpoint und trage den oben erzeugten global eindeutigen Namen ein. Wähle Add.
Ein Endpunkt empfängt Client-Datenverkehr und erhält eine von Azure
verwaltete Standarddomäne wie cloudtrips-edge-...z01.azurefd.net. Ein
Front-Door-Profil kann mehrere Endpunkte enthalten, dieses Lab benötigt aber
nur einen.
Wähle + Add a route und beginne mit:
Name: route-cloudtrips-all
Domains: Select the generated endpoint domain
Link to default domain: Enabled
Patterns to match: /*
Accepted protocols: HTTP and HTTPS
Redirect: Redirect all traffic to use HTTPS
Die Route verbindet eine Domäne und ein URL-Muster mit einer Origin Group. Die
Verknüpfung mit der Standarddomäne erlaubt dem generierten
azurefd.net-Hostnamen, diese Route zu verwenden. /* entspricht dem
Root-Pfad und allen vorhandenen CloudTrips-Pfaden, einschließlich /images/*
und /api/*.
Den Application-Gateway-Origin hinzufügen
Wähle unter Origin group die Option Add a new origin group und konfiguriere:
Name: og-cloudtrips-weu
Session affinity: Disabled
Health probe status: Enabled
Health probe path: /
Health probe protocol: HTTP
Health probe request type: GET
Health probe interval: 30 seconds
Behalte die Standardwerte für Load-Balancing-Samples und Latenz bei. Mit nur einem Origin besitzt Front Door noch kein alternatives Ziel. Der Health Probe entscheidet lediglich, ob dieser Origin Anfragen erhalten kann.
Wähle + Add an origin und konfiguriere:
Name: origin-appgw-weu
Origin type: Custom
Host name: Use the APPGW_IP value displayed earlier
Origin host header: Use the same APPGW_IP value
HTTP port: 80
Priority: 1
Weight: 1000
Status: Enabled
Private Link: Disabled
Der Origin ist der Dienst, den Front Door kontaktiert. Hier ist es das
öffentliche Frontend von agw-cloudtrips-web-test-weu, nicht eine der privaten
VMs. Der vorhandene Basic Listener des Application Gateways akzeptiert den
IP-basierten Host Header.
Füge den Origin und anschließend die Origin Group hinzu. Vervollständige die Route mit:
Origin path: Leave empty
Forwarding protocol: HTTP only
Caching: Disabled
Rules: None
Clients verwenden HTTPS zu Front Door. Dieses Lab leitet die Anfrage von Front Door jedoch an den vorhandenen reinen HTTP-Listener des Application Gateways weiter. Für die Übung reicht das aus, es handelt sich aber nicht um End-to-End-TLS. Ein Produktivdesign sollte dem Origin einen HTTPS-Listener und ein vertrauenswürdiges Zertifikat hinzufügen und danach HTTPS als Forwarding Protocol verwenden.
Caching bleibt deaktiviert, weil die aktuellen API-Antworten dynamisch sind. Ein späteres Design kann Caching gezielt für Pfade aktivieren, deren Antworten sicher wiederverwendet werden können.

Den globalen Edge bereitstellen
Füge in diesem Trip keine Security Policy hinzu. Die bereits dem Application Gateway zugeordnete WAF Policy prüft die Anfragen weiterhin, nachdem Front Door sie nach West Europe weitergeleitet hat.
Wähle Review + create und anschließend Create. Öffne nach der
Bereitstellung afd-cloudtrips-test und warte, bis Profil und Endpunkt
Succeeded und Enabled anzeigen. Es kann mehrere Minuten dauern, bis
die Front-Door-Konfiguration alle Edge-Standorte erreicht.
Öffne Front Door manager und bestätige diese Kette:
Endpoint: cloudtrips-edge-...
Route: route-cloudtrips-all
Origin group: og-cloudtrips-weu
Origin: origin-appgw-weu
Das Profil ist global, obwohl sein einziger Origin derzeit in West Europe liegt. Dieser Trip erstellt einen globalen Einstiegspunkt; er macht die Anwendung noch nicht regionsübergreifend.

Den Front-Door-Endpunkt testen
Rufe den generierten Hostnamen ab, ohne dessen eindeutiges Suffix eingeben zu müssen:
AFD_HOST=$(az afd endpoint list \
--resource-group rg-cloudtrips-network-test-weu \
--profile-name afd-cloudtrips-test \
--query '[0].hostName' \
--output tsv)
printf 'Front-Door-Hostname: %s\n' "$AFD_HOST"
Prüfe zuerst, dass der HTTP-Endpunkt den Client zu HTTPS umleitet:
curl --head "http://${AFD_HOST}/api/health"
Die Antwort sollte einen Location Header enthalten, der mit
https://${AFD_HOST} beginnt. Verwende nun den sicheren Endpunkt:
curl --include --max-time 20 "https://${AFD_HOST}/api/health"
Die Anfrage sollte HTTP 200, die Health-JSON-Antwort und diese
identifizierenden Header zurückgeben:
X-Azure-Ref: ...
X-CloudTrips-Gateway: ApplicationGateway
X-Azure-Ref belegt, dass Front Door die Anfrage verarbeitet hat. Der
CloudTrips Header belegt, dass Front Door danach die vorhandene Route und
Rewrite-Konfiguration des Application Gateways erreicht hat.

Die öffentliche IP des Application Gateways bleibt direkt erreichbar. Front Door ist jetzt der bevorzugte Edge-Endpunkt, aber allein durch seine Erstellung wird der Origin weder verborgen noch gesperrt. Einschränkungen des direkten Origin-Zugriffs benötigen ein zusätzliches Design, das Front-Door-Datenverkehr zulässt und gleichzeitig dessen Health Probes erhält.
Behalte afd-cloudtrips-test, seinen Endpunkt, seine Route und
og-cloudtrips-weu für die nächsten Front-Door-Trips. Der folgende
Origin-Group-Trip fügt einen kostengünstigen Maintenance-Origin hinzu und
demonstriert Primär- und Fallback-Prioritäten ohne ein weiteres Application
Gateway bereitzustellen.