Referrer zu VM-Instanzen ansehen


Verwenden Sie die REST API-Methode listReferrers, wenn Sie die Beziehungen zwischen VM-Instanzen und anderen Compute Engine-Ressourcen sehen möchten.

Wenn Sie REST verwenden, gibt 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 REST können Sie beispielsweise bequem eine Liste von Instanzgruppen anzeigen lassen, zu denen eine VM-Instanz gehört.

Hinweise

  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud -Dienste und APIs überprüft. Zum Ausführen von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei der Compute Engine authentifizieren:

    Wenn Sie die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, verwenden Sie die Anmeldedaten, die Sie der gcloud CLI bereitstellen.

      Installieren Sie die Google Cloud CLI. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:

      gcloud init

      Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

    Weitere Informationen finden Sie in der Dokumentation zur Google Cloud -Authentifizierung unter Für die Verwendung von REST authentifizieren.

Beschränkungen

  • Sie können nur Beziehungen zwischen VM-Instanzen und Instanzgruppen (sowohl verwaltete als auch nicht verwaltete) auflisten.
  • Sie können Referrer nur mithilfe von REST auflisten.

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 eine VM-Instanz mit dem Namen example-ig-a1 in der Zone us-central1-a. Die VM-Instanz ist Mitglied einer Instanzgruppe mit dem Namen example-ig in derselben Zone, siehe folgendes Diagramm:

Eine VM-Instanz ist Mitglied einer Instanzgruppe in derselben Zone.

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

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 Ziel (target) example-ig-a1, d. h. ein Mitglied (MEMBER_OF) des referrer, der example-ig instance-Gruppe.

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.

Wenn eine VM-Instanz Mitglied von zwei Instanzgruppen ist, enthält die Antwort beide Instanzgruppen.

Beispielsweise zeigt die folgende Antwort an, dass die Instanz mit dem Namen example-instance-a2 zu zwei Instanzgruppen namens example-ig und example-ig-2 gehört:

"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
  }
]

Querverweis-Referrer auflisten

Die Methode listReferrers gibt auch Informationen über Referrer zurück, die in anderen Bereichen, wie anderen Regionen oder Zonen, liegen. Angenommen, Sie haben eine VM-Instanz, die zu einer regionalen verwalteten Instanzgruppe gehört (regionale MIG).

Grafik: In der Region "us-central1" ist die Instanz "new-instance-a3" in der Zone "us-central1-a" Mitglied der regionalen Instanzgruppe "example-rmig".

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-rmig
  }
]

Die Antwort zeigt die regionale Instanzgruppe in der Referrer-Liste.

Referrer 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-rmig
  }
]

Nächste Schritte