Konnektivitätstests

Konnektivitätstests ist ein Diagnosetool, mit dem Sie die Konnektivität zwischen Netzwerkendpunkten prüfen können. Es analysiert Ihre Konfiguration und führt in einigen Fällen eine Live-Datenebenenanalyse zwischen den Endpunkten durch. Ein Endpunkt ist eine Quelle oder ein Ziel des Netzwerktraffics, z. B. eine VM, ein GKE-Cluster (Google Kubernetes Engine), eine Weiterleitungsregel für den Load-Balancer oder eine IP-Adresse im Internet.

Zur Analyse der Netzwerkkonfigurationen simulieren Konnektivitätstests den erwarteten Weiterleitungspfad eines Pakets über Ihr VPC-Netzwerk (VPC), Cloud VPN-Tunnel oder VLAN-Anhänge. Konnektivitätstests können auch den Weiterleitungspfad für erwarteten eingehenden Traffic zu Ressourcen in Ihrem VPC-Netzwerk simulieren.

Bei einigen Konnektivitätsszenarien führen Konnektivitätstests auch eine Analyse der Live-Datenebene durch. Mit diesem Feature werden Pakete über die Datenebene gesendet, um die Verbindung zu prüfen und um eine grundlegende Diagnose von Latenz und Paketverlusten zu ermöglichen. Wenn die Route für das Feature unterstützt wird, enthält jeder ausgeführte Test ein Analyseergebnis der Live-Datenebene.

Informationen zum Erstellen und Ausführen von Tests für verschiedene Szenarien finden Sie unter Konnektivitätstests erstellen und ausführen.

Die API für Konnektivitätstests ist die Network Management API. Weitere Informationen finden Sie in der API-Dokumentation.

Warum Konnektivitätstests verwenden?

Konnektivitätstests können Ihnen bei der Behebung der folgenden Netzwerkverbindungsprobleme helfen:

  • Unbeabsichtigt uneinheitliche Konfigurationen
  • Veraltete Konfigurationen, die durch Migrationen oder Änderungen der Netzwerkkonfiguration verursacht werden
  • Konfigurationsfehler für eine Vielzahl von Netzwerkdiensten und -funktionen

Wenn Sie von Google verwaltete Dienste testen, können Sie mit Konnektivitätstests auch feststellen, ob es ein Problem in Ihrem VPC-Netzwerk oder im Google-VPC-Netzwerk gibt, das für die Dienstressourcen verwendet wird.

Wie Konnektivitätstests Konfigurationen analysieren

Beim Analysieren von Netzwerkkonfigurationen verwenden Konnektivitätstests eine abstrakte Netzwerkzustandsmaschine, um zu modellieren, wie ein VPC-Netzwerk Pakete verarbeiten soll. Google Cloud verarbeitet ein Paket in mehreren logischen Schritten.

Die Analyse kann viele mögliche Pfade nehmen

Aufgrund der Vielzahl von VPC-Netzwerkdiensten und -features, die von der Konfigurationsanalyse unterstützt werden, kann ein Testpaket, das eine VPC-Netzwerkkonfiguration durchläuft, viele mögliche Pfade haben.

Das folgende Diagramm zeigt ein Modell, in dem die Konfigurationsanalyse den Trace-Traffic zwischen zwei Compute Engine-VM-Instanzen simuliert: eine auf der linken und eine auf der rechten Seite.

Die Analyse hängt von Ihrer Netzwerkinfrastruktur ab

Abhängig von Ihrem Google Cloud-Netzwerk und Ihren Ressourcenkonfigurationen kann dieser Traffic über einen Cloud VPN-Tunnel, ein VPC-Netzwerk, einen Google Cloud-Load-Balancer oder ein Peering-VPC-Netzwerk laufen, bevor er die Ziel-VM-Instanz erreicht.

Die abstrakte Netzwerkzustandsmaschine
Die abstrakte Netzwerkzustandsmaschine

Die Analyse folgt einem der vielen endlichen Zustände.

Die begrenzte Anzahl von Schritten zwischen abstrakten Zuständen, bis ein Paket zugestellt oder verworfen wurde, wird als endlicher Automat modelliert. Dieser endliche Automat kann sich jederzeit in einem von vielen endlichen Zuständen befinden und kann mehrere nachfolgende Zustände haben.

Wenn Konnektivitätstests beispielsweise mehrere Routen entsprechend der Routenpriorität zuordnen, kann Google Cloud eine Route unter mehreren Routen anhand einer nicht angegebenen Hash-Funktion in der Datenebene auswählen. Wenn eine richtlinienbasierte Route konfiguriert ist, leitet Konnektivitätstest das Paket an den nächsten Hop weiter, also einen internen Load-Balancer.

Im vorherigen Fall gibt das Trace von Konnektivitätstests alle möglichen Routen zurück, kann jedoch nicht bestimmen, mit welcher Methode Google Cloud die Routen zurückgibt. Dies liegt daran, dass diese Methode Google Cloud-intern ist und Änderungen unterliegen kann.

Von Google verwaltete Dienste

Von Google verwaltete Dienste wie Cloud SQL und Google Kubernetes Engine (GKE) weisen Kunden Ressourcen in Projekten und VPC-Netzwerken zu, die Google gehören und die Google verwalten. Kunden sind nicht berechtigt, auf diese Ressourcen zuzugreifen.

Die Konfigurationsanalyse der Konnektivitätstests kann trotzdem testen und ein Gesamtergebnis zur Erreichbarkeit für von Google verwaltete Dienste liefern. Details zu den getesteten Ressourcen im Google-Projekt werden jedoch nicht geliefert.

Das folgende Diagramm zeigt ein Modell für die Konfigurationsanalyse, die Trace-Traffic von einer VM-Instanz in einem VPC-Netzwerk des Kunden zu einer Cloud SQL-Instanz im Google-VPC-Netzwerk simuliert. In diesem Beispiel sind die Netzwerke über VPC-Netzwerk-Peering verbunden.

Vergleichbar einem Standardtest zwischen zwei VMs werden in logischen Schritten die Firewallregeln für den relevanten ausgehenden Traffic geprüft und mit der Route abgeglichen. Beim Testen stellt die Konfigurationsanalyse der Konnektivitätstests Details zu diesen Schritten bereit. Für den letzten logischen Schritt der Analyse der Konfiguration im Google-VPC-Netzwerk liefert die Analyse jedoch nur ein Gesamtergebnis zur Erreichbarkeit. Konnektivitätstests enthalten keine Details zu den Ressourcen im Google-Projekt, da Sie keine Berechtigung zum Ansehen haben.

Weitere Informationen finden Sie in den Testbeispielen unter Verbindung zu und von Google-verwalteten Diensten testen.

Grafik: die abstrakte Netzwerkstatusmaschine für von Google verwaltete Dienste
Die abstrakte Netzwerkstatusmaschine für von Google verwaltete Dienste

Unterstützte Konfigurationen

Die Konfigurationsanalyse der Konnektivitätstests unterstützt das Testen der in den folgenden Abschnitten beschriebenen Netzwerkkonfigurationen.

Trafficabläufe

  • VM-Instanzen zum und vom Internet
  • VM-Instanz zu VM-Instanz
  • Von Google Cloud zu und von lokalen Netzwerken
  • Zwischen zwei lokalen Netzwerken, die über Network Connectivity Center verbunden sind
  • Zwischen zwei VPC-Spokes in Network Connectivity Center

VPC-Netzwerkfeatures

Sie können die Konnektivität zwischen Ressourcen testen, die die folgenden Funktionen verwenden (Sowohl IPv4 als auch IPv6 werden unterstützt):

Google Cloud Hybrid-Netzwerklösungen

Die folgenden Hybrid-Netzwerklösungen werden sowohl für IPv4 als auch für IPv6 unterstützt:

Network Connectivity Center

VPC-Spokes und Hybrid-Spokes für Network Connectivity Center werden unterstützt.

Cloud NAT

Öffentliche NAT und private NAT werden unterstützt.

Cloud Load Balancing

  • Die folgenden Google Cloud-Load-Balancer-Typen werden unterstützt: externe Application Load Balancer, externe Passthrough-Network Load Balancer, externe Proxy-Network Load Balancer, interne Application Load Balancer, interne Passthrough-Network Load Balancer und interne Proxy-Network Load Balancer.
  • Das Testen der Verbindung zu den IP-Adressen des Load-Balancers wird unterstützt.
  • Die Prüfung der Konnektivität von Cloud Load Balancing-Systemdiagnosen zu Back-Ends wird unterstützt.
  • Interne TCP/UDP-Load-Balancer können als nächste Hops verwendet werden.

Informationen zu nicht unterstützten Cloud Load Balancing-Features finden Sie im Abschnitt Nicht unterstützte Konfigurationen.

Google Kubernetes Engine (GKE)

  • Die Verbindung zu und zwischen GKE-Knoten und der GKE-Steuerungsebene wird unterstützt.
    • Beim Testen der privaten IP-Adresse einer GKE-Steuerungsebene bestimmt die Konfigurationsanalyse für Konnektivitätstests, ob das Paket an die Steuerungsebene zugestellt werden kann. Das schließt die Analyse der Konfiguration im Google-VPC-Netzwerk ein.
    • Beim Testen der öffentlichen IP-Adresse einer GKE-Steuerungsebene bestimmt die Konfigurationsanalyse der Konnektivitätstests, ob das Paket an das Google-VPC-Netzwerk gesendet werden kann, in dem die Steuerungsebene ausgeführt wird. Die Analyse der Konfiguration innerhalb des Google-VPC-Netzwerks ist nicht eingeschlossen.
  • Die Konnektivität zu dem GKE-Dienst über Cloud Load Balancing wird unterstützt.
  • Die Verbindung zu einem GKE-Pod in einem VPC-nativen Cluster wird unterstützt.

Informationen zu nicht unterstützten GKE-Features finden Sie im Abschnitt Nicht unterstützte Konfigurationen.

Andere Google Cloud-Produkte und -Dienste

Die folgenden zusätzlichen Google Cloud-Produkte oder -Dienste werden unterstützt:

  • Cloud SQL-Instanzen werden unterstützt, einschließlich einer Private Service Connect-Verbindung, einer VPC-Netzwerk-Peering-Verbindung und externen Replikate.
    • Beim Testen der privaten IP-Adresse einer Cloud SQL-Instanz bestimmt die Konfigurationsanalyse, ob das Paket an die Instanz zugestellt werden kann. Das schließt die Analyse der Konfiguration im Google-VPC-Netzwerk ein.
    • Beim Testen der öffentlichen IP-Adresse einer Cloud SQL-Instanz bestimmt die Konfigurationsanalyse, ob das Paket an das Google-VPC-Netzwerk gesendet werden kann, in dem die Instanz ausgeführt wird. Die Analyse der Konfiguration innerhalb des Google-VPC-Netzwerks ist nicht eingeschlossen.
  • Cloud Functions (1. Generation) wird unterstützt.
  • Cloud Run-Versionen werden unterstützt.
  • Die App Engine-Standardumgebung wird unterstützt.

Nicht unterstützte Konfigurationen

Die Konfigurationsanalyse der Konnektivitätstests unterstützt keine Tests der folgenden Netzwerkkonfigurationen:

So analysieren Konnektivitätstests die Live-Datenebene

Das Feature für die Analyse der Live-Datenebene testet die Konnektivität, indem mehrere Trace-Pakete vom Quellendpunkt zum Ziel gesendet werden. Die Analyseergebnisse der Live-Datenebene zeigen die Anzahl der gesendeten Prüfungen, die Anzahl der Prüfungen, die das Ziel erfolgreich erreicht haben, und einen Erreichbarkeitsstatus. Dieser Status wird anhand der Anzahl der erfolgreich zugestellten Prüfungen ermittelt, wie in der folgenden Tabelle dargestellt.

Status Anzahl der Prüfungen, die ihr Ziel erreicht haben
Erreichbar Mindestens 95 %
Unerreichbar Keine
Teilweise erreichbar Mehr als 0 und weniger als 95 %

Die dynamische Prüfung zeigt nicht nur an, wie viele Pakete erfolgreich zugestellt wurden, sondern auch Informationen zum Medianwert und zum 95. Perzentil der Einweg-Latenz.

Die Analyse der Live-Datenebene hängt nicht von der Konfigurationsanalyse ab. Stattdessen bietet die Analyse der Live-Datenebene eine unabhängige Bewertung des Verbindungsstatus.

Wenn Sie offensichtliche Abweichungen zwischen der Konfigurationsanalyse und den Analyseergebnissen der Live-Datenebene feststellen, lesen Sie die Informationen unter Fehlerbehebung bei Konnektivitätstests.

Unterstützte Konfigurationen

Die Analyse der Live-Datenebene unterstützt die folgenden Netzwerkkonfigurationen.

Trafficabläufe

  • Zwischen zwei VM-Instanzen
  • Zwischen einer VM-Instanz und einer Cloud SQL-Instanz
  • Zwischen einer VM-Instanz und einem Endpunkt der GKE-Steuerungsebene
  • Zwischen einer VM-Instanz und einem Edge-Standort des Google-Netzwerks
  • IP-Protokolle: TCP, UDP

VPC-Netzwerkfeatures

Sie können die Konnektivität zwischen Ressourcen mit den folgenden Features dynamisch prüfen:

Nicht unterstützte Konfigurationen

Konfigurationen, die nicht explizit als "unterstützt" aufgeführt sind, werden nicht unterstützt. Konfigurationen, bei denen Verbindungen durch Firewallregeln für ausgehenden Traffic blockiert werden, werden ebenfalls nicht unterstützt.

Wenn die Analysefunktion der Live-Datenebene bei einem bestimmten Test nicht ausgeführt wird, wird im Feld Ergebnis der letzten Paketübertragung ein N/A oder - angezeigt.

Überlegungen und Einschränkungen

Berücksichtigen Sie die folgenden Überlegungen, wenn Sie entscheiden, ob Konnektivitätstests verwendet werden sollen.

  • Die Konfigurationsanalyse, die Konnektivitätstests ausführen, basiert vollständig auf Konfigurationsinformationen für Google Cloud-Ressourcen und repräsentiert möglicherweise nicht den tatsächlichen Zustand oder Status der Datenebene für ein VPC-Netzwerk.
  • Konnektivitätstests erfassen zwar einige dynamische Konfigurationsinformationen wie den Cloud VPN-Tunnelstatus und dynamische Routen auf Cloud Router, sie werden jedoch nicht auf den Systemzustand der internen Produktionsinfrastruktur und Datenebenenkomponenten von Google zugreifen oder diesen beibehalten.
  • Der Status Packet could be delivered für einen Konnektivitätstest garantiert nicht, dass Traffic durch die Datenebene weitergeleitet werden kann. Der Test dient dazu, Konfigurationsprobleme zu validieren, die zu einem Rückgang des Traffics führen können.

Bei unterstützten Routen ergänzen die Analyseergebnisse der Live-Datenebene die Ergebnisse der Konfigurationsanalyse, indem sie testen, ob übertragene Pakete am Ziel ankommen.

Konnektivitätstests kennen keine Netzwerke außerhalb von Google Cloud

Externe Netzwerke sind so definiert:

  • Lokale Netzwerke, die sich in Ihrem Rechenzentrum oder einer anderen Einrichtung befinden, in der Sie Ihre Hardwaregeräte und Softwareanwendungen betreiben.
  • Andere Cloud-Anbieter, bei denen Sie Ressourcen ausführen.
  • Ein Host im Internet, der Traffic an Ihr VPC-Netzwerk sendet.

Konnektivitätstests führen kein Tracking von Firewall-Verbindungen durch

Das Verbindungstracking für VPC-Firewalls speichert Informationen zu neuen und hergestellten Verbindungen und ermöglicht das Zulassen oder Einschränken des nachfolgenden Traffics anhand dieser Informationen.

Die Konfigurationsanalyse der Konnektivitätstests unterstützt kein Tracking von Firewall-Verbindungen, da sich die Tabelle der Firewall-Verbindungen in der Datenebene für eine VM-Instanz befindet und nicht zugänglich ist. Die Konfigurationsanalyse kann jedoch das Verbindungs-Tracking simulieren, indem sie eine Rückverbindung zulässt, die normalerweise von einer Firewallregel für eingehenden Traffic verweigert wird, solange Konnektivitätstests die ausgehende Verbindung initiieren.

Die Analyse der Live-Datenebene unterstützt das Testen der Firewallverbindung nicht.

Konnektivitätstests können keine VM-Instanzen testen, die zum Ändern des Weiterleitungsverhaltens konfiguriert sind

Konnektivitätstests können keine VM-Instanzen testen, die für die Ausführung in der Datenebene als Router, Firewalls, NAT-Gateways, VPNs usw. konfiguriert wurden. Diese Art der Konfiguration macht es schwierig, die auf der VM-Instanz ausgeführte Umgebung zu bewerten. Darüber hinaus unterstützt die Analyse der Live-Datenebene dieses Testszenario nicht.

Die Ergebniszeiten von Konnektivitätstests können variieren

Die Ergebnisse der Konnektivitätstests können zwischen 30 Sekunden und 10 Minuten dauern. Die Dauer eines Tests hängt von der Größe der VPC-Netzwerkkonfiguration und der Anzahl der von Ihnen verwendeten Google Cloud-Ressourcen ab.

Die folgende Tabelle zeigt die Antwortzeiten, die Sie für alle Nutzer erwarten können, die einen Test für eine Beispielkonfiguration in einer Abfrage ausführen. Diese Konfiguration enthält VM-Instanzen, einen Cloud VPN-Tunnel und Google Cloud-Load-Balancer.

Antwortzeiten pro Abfrage
Projektgröße Anzahl der Google Cloud-Ressourcen Antwortlatenz
Kleines Projekt Weniger als 50 60 Sekunden für 95 % der Anfragen aller Nutzer
Mittelgroßes Projekt Mehr als 50, aber weniger als 5.000 120 Sekunden für 95 % der Anfragen aller Nutzer
Großes Projekt Größer als 5.000 600 Sekunden für 95 % der Anfragen aller Nutzer

Die Analyse der Live-Datenebene ist nicht für ein kontinuierliches Monitoring vorgesehen

Bei der Analyse der Live-Datenebene wird die Netzwerkverbindung einmalig zu Diagnosezwecken überprüft. Für ein kontinuierliches Monitoring von Konnektivität und Paketverlusten verwenden Sie das Dashboard zur Leistungsüberwachung.

Bei der Analyse der Live-Datenebene werden nicht mehrere Traces getestet

Die Analyse von Live-Datenebenen wird nicht unterstützt, wenn die Route nicht deterministisch ist.

Unterstützung durch VPC Service Controls

VPC Service Controls bietet zusätzliche Sicherheit für Konnektivitätstests, um das Risiko einer Daten-Exfiltration zu verringern. Mithilfe von VPC Service Controls können Sie Projekte in Perimeterbereiche einfügen, die Ressourcen und Services vor Anfragen schützen, die ihren Ursprung außerhalb des Perimeters haben.

Weitere Informationen zu Dienstperimetern finden Sie auf der Seite Details und Konfiguration von Dienstperimetern der VPC Service Controls-Dokumentation.

Nächste Schritte