Cache-Inhalte entwerten

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.

Hinweise

Sie können für Entwertungen die Google Cloud CLI oder die Google Cloud -Konsole 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 zuerst gcloud 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

  1. Rufen Sie in der Google Cloud Console die Seite Cloud CDN auf.

    Zu Cloud CDN

  2. Klicken Sie auf einen Ursprung.

  3. Klicken Sie auf den Tab Cache-Entwertung.

  4. Wählen Sie unter Zugeordnete Load Balancer den Load Balancer aus.

  5. Gehen Sie unter Zu entfernende Objekte angeben so vor:

    • Geben Sie unter 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 ein, z. B. /images/file.jpg.
  6. 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 Invalidation 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 Ihrer URL-Zuordnung. Verwenden Sie den Befehl gcloud compute url-maps list, um Ihre URL-Zuordnungen 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 den API-Aufruf der 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 Google Cloud Console-Projekt-ID
  • URL_MAP_NAME: der Name der URL-Zuordnung

Verwenden Sie den folgenden Beispiel-JSON-Anfragetext, um eine Datei zur Invalidation anzugeben:

{
  "path": "/images/file.jpg"
}

Wenn Sie die Datei nur für einen Host ungültig machen möchten, verwenden Sie den folgenden Beispiel-JSON-Anfragetext:

{
  "host": "host1.com",
  "path": "/images/file.jpg"
}

Gesamtes Verzeichnis entwerten

Console

  1. Rufen Sie in der Google Cloud Console die Seite Cloud CDN auf.

    Zu Cloud CDN

  2. Klicken Sie auf einen Ursprung.

  3. Klicken Sie auf den Tab Cache-Entwertung.

  4. Wählen Sie unter Zugeordnete Load Balancer den Load Balancer aus.

  5. Gehen Sie unter Zu entfernende Objekte angeben so vor:

    • Geben Sie unter Host einen Hostnamen an, es sei denn, Sie möchten den Pfad für alle Hostnamen entwerten.
    • Geben Sie unter Pfad den Pfad und ein Sternchen als Platzhalter ein, z. B. /images/*.
  6. 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 Ihrer URL-Zuordnung.

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 den API-Aufruf der 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 Google Cloud Console-Projekt-ID
  • URL_MAP_NAME: der Name der URL-Zuordnung

Verwenden Sie den folgenden Beispiel-JSON-Anfragetext, um ein Verzeichnis für die Invalidation anzugeben:

{
  "path": "/images/*"
}

Wenn Sie ein Verzeichnis nur für einen Host ungültig machen möchten, verwenden Sie den folgenden Beispiel-JSON-Anfragetext:

{
  "host": "host1.com",
  "path": "/images/*"
}

Durch Cache-Tags entwerten

Console

  1. Rufen Sie in der Google Cloud Console die Seite Cloud CDN auf.

    Zu Cloud CDN

  2. Klicken Sie auf einen Ursprung.

  3. Klicken Sie auf den Tab Cache-Entwertung.

  4. Wählen Sie unter Zugeordnete Load Balancer den Load Balancer aus.

  5. Geben Sie unter Zu entfernende Objekte angeben unter Cache-Tags ein oder mehrere Tags an, die ungültig gemacht werden sollen. Trennen Sie Tags mit Leerzeichen oder Kommas.

  6. 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 der URL-Zuordnung
  • TAGS: ein Tag oder eine durch Kommas getrennte Liste von Tags. Alternativ können Sie dieses Flag bis zu zehnmal angeben.

Wenn die Back-End-Antwort beispielsweise einen Cache-Tag-Header mit einer nicht transparenten Nutzer-ID wie einer UUID4 oder einer anderen Form einer GUID enthält, kannst du alle Inhalte für einen bestimmten Nutzer mit dem Flag tag ungültig machen. Wenn Sie Inhalte nur für 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 den API-Aufruf der 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 Google Cloud Console-Projekt-ID
  • URL_MAP_NAME: der Name der URL-Zuordnung

Verwenden Sie den folgenden Beispiel-JSON-Anfragetext, um Cache-Tags für die Invalidation anzugeben:

{
  "cacheTags": [
    "tag1",
    "tag2"
  ]
}

Sie können ein einzelnes Tag oder eine durch Kommas getrennte Liste von Tags angeben.

Wenn Sie die Cache-Tags nur für einen Host ungültig machen möchten, verwenden Sie den folgenden Beispiel-JSON-Anfragetext:

{
  "host": "host1.com",
  "path": "tag1,tag2"
}

Alles entwerten

Sie können zwar alles ungültig machen, aber das ist potenziell riskant. Prüfen Sie Ihre Anforderungen sorgfältig, bevor Sie fortfahren.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Cloud CDN auf.

    Zu Cloud CDN

  2. Klicken Sie auf einen Ursprung.

  3. Klicken Sie auf den Tab Cache-Entwertung.

  4. Wählen Sie unter Zugeordnete Load Balancer den Load Balancer aus.

  5. Gehen Sie unter Zu entfernende Objekte angeben so vor:

    • Geben Sie unter Host einen Hostnamen an, es sei denn, Sie möchten den Pfad für alle Hostnamen entwerten.
    • Verwenden Sie für Pfad ein Sternchen, z. B. /*.
  6. Klicken Sie auf Ungültig machen und dann auf Bestätigen, um anzugeben, dass alle Inhalte im Cloud CDN ungültig gemacht werden sollen.

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 der URL-Zuordnung
  • /*: Der URL-Pfad, den Sie entwerten möchten. Dieser enthält nicht den Hostnamen. Der Pfad kann einen expliziten Dateinamen oder einen Stern als Platzhalter verwenden.

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 den API-Aufruf der 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 Google Cloud Console-Projekt-ID
  • URL_MAP_NAME: der Name der URL-Zuordnung

Verwenden Sie den folgenden Beispiel-JSON-Anfragetext, um einen URL-Pfad für die Invalidation anzugeben:

{
  "path": "/*"
}

Wenn Sie den URL-Pfad nur für einen Host ungültig machen möchten, verwenden Sie den folgenden Beispiel-JSON-Anfragetext:

{
  "host": "host1.com",
  "path": "/*"
}

Status Ihrer Anfrage zur Ungültigkeitsprüfung abrufen

Cloud CDN gibt pro Entwertung zwei Logzeilen aus: eine, wenn die Entwertung akzeptiert wird, und eine, wenn sie abgeschlossen ist. Die erste enthält die Informationen zum Host und Pfad.

Mithilfe von Cloud Logging oder Cloud Monitoring können Sie den Status Ihrer Anfrage zur Entwertung verfolgen oder eine Liste der kürzlich gesendeten Anfragen aufrufen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Cloud CDN auf.

    Zu Cloud CDN

  2. Klicken Sie auf einen Ursprung.

  3. Klicken Sie auf den Tab Cache-Entwertung.

  4. Klicken Sie auf Zu Cloud Logging, um den Status und die Ergebnisse der Anfrage zur Entwertung aufzurufen.

gcloud

Im folgenden Beispiel wird Logging verwendet:

gcloud logging read 'protoPayload.methodName="v1.compute.urlMaps.invalidateCache"' \
    --limit=10

Im folgenden Beispiel wird eine Abfrage mit 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.