Auf dieser Seite wird beschrieben, wie Sie Cache-Inhalte in Cloud CDN entwerten.
Wenn beispielsweise eine Datei unter /images/file.jpg
im Cache gespeichert wurde und entwertet werden muss, stehen Ihnen mehrere Optionen zur Verfügung, je nachdem, ob Sie nur diese Datei oder einen größeren Bereich entwerten möchten. In jedem Fall können Sie die Entwertung entweder für alle Hostnamen oder nur für einen bestimmten Hostnamen vornehmen.
Weitere Informationen zur Cache-Entwertung finden Sie im Überblick zur Cache-Entwertung.
Hinweis
Sie können für Entwertungen die Google Cloud CLI oder die Console von Google Cloud verwenden.
Sie haben zwei Möglichkeiten, auf die Google Cloud CLI zuzugreifen:
Installieren Sie die Google Cloud CLI. Folgen Sie dazu der Anleitung unter Mit
apt-get
installieren. Wenn Sie die Google Cloud CLI noch nicht verwendet haben, führen Sie zuerstgcloud init
zur Authentifizierung aus.Verwenden Sie Google Cloud Shell. Dort ist
gcloud
bereits installiert.
Informationen zum Erstellen einer benutzerdefinierten Rolle mit den erforderlichen Berechtigungen finden Sie unter Benutzerdefinierte Rollen erstellen und verwalten.
Informationen zum Hinzufügen einer vordefinierten Rolle finden Sie in der IAM-Kurzanleitung.
Nur eine Datei entwerten
Console
Rufen Sie in der Console von Google Cloud die Seite Cloud CDN auf.
Klicken Sie auf einen Ursprung.
Klicken Sie auf den Tab Cache-Entwertung.
Wählen Sie unter Zugeordnete Load-Balancer den Load Balancer aus.
Gehen Sie unter Zu entfernende Objekte angeben so vor:
- Geben Sie für Host einen Hostnamen an, es sei denn, Sie möchten den Pfad für alle Hostnamen entwerten.
- Geben Sie unter Pfad den Pfad und den Dateinamen an, z. B.
/images/file.jpg
.
Klicken Sie auf Entwerten.
gcloud
Führen Sie den Befehl gcloud compute url-maps invalidate-cdn-cache
aus.
Wenn Sie nur eine Datei für die Entwertung angeben möchten, verwenden Sie das Flag --path
mit dem Dateinamen.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --path "/images/file.jpg"
Ersetzen Sie URL_MAP_NAME
durch den Namen Ihres URL-Mappings. Verwenden Sie den Befehl gcloud compute url-maps list
, um Ihre URL-Mappings aufzulisten.
Wenn Sie nur einen Host entwerten möchten, fügen Sie das Flag --host
hinzu, z. B. --host host1.com
.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --host host1.com \ --path "/images/file.jpg"
Standardmäßig wartet die Google Cloud CLI, bis die Entwertung abgeschlossen ist. Um die Entwertung im Hintergrund auszuführen, hängen Sie --async
an die Befehlszeile an.
API
Verwenden Sie die Methode urlMaps.invalidateCache
:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME/invalidateCache
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID in der Google Cloud ConsoleURL_MAP_NAME
: der Name des URL-Mappings
Wenn Sie eine Datei für die Entwertung angeben möchten, verwenden Sie den folgenden JSON-Anfragetext:
{ "path": "/images/file.jpg" }
Wenn Sie die Datei für nur einen Host entwerten möchten, verwenden Sie den folgenden Beispiel-JSON-Anfragetext:
{ "host": "host1.com", "path": "/images/file.jpg" }
Gesamtes Verzeichnis entwerten
Console
Rufen Sie in der Console von Google Cloud die Seite Cloud CDN auf.
Klicken Sie auf einen Ursprung.
Klicken Sie auf den Tab Cache-Entwertung.
Wählen Sie unter Zugeordnete Load-Balancer den Load Balancer aus.
Gehen Sie unter Zu entfernende Objekte angeben so vor:
- Geben Sie für Host einen Hostnamen an, es sei denn, Sie möchten den Pfad für alle Hostnamen entwerten.
- Geben Sie unter Pfad den Pfad sowie ein Sternchen als Platzhalter an, z. B.
/images/*
.
Klicken Sie auf Entwerten.
gcloud
Führen Sie den Befehl gcloud compute url-maps invalidate-cdn-cache
aus.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --path "/images/*"
Ersetzen Sie URL_MAP_NAME
durch den Namen Ihres URL-Mappings.
Wenn Sie nur einen Host entwerten möchten, fügen Sie das Flag --host
hinzu, z. B. --host host1.com
.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --host host1.com \ --path "/images/*"
API
Verwenden Sie die Methode urlMaps.invalidateCache
:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME/invalidateCache
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID in der Google Cloud ConsoleURL_MAP_NAME
: der Name des URL-Mappings
Wenn Sie ein Verzeichnis für die Entwertung angeben möchten, verwenden Sie den folgenden JSON-Anfragetext:
{ "path": "/images/*" }
Wenn Sie ein Verzeichnis für nur einen Host entwerten möchten, verwenden Sie den folgenden JSON-Anfragetext:
{ "host": "host1.com", "path": "/images/*" }
Entwertung anhand von Cache-Tags
Console
Rufen Sie in der Console von Google Cloud die Seite Cloud CDN auf.
Klicken Sie auf einen Ursprung.
Klicken Sie auf den Tab Cache-Entwertung.
Wählen Sie unter Zugeordnete Load-Balancer den Load Balancer aus.
Geben Sie unter Zu entfernende Objekte angeben für Cache-Tags ein oder mehrere zu entwertende Tags an. Verwenden Sie Leerzeichen oder Kommas, um Tags zu trennen.
Klicken Sie auf Entwerten.
gcloud
Führen Sie den Befehl gcloud beta compute url-maps invalidate-cdn-cache
aus.
gcloud beta compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --tags=TAGS
Ersetzen Sie Folgendes:
URL_MAP_NAME
: der Name des URL-MappingsTAGS
: ein Tag oder eine kommagetrennte Liste von Tags; alternativ können Sie dieses Flag bis zu zehnmal angeben
Wenn die Backend-Antwort beispielsweise einen Cache-Tag
-Header mit einer undurchsichtigen Nutzer-ID wie einer UUID4 oder einer anderen Form von GUID enthält, können Sie alle Inhalte für einen bestimmten Nutzer mit dem Flag tag
entwerten.
Wenn Sie Inhalte für nur einen Host entwerten möchten, z. B. für Ihre Staging-Umgebung, fügen Sie das Flag --host
hinzu.
gcloud beta compute url-maps invalidate-cdn-cache url_map_1 \ --tags="1115b8f4-f804-4861-9629-8cb9aecdeeb3" \ --host="host1.com"
API
Verwenden Sie die Methode urlMaps.invalidateCache
:
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME/invalidateCache
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID in der Console von Google CloudURL_MAP_NAME
: der Name des URL-Mappings
Verwenden Sie den folgenden Beispiel-JSON-Anfragetext, um Cache-Tags für die Entwertung anzugeben:
{ "cacheTags": [ "tag1", "tag2" ] }
Sie können ein einzelnes Tag oder eine kommagetrennte Liste von Tags angeben.
Wenn Sie die Entwertung anhand von Cache-Tags für nur einen Host durchführen möchten, verwenden Sie den folgenden Beispiel-JSON-Anfragetext:
{ "host": "host1.com", "path": "tag1,tag2" }
Alles entwerten
Sie können zwar alles entwerten, aber das ist potenziell riskant. Prüfen Sie Ihre Anforderungen sorgfältig, bevor Sie fortfahren.
Console
Rufen Sie in der Console von Google Cloud die Seite Cloud CDN auf.
Klicken Sie auf einen Ursprung.
Klicken Sie auf den Tab Cache-Entwertung.
Wählen Sie unter Zugeordnete Load-Balancer den Load Balancer aus.
Gehen Sie unter Zu entfernende Objekte angeben so vor:
- Geben Sie für Host einen Hostnamen an, es sei denn, Sie möchten den Pfad für alle Hostnamen entwerten.
- Verwenden Sie unter Pfad ein Sternchen, z. B.
/*
.
Klicken Sie auf Entwerten und dann auf Bestätigen, um anzugeben, dass Cloud CDN alles entwerten soll.
gcloud
Führen Sie den Befehl gcloud compute url-maps invalidate-cdn-cache
aus.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --path "/*"
Ersetzen Sie Folgendes:
URL_MAP_NAME
: der Name des URL-Mappings/*
: der URL-Pfad, den Sie entwerten möchten; enthält nicht den Hostnamen; Pfad kann einen expliziten Dateinamen oder ein Sternchen als Platzhalter enthalten
Wenn Sie nur einen Host entwerten möchten, fügen Sie das Flag --host
hinzu, z. B. --host host1.com
.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --host host1.com \ --path "/*"
API
Verwenden Sie die Methode urlMaps.invalidateCache
:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME/invalidateCache
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID in der Console von Google CloudURL_MAP_NAME
: der Name des URL-Mappings
Verwenden Sie den folgenden Beispiel-JSON-Anfragetext, um einen URL-Pfad für die Entwertung anzugeben:
{ "path": "/*" }
Wenn Sie den URL-Pfad für nur einen Host entwerten möchten, verwenden Sie den folgenden Beispiel-JSON-Anfragetext:
{ "host": "host1.com", "path": "/*" }
Status der Entwertungsanfrage ansehen
Cloud CDN gibt zwei Logzeilen pro Entwertung aus: eine, wenn die Entwertung akzeptiert wird, und eine, wenn sie abgeschlossen ist. Die erste enthält die Host- und Pfadinformationen.
Mithilfe von Cloud Logging oder Cloud Monitoring können Sie den Status Ihrer Entwertungsanfrage verfolgen oder eine Liste der kürzlich gesendeten Anfragen aufrufen.
Console
Rufen Sie in der Console von Google Cloud die Seite Cloud CDN auf.
Klicken Sie auf einen Ursprung.
Klicken Sie auf den Tab Cache-Entwertung.
Klicken Sie auf Zu Cloud Logging, um den Status und die Ergebnisse der Entwertungsanfrage aufzurufen.
gcloud
Hier ist ein Beispielbefehl, der Logging verwendet:
gcloud logging read 'protoPayload.methodName="v1.compute.urlMaps.invalidateCache"' \ --limit=10
Hier ist eine Beispielabfrage, die Monitoring verwendet:
protoPayload.serviceName="compute.googleapis.com" protoPayload.methodName="v1.compute.urlMaps.invalidateCache"
Nächste Schritte
- Informationen zum Prüfen, ob Cloud CDN Antworten aus dem Cache bereitstellt, finden Sie unter Logs ansehen.
- Mehr darüber, welche Inhalte im Cache gespeichert werden können und welche nicht, erfahren Sie unter Caching-Details.