Netzwerkkonfiguration für eine Instanz ansehen


Auf dieser Seite finden Sie eine Anleitung dazu, wie Sie die Netzwerkschnittstellen, Netzwerke, Subnetze und IP-Adressen für eine Compute-Instanz aufrufen.

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. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.
    <x0A>

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

      1. After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      2. Set a default region and zone.
      3. REST

        Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

          After installing the Google Cloud CLI, initialize it by running the following command:

          gcloud init

          If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

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

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle „Compute-Instanzadministrator (v1)“ (roles/compute.instanceAdmin.v1) oder „Compute-Netzwerkadministrator“ (roles/compute.networkAdmin) für das Projekt zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Aufrufen der Netzwerkkonfiguration für eine Instanz benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Aufrufen der Netzwerkkonfiguration für eine Instanz erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um die Netzwerkkonfiguration für eine Instanz aufzurufen:

  • Netzwerkkonfiguration für eine Instanz ansehen: compute.instances.get auf der Instanz
  • IP-Adressen für eine Instanz ansehen: compute.instances.list für das Projekt

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

IP-Adressen ansehen

Sie können die interne und externe IP-Adresse für Ihre Instanz aufrufen. Die IP-Adressen können entweder IPv4- oder IPv6-Adressen sein.

Console

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:

    Zu „VM-Instanzen“

  2. Optional: Verwenden Sie das Feld Filter, um die Anzahl der angezeigten Instanzen zu begrenzen.

  3. Wenn die Instanz eine externe IP-Adresse hat, wird sie in der Spalte Externe IP angezeigt.

    Wenn die Spalte Externe IP leer ist, hat die Instanz keine externe IP-Adresse. Wenn die Instanz keine externe IP-Adresse hat, können Sie ihr eine solche zuweisen.

Seite &quot;VM-Instanzen&quot; mit internen und externen IP-Adressen

Je nach den Spaltenanzeigeoptionen sehen Sie möglicherweise mehr oder weniger Spalten als im vorherigen Bild.

gcloud

Es gibt zwei Befehle, mit denen Sie die IP-Adressen für eine Instanz aufrufen können:

  • gcloud compute instances list zeigt alle IP-Adressen, die von einer Compute-Instanz verwendet werden, entweder statisch oder vorübergehend.
  • gcloud compute addresses list zeigt alle reservierten IP-Adressen an, die einer Compute-Instanz zugewiesen sind.

In dieser Aufgabe wird gezeigt, wie Sie IP-Adressen mit gcloud compute instances-Befehlen aufrufen.

  1. Verwenden Sie den Befehl gcloud compute instances list, um die internen und externen IP-Adressen für Ihre Instanzen aufzurufen.

    gcloud compute instances list

    Sie können die --filter-Anweisung anhängen, um die Anzahl der Instanzen zu begrenzen, die vom Befehl zurückgegeben werden, z. B. --filter='zone:us-central1-c'.

    Die Ausgabe sieht etwa so aus:

    NAME           ZONE            MACHINE_TYPE    PREEMPTIBLE  INTERNAL_IP                EXTERNAL_IP                     STATUS
    webapp1        us-central1-c   c3-highmem-88   true         192.0.2.11                                                 RUNNING
    my-instance    us-central1-c   n4-standard-2                192.0.2.126                203.0.113.6                     RUNNING
    my-dual-stack  us-central1-a   e2-micro                     192.0.2.54                 203.0.113.7                     RUNNING
                                                                                          2001:db8:2:2:2:2:2:2/96
    new-ipv6-only  us-central1-a   n4-standard-2                2001:db8:1:1:1:1:1:1/96                                    RUNNING
    

    Wenn das Feld „Externe IP-Adresse“ leer ist, ist für die Instanz keine IP-Adresse dieses Typs definiert. Sie können eine zuweisen.

  2. Verwenden Sie den gcloud compute instances describe-Befehl mit dem Flag --format, um die Ausgabe zu filtern und sich die interne oder externe IP-Adresse für eine bestimmte Instanz anzeigen zu lassen.

    Interne Adressen

    Verwenden Sie einen der folgenden Befehle, um die interne IP-Adresse für eine bestimmte Instanz aufzurufen:

    • IPv4-Adressen:

         gcloud compute instances describe INSTANCE_NAME \
             --zone=ZONE \
             --format='get(networkInterfaces[0].networkIP)'
        
      192.0.2.11
    • IPv6-Adressen:

         gcloud compute instances describe INSTANCE_NAME \
             --zone=ZONE \
             --format='get(networkInterfaces[0].ipv6Address)'
        
      2001:db8:2:2:2:2:2:2

    Externe Adressen

    Verwenden Sie einen der folgenden Befehle, um die externe IP-Adresse für eine bestimmte Instanz aufzurufen:

    • IPv4-Adressen:

         gcloud compute instances describe INSTANCE_NAME \
             --zone=ZONE \
             --format='get(networkInterfaces[0].accessConfigs[0].natIP)'
        
      203.0.113.6
    • IPv6-Adressen:

         gcloud compute instances describe INSTANCE_NAME \
             --zone=ZONE \
             --format='get(networkInterfaces[0].ipv6AccessConfigs[0].externalIpv6)'
        
      2001:db8:3:3:3:3:3:3

    Ersetzen Sie Folgendes:

    • INSTANCE_NAME: der Name der Instanz, deren interne oder externe IP-Adresse Sie aufrufen möchten
    • ZONE ist der Name der Zone, in der sich die Instanz befindet.

    Wenn der Befehl keine IP-Adresse zurückgibt, ist für die Instanz keine externe IP-Adresse konfiguriert.

REST

Stellen Sie eine GET-Anfrage an die Methode instances.get. Wenn Sie der Anfrage einen $fields-Abfrageparameter hinzufügen, können Sie die Ausgabe auf die gewünschten Felder beschränken.

 GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/INSTANCE_NAME$fields=name,networkInterfaces.networkIP,networkInterfaces.accessConfigs.natIP,networkInterfaces.ipv6AccessConfigs.externalIpv6
 

Ersetzen Sie Folgendes:

  • PROJECT_NAME: der Name des Projekts, das die Instanz enthält
  • ZONE: Die Zone für die Instanz, die Sie abfragen möchten
  • INSTANCE_NAME: der Name der Instanzressource, die zurückgegeben werden soll

Wenn eine der IP-Adressen nicht konfiguriert ist, wird das entsprechende Feld nicht in der Ausgabe angezeigt. Für eine Compute-Instanz, die ein Dual-Stack-Netzwerk mit einer externen IPv6-Adresse verwendet, sieht der Antworttext so aus:

{
  "name": "my-dual-stack-vm",
  "networkInterfaces": [
    {
      "networkIP": "10.0.0.2",
      "accessConfigs": [
        {
          "natIP": "104.155.21.204"
        }
      ],
      "ipv6AccessConfigs": [
        {
          "externalIpv6": "2600:1900:4010:8b2:0:0:0:0"
        }
      ]
    }
  ]
}

Die folgenden Felder enthalten die erforderlichen Informationen:

  • networkIP: Die zugewiesene interne IPv4-Adresse
  • natIP: die zugewiesene externe IPv4-Adresse
  • externalIpv6: Die zugewiesene externe IPv6-Adresse.

Python

from enum import Enum
from typing import List

from google.cloud import compute_v1


def get_instance(project_id: str, zone: str, instance_name: str) -> compute_v1.Instance:
    """
    Get information about a VM instance in the given zone in the specified project.

    Args:
        project_id: project ID or project number of the Cloud project you want to use.
        zone: name of the zone you want to use. For example: “us-west3-b”
        instance_name: name of the VM instance you want to query.
    Returns:
        An Instance object.
    """
    instance_client = compute_v1.InstancesClient()
    instance = instance_client.get(
        project=project_id, zone=zone, instance=instance_name
    )

    return instance


class IPType(Enum):
    INTERNAL = "internal"
    EXTERNAL = "external"
    IP_V6 = "ipv6"


def get_instance_ip_address(
    instance: compute_v1.Instance, ip_type: IPType
) -> List[str]:
    """
    Retrieves the specified type of IP address (ipv6, internal or external) of a specified Compute Engine instance.

    Args:
        instance (compute_v1.Instance): instance to get
        ip_type (IPType): The type of IP address to retrieve (ipv6, internal or external).

    Returns:
        List[str]: Requested type IP addresses of the instance.
    """
    ips = []
    if not instance.network_interfaces:
        return ips
    for interface in instance.network_interfaces:
        if ip_type == IPType.EXTERNAL:
            for config in interface.access_configs:
                if config.type_ == "ONE_TO_ONE_NAT":
                    ips.append(config.nat_i_p)
        elif ip_type == IPType.IP_V6:
            for ipv6_config in getattr(interface, "ipv6_access_configs", []):
                if ipv6_config.type_ == "DIRECT_IPV6":
                    ips.append(ipv6_config.external_ipv6)

        elif ip_type == IPType.INTERNAL:
            # Internal IP is directly available in the network interface
            ips.append(interface.network_i_p)
    return ips

Java


import com.google.cloud.compute.v1.AccessConfig;
import com.google.cloud.compute.v1.AccessConfig.Type;
import com.google.cloud.compute.v1.GetInstanceRequest;
import com.google.cloud.compute.v1.Instance;
import com.google.cloud.compute.v1.InstancesClient;
import com.google.cloud.compute.v1.NetworkInterface;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class GetVmAddress {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    // Project ID or project number of the Google Cloud project you want to use.
    String projectId = "your-project-id";
    // Instance ID of the Google Cloud project you want to use.
    String instanceId = "your-instance-id";
    // IPType you want to search.
    IpType ipType = IpType.INTERNAL;

    getVmAddress(projectId, instanceId, ipType);
  }

  // Retrieves the specified type of IP address
  // (ipv6, internal or external) of a specified Compute Engine instance.
  public static List<String> getVmAddress(String projectId, String instanceId, IpType ipType)
          throws IOException {
    List<String> result = new ArrayList<>();
    Instance instance = getInstance(projectId, instanceId);

    for (NetworkInterface networkInterface : instance.getNetworkInterfacesList()) {
      if (ipType == IpType.EXTERNAL) {
        for (AccessConfig accessConfig : networkInterface.getAccessConfigsList()) {
          if (accessConfig.getType().equals(Type.ONE_TO_ONE_NAT.name())) {
            result.add(accessConfig.getNatIP());
          }
        }
      } else if (ipType == IpType.IP_V6) {
        for (AccessConfig accessConfig : networkInterface.getAccessConfigsList()) {
          if (accessConfig.hasExternalIpv6()
                  && accessConfig.getType().equals(Type.DIRECT_IPV6.name())) {
            result.add(accessConfig.getExternalIpv6());
          }
        }
      } else if (ipType == IpType.INTERNAL) {
        result.add(networkInterface.getNetworkIP());
      }
    }

    return result;
  }

  private static Instance getInstance(String projectId, String instanceId) throws IOException {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests.
    try (InstancesClient instancesClient = InstancesClient.create()) {
      GetInstanceRequest request = GetInstanceRequest.newBuilder()
              .setInstance(instanceId)
              .setProject(projectId)
              .setZone("us-central1-b")
              .build();
      return instancesClient.get(request);
    }
  }

  public enum IpType {
    INTERNAL("internal"),
    EXTERNAL("external"),
    IP_V6("ipv6");

    private final String type;

    IpType(String type) {
      this.type = type;
    }

    public String getType() {
      return type;
    }
  }
}

Netzwerkschnittstellen für eine Instanz ansehen

Jede Compute-Instanz hat mindestens eine Netzwerkschnittstelle. Sie können die konfigurierten Attribute der Netzwerkschnittstellen für eine Instanz auf folgende Weise ansehen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:

    Zu „VM-Instanzen“

  2. Optional: Verwenden Sie das Feld Filter, um die Anzahl der angezeigten Instanzen zu begrenzen.

  3. Klicken Sie auf den Namen der Instanz, die Sie prüfen möchten.

  4. Im Abschnitt Netzwerk können Sie unter Netzwerkschnittstellen die für die Instanz erstellten Netzwerkschnittstellen (NICs), das mit jeder NIC verknüpfte Netzwerk und Subnetz sowie die zugewiesenen IP-Adressen sehen.

  5. Sie können auf den Namen einer NIC klicken, um die Seite Details zur Netzwerkschnittstelle zu öffnen. Auf dieser Seite können Sie die von der NIC verwendeten Firewalls und Routen sehen und einen Konnektivitätstest für die NIC durchführen.

gcloud

Verwenden Sie den Befehl gcloud compute instances describe, um die Netzwerkschnittstellen (Network Interface Cards, NICs) für eine Compute-Instanz aufzurufen. Sie können dem Befehl die Option --format hinzufügen, um die zurückgegebenen Informationen auf bestimmte Felder zu beschränken und die Darstellung zu ändern, z. B.:

gcloud compute instances describe INSTANCE_NAME --zone=ZONE \
    --format="flattened(name,networkInterfaces[].name, networkInterfaces[].network.basename(), networkInterfaces[].stackType, networkInterfaces[].nicType)"

Ersetzen Sie Folgendes:

  • INSTANCE_NAME: der Name der Instanz, die angezeigt werden soll
  • ZONE: Die Zone für die Instanz, die Sie aufrufen möchten

Die Ausgabe sieht etwa so aus:

name:                           my-multinic-vm
networkInterfaces[0].name:      nic0
networkInterfaces[0].network:   default
networkInterfaces[0].nicType:   GVNIC
networkInterfaces[0].stackType: IPV4_ONLY
networkInterfaces[1].name:      nic1
networkInterfaces[1].network:   appnet-vpc-0
networkInterfaces[1].nicType:   GVNIC
networkInterfaces[1].stackType: IPV4_IPV6

REST

Senden Sie eine GET-Anfrage an die Methode instances.get. Wenn Sie der Anfrage den Abfrageparameter $fields hinzufügen, können Sie die Ausgabe auf die Property networkInterfaces beschränken.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/INSTANCE_NAME?$fields=networkInterfaces

Ersetzen Sie Folgendes:

  • PROJECT_NAME: der Name des Projekts, das die Instanz enthält
  • ZONE: Die Zone für die Instanz, die Sie abfragen möchten
  • INSTANCE_NAME: der Name der Instanzressource, die zurückgegeben werden soll

Die Ausgabe sieht etwa so aus:

{
  "networkInterfaces": [
  {
    "kind": "compute#networkInterface",
    "network": "https://www.googleapis.com/compute/v1/projects/my-project/global/networks/network-name-1",
    "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-name-1",
    "networkIP": "10.128.0.15",
    "name": "nic0",
    "accessConfigs": [
      {
        "kind": "compute#accessConfig",
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT",
        "networkTier": "PREMIUM"
      }
    ],
    "fingerprint": "mBy9xvkWA9M=",
    "stackType": "IPV4_ONLY",
    "nicType": "GVNIC"
  },
  {
    "kind": "compute#networkInterface",
    "network": "https://www.googleapis.com/compute/v1/projects/my-project/global/networks/network-name-2",
    "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-name-2",
    "networkIP": "10.0.20.2",
    "name": "nic1",
    "accessConfigs": [
      {
        "kind": "compute#accessConfig",
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT",
        "networkTier": "PREMIUM"
      }
    ],
    "ipv6AccessConfigs": [
      {
        "kind": "compute#accessConfig",
        "type": "DIRECT_IPV6",
        "name": "external-ipv6",
        "externalIpv6": "2600:1900:4000:8447:0:0:0:0",
        "externalIpv6PrefixLength": 96,
        "publicPtrDomainName": "",
        "networkTier": "PREMIUM"
      }
    ],
    "fingerprint": "rx6hfNA94f4=",
    "stackType": "IPV4_IPV6",
    "ipv6AccessType": "EXTERNAL",
    "nicType": "GVNIC"
  }
  ]
}

Konfiguration der Dynamic Network Interface für eine Instanz ansehen

Wenn Sie dynamische NICs für eine Instanz konfiguriert haben, können Sie die Informationen zu dynamischen NICs mit einer der folgenden Methoden aufrufen.

gcloud

Verwenden Sie den Befehl gcloud beta compute instances describe, um die Netzwerkschnittstellen (Network Interface Cards, NICs) für eine Compute-Instanz aufzurufen. Sie können dem Befehl die Option --format hinzufügen, um die zurückgegebenen Informationen auf bestimmte Felder zu beschränken und die Darstellung zu ändern, z. B.:

gcloud compute instances describe INSTANCE_NAME --zone=ZONE \
    --format="flattened(name,networkInterfaces[].name, networkInterfaces[].network.basename(), networkInterfaces[].stackType, networkInterfaces[].parentNicName)"

Die Ausgabe sieht etwa so aus:

name:                           test-instance
networkInterfaces[0].name:      nic0
networkInterfaces[0].network:   default
networkInterfaces[0].nicType:   GVNIC
networkInterfaces[0].stackType: IPV4_ONLY
networkInterfaces[1].name:      nic1
networkInterfaces[1].network:   prod-ipv6
networkInterfaces[1].nicType:   GVNIC
networkInterfaces[1].stackType: IPV4_IPV6
networkInterfaces[1].name:      nic1.2
networkInterfaces[1].network:   alt-ipv6-net
networkInterfaces[1].nicType:   GVNIC
networkInterfaces[1].stackType: IPV4_IPV6
networkInterfaces[1].parentNicName: nic1

REST

Senden Sie eine GET-Anfrage an die Methode instances.get. Wenn Sie der Anfrage den Abfrageparameter $fields hinzufügen, können Sie die Ausgabe auf die Property networkInterfaces beschränken.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: ID des Projekts, das die Instanz enthält
  • ZONE: Zone der Instanz
  • INSTANCE_NAME: der Name der Instanz

HTTP-Methode und URL:

GET https://compute.googleapis.com/compute/beta/projects/PROJECT_NAME/zones/ZONE/instances/INSTANCE_NAME?$fields=networkInterfaces

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "networkInterfaces": [
  {
    "kind": "compute#networkInterface",
    "network": "https://www.googleapis.com/compute/beta/projects/my-project/global/networks/network-name-1",
    "subnetwork": "https://www.googleapis.com/compute/beta/projects/my-project/regions/us-central1/subnetworks/subnet-name-1",
    "networkIP": "10.128.0.15",
    "name": "nic0",
    "accessConfigs": [
      {
        "kind": "compute#accessConfig",
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT",
        "networkTier": "PREMIUM"
      }
    ],
    "fingerprint": "mBy9xvkWA9M=",
    "stackType": "IPV4_ONLY",
    "nicType": "GVNIC"
  },
  {
    "kind": "compute#networkInterface",
    "network": "https://www.googleapis.com/compute/beta/projects/my-project/global/networks/network-name-2",
    "subnetwork": "https://www.googleapis.com/compute/beta/projects/my-project/regions/us-central1/subnetworks/subnet-name-2",
    "networkIP": "10.0.20.2",
    "name": "nic1",
    "accessConfigs": [
      {
        "kind": "compute#accessConfig",
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT",
        "networkTier": "PREMIUM"
      }
    ],
    "ipv6AccessConfigs": [
      {
        "kind": "compute#accessConfig",
        "type": "DIRECT_IPV6",
        "name": "external-ipv6",
        "externalIpv6": "2600:1900:4000:8447:0:0:0:0",
        "externalIpv6PrefixLength": 96,
        "publicPtrDomainName": "",
        "networkTier": "PREMIUM"
      }
    ],
    "fingerprint": "rx6hfNA94f4=",
    "stackType": "IPV4_IPV6",
    "ipv6AccessType": "EXTERNAL",
    "nicType": "GVNIC",
    "parentNicName": "nic1"
  },
  {
    "kind": "compute#networkInterface",
    "network": "https://www.googleapis.com/compute/beta/projects/my-project/global/networks/network-name-3",
    "subnetwork": "https://www.googleapis.com/compute/beta/projects/my-project/regions/us-central1/subnetworks/subnet-name-3",
    "networkIP": "10.0.26.2",
    "name": "nic1.1",
    "accessConfigs": [
      {
        "kind": "compute#accessConfig",
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT",
        "networkTier": "PREMIUM"
      }
    ],
    "ipv6AccessConfigs": [
      {
        "kind": "compute#accessConfig",
        "type": "DIRECT_IPV6",
        "name": "external-ipv6",
        "externalIpv6": "2600:1900:4000:8450:0:0:0:0",
        "externalIpv6PrefixLength": 96,
        "publicPtrDomainName": "",
        "networkTier": "PREMIUM"
      }
    ],
    "fingerprint": "rx6hfNA94f4=",
    "stackType": "IPV4_IPV6",
    "ipv6AccessType": "EXTERNAL",
    "nicType": "GVNIC",
    "parentNicName": "nic1"
  }
  ]
}

Alle Compute-Instanzen in einem Netzwerk ansehen

Verwenden Sie eine der folgenden Methoden, um alle Compute-Instanzen in einem bestimmten Netzwerk aufzurufen.

Console

  1. Rufen Sie in der Google Cloud -Console die Seite VPC-Netzwerke auf.

    Zur Seite VPC-Netzwerke

  2. Optional: Verwenden Sie das Feld Filter, um die Anzahl der angezeigten Netzwerke zu begrenzen.

  3. Klicken Sie auf den Namen des Netzwerks, für das Sie die Compute-Instanzen auflisten möchten.

  4. Wählen Sie den Tab Instanzen aus, um die Instanzen in diesem Netzwerk aufzurufen.

gcloud

Verwenden Sie den Befehl gcloud compute instances list, um die Compute-Instanzen aufzurufen, die ein bestimmtes Netzwerk verwenden.

Verwenden Sie das Flag --filter, um nur die Instanzen aufzulisten, die ein bestimmtes Netzwerk verwenden. Sie können auch ein --format-Flag verwenden, um die Ergebnisse einzuschränken und zu formatieren, z. B.:

gcloud compute instances list \
    --filter 'networkInterfaces[].network:NETWORK_NAME' \
    --format="table(name:sort=1,machineType.basename(),zone.basename(),networkInterfaces[].subnetwork)"

Die Ausgabe sieht etwa so aus:

NAME: c2-tier1-multinic
MACHINE_TYPE: c2-standard-30
ZONE: us-central1-c
SUBNETWORK: ['https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/default', 'https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/webapps-external-subnet']
NAME: c3-with-lssd MACHINE_TYPE: c3-standard-4-lssd ZONE: us-central1-a SUBNETWORK: ['https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/default']
NAME: example-instance3 MACHINE_TYPE: n2-custom-2-163840-ext ZONE: us-central1-b SUBNETWORK: ['https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/default']
NAME: n4-test-windows MACHINE_TYPE: n4-standard-2 ZONE: us-central1-c SUBNETWORK: ['https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/default']

Prüfen, ob das Tier_1-Netzwerk aktiviert ist

Verwenden Sie eine der folgenden Methoden, um festzustellen, ob die Tier_1-Netzwerkleistung pro VM für eine Instanz aktiviert ist.

Console

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:

    Zu „VM-Instanzen“

  2. Optional: Verwenden Sie das Feld Filter, um die Anzahl der angezeigten Instanzen zu begrenzen.

  3. Klicken Sie auf den Namen der Instanz, die Sie prüfen möchten.

  4. Prüfen Sie im Abschnitt Netzwerk den Wert für Gesamtbandbreite für ausgehenden Traffic:

    • TIER_1: Das Tier_1-Netzwerk ist aktiviert.
    • -: Das Tier_1-Netzwerk ist nicht aktiviert.

gcloud

Verwenden Sie den Befehl gcloud compute instances describe, um die Einstellung networkPerformanceConfig für eine Instanz aufzurufen. Sie können dem Befehl die Option --format hinzufügen, um die zurückgegebenen Informationen auf bestimmte Felder zu beschränken und die Darstellung zu ändern, z. B.:

gcloud compute instances describe INSTANCE_NAME \
    --zone=ZONE \
    --format="text(name, networkPerformanceConfig)"

Wenn das Tier_1-Netzwerk für die Instanz nicht konfiguriert ist, ist das Feld networkPerformanceConfig nicht in der Ausgabe enthalten. Wenn Tier 1-Netzwerk für eine Instanz aktiviert ist, sieht die Ausgabe in etwa so aus:

name:                                              c2-tier1-multinic
networkPerformanceConfig.totalEgressBandwidthTier: TIER_1

REST

Senden Sie eine GET-Anfrage an die Methode instances.get. Wenn Sie der Anfrage den Abfrageparameter $fields hinzufügen, können Sie die Ausgabe auf die Felder name, networkPerformanceConfig und nicType beschränken.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/INSTANCE_NAME?$fields=name,networkPerformanceConfig,networkInterfaces.nicType

Ersetzen Sie Folgendes:

  • PROJECT_NAME: der Name des Projekts, das die Instanz enthält
  • ZONE: Die Zone für die Instanz, die Sie abfragen möchten
  • INSTANCE_NAME: der Name der Instanzressource, die zurückgegeben werden soll

Wenn das Tier_1-Netzwerk für die Instanz nicht konfiguriert ist, ist das Feld networkPerformanceConfig nicht in der Ausgabe enthalten. Wenn Tier 1-Netzwerk für eine Instanz aktiviert ist, sieht die Ausgabe in etwa so aus:

{
  "name": "c2-tier1-multinic",
  "networkInterfaces": [
    {
      "nicType": "GVNIC"
    },
    {
      "nicType": "GVNIC"
    }
  ],
  "networkPerformanceConfig": {
    "totalEgressBandwidthTier": "TIER_1"
  }
}