Referrer auf VM-Instanzen ansehen

Auf dieser Seite wird beschrieben, wie Sie mit der List Referrers API die Beziehungen zwischen Ressourcen ansehen können, insbesondere die zwischen VM-Instanzen und anderen Compute Engine-Ressourcen.

Wenn Sie diese API verwenden, gibt die Compute Engine eine Liste von Referenzen zurück, die Folgendes beschreiben:

  • Die Quellressource: die Ressource, die auf die Zielressource zeigt
  • Die Zielressource: die betreffende Ressource
  • Den Referenztyp: die Beziehung zwischen den beiden Ressourcen

Mit dieser API können Sie beispielsweise bequem eine Liste verwalteter Instanzgruppen ansehen, zu denen eine VM-Instanz gehört.

Vorbereitung

Einschränkungen

  • Sie können nur Beziehungen zwischen VM-Instanzen und Instanzgruppen (sowohl verwaltete als auch nicht verwaltete) auflisten.
  • Es ist nicht möglich, Referrer mit dem gcloud-Befehlszeilentool oder der Google Cloud Console aufzulisten.

Einzelne Referrer auflisten

Ein Referrer ist eine Ressource, die auf eine andere Ressource verweist. Ein gängiger Referrer für VM-Instanzen ist eine Instanzgruppe.

Angenommen, Sie haben beispielsweise eine VM-Instanz namens "example-ig-a1" in der Zone "us-central1-a". Die VM-Instanz ist Mitglied einer Instanzgruppe mit dem Namen "example-ig" in derselben Zone, wie in der folgenden Abbildung dargestellt:

Wenn Sie diese Beziehung sehen möchten, rufen Sie mit der folgenden HTTP-Anfrage die Methode listReferrers für "example-ig-a1" auf:

GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1/referrers

Der Server gibt die Standardlistenantwort mit den folgenden Elementen zurück:

"items": [
  {
    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1,
    "referenceType": MEMBER_OF,
    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig
  }
]

In diesem Fall ist das target "example-ig-a1", das ein MEMBER_OF des referrer ist, nämlich der Instanzgruppe "example-ig".

Mehrere Referrer auflisten

Wenn eine Ressource mehr als einen Referrer hat, gibt die Antwort eine Liste aller Referrer für die Zielressource zurück. Wenn eine Instanz zu zwei Instanzgruppen gehört, enthält die Antwort beide Instanzgruppen.

Beispielsweise zeigt die folgende Antwort an, dass die Instanz namens "example-instance-a2" zu zwei Instanzgruppen gehört, nämlich "example-ig" und "example-ig-2":

"items": [
  {
    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-instance-a2,
    "referenceType": MEMBER_OF,
    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig
  },
  {
    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-instance-a2,
    "referenceType": MEMBER_OF,
    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig-2
  }
]

Referrer in anderen Bereichen auflisten

Die Methode listReferrers gibt auch Informationen über Referrer zurück, die in anderen Bereichen, wie anderen Regionen oder Zonen, liegen. Nehmen wir beispielsweise an, Sie haben eine VM-Instanz, die zu einer regionalen verwalteten Instanzgruppe gehört:

Sie rufen die Methode listReferrers mit dieser Instanz als Ziel über die folgende HTTP-Anfrage auf:

GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3/referrers

Der Server gibt eine Standardliste zurück, die folgende Elemente enthält:

"items": [
  {
    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3,
    "referenceType": MEMBER_OF,
    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/instanceGroups/example-rig
  }
]

Die Antwort zeigt die regional verwaltete Instanzgruppe in der Referrers-Liste.

Referrers auf alle Ressourcen in einer Sammlung auflisten

Mit dem Platzhalter (-) können Sie eine Liste aller Referrers auf alle VM-Instanzen in einer bestimmten Zone anfordern. Die Anforderung kann mit einer ähnlichen HTTP-Anfrage wie dieser hier erfolgen:

GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/-/referrers

Der Server gibt eine Antwort zurück, die eine Liste von VM-Instanzen in der Zone und die Verweise auf diese Instanzen enthält. Beispiel:

"items": [
  {
    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1,
    "referenceType": MEMBER_OF,
    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig
  },
  {
    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a2,
    "referenceType": MEMBER_OF,
    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig
  },
  {
    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a2,
    "referenceType": MEMBER_OF,
    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig-2
  },
  {
    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3,
    "referenceType": MEMBER_OF,
    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/instanceGroups/example-rig
  }
]

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Compute Engine-Dokumentation