Laufenden Testvorgang prüfen

Konnektivitätstests unterstützen die regelmäßige Prüfung des Status eines laufenden Testvorgangs, z. B. create, update oder delete. Die endgültigen Testergebnisse können Sie nach Abschluss des Tests weiterhin prüfen.

Console

Die Google Cloud Console verwendet ein rotierendes Ladesymbol, um auf einen laufenden Test hinzuweisen. Im Hintergrund fragen Konnektivitätstests kontinuierlich den Status des Testvorgangs ab. Nach Abschluss des Tests können Sie die endgültigen Ergebnisse im Bereich Ergebnisdetails einsehen.

Weitere Informationen zu Cloud Console-Seiten finden Sie unter Konnektivitätstests erstellen und ausführen.

gcloud

Wenn Sie einen laufenden Testvorgang mit der gcloud-Befehlszeile prüfen möchten, geben Sie die Option --async an. Wenn Sie diese Option nicht festlegen, werden nur die endgültigen Testergebnisse angezeigt.

  1. Wenn Sie beispielsweise den folgenden Test mithilfe der Option --async erstellen, wird sofort eine Vorgangsressourcen-ID an die Befehlszeile zurückgegeben. Sie können diese ID dann in einem nachfolgenden describe-Befehl verwenden, um den Teststatus zu überprüfen, während der Test noch ausgeführt wird.

    gcloud network-management connectivity-tests create NAME \
      --destination-project=DESTINATION_PROJECT \
      --source-ip-address=SOURCE_IP_ADDRESS \
      --destination-ip-address=DESTINATION_IP_ADDRESS \
      --protocol=PROTOCOL \
      --source-project=SOURCE_PROJECT \
      --async
    

    Ersetzen Sie die folgenden Werte:

    • NAME: der Name der Konnektivitätstests
    • DESTINATION_PROJECT: die Projekt-ID des Zielendpunkts
    • SOURCE_IP_ADDRESS: die interne oder externe Quell-IP-Adresse, von der Sie testen. Eine IPv6-Adresse ist nur zulässig, wenn das Ziel des Tests eine globale Load-Balancer-VIP ist.
    • DESTINATION_IP_ADDRESS ist die interne oder externe Quell-IP-Adresse, zu der Sie testen. Eine IPv6-Adresse ist nur zulässig, wenn das Ziel des Tests eine globale Load-Balancer-VIP ist.
    • PROTOCOL: ein unterstütztes Protokoll für Konnektivitätstests
    • SOURCE_PROJECT: die Projekt-ID des Quellendpunkts

    Die Ausgabe sieht so aus:

    Create request issued for: [gcloud-example]
    Check operation [projects/reachability-e2e-test/locations/global/operations/operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13] for status
    
  2. Verwenden Sie die Vorgangsressourcen-ID mit dem Befehl describe, um den Teststatus zu prüfen:

    gcloud network-management operations describe \
    projects/SOURCE_PROJECT/locations/global/operations/OPERATION_RESOURCE_ID
    

    Ersetzen Sie die folgenden Werte:

    • SOURCE_PROJECT: die Projekt-ID des Quellendpunkts
    • OPERATION_RESOURCE_ID: die Ressourcen-ID des zu prüfenden laufenden Testvorgangs, z. B. operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13

    Die folgende Beispielausgabe für den vorherigen Befehl gibt done: false zurück. Wenn der Test abgeschlossen ist, ändert sich das Feld in done: true.

    done: false
    metadata:
     '@type': type.googleapis.com/google.cloud.networkmanagement.v1.OperationMetadata
     apiVersion: v1
     cancelRequested: false
     createTime: '2020-01-30T19:06:50.055838110Z'
     endTime: '2020-01-30T19:06:57.637200039Z'
     target: projects/reachability-e2e-test/locations/global/connectivityTests/gcloud-example
     verb: create
    name:
     projects/reachability-e2e-test/locations/global/operations/operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13
    response:
     '@type': type.googleapis.com/google.cloud.networkmanagement.v1beta1.ConnectivityTest
     createTime: '2020-01-30T19:06:50.050012906Z'
     ...  // Full resource metadata displayed here.
    
  3. Wiederholen Sie den vorherigen describe-Befehl, bis in der Ausgabe done: true angezeigt wird.

API

Die Network Management API befindet sich immer im Modus async. Wenn Sie einen Befehl an die API senden, erhalten Sie sofort eine Vorgangs-ID. Mit dieser ID können Sie regelmäßig den Teststatus prüfen.

Python

Die Network Management API befindet sich immer im Modus async. Wenn Sie den Python API-Client verwenden, um eine Anfrage zu senden, erhalten Sie sofort eine Vorgangs-ID. Mit dieser ID können Sie regelmäßig den Teststatus prüfen.

Sehen Sie sich folgendes Beispiel an:

project_id = 'PROJECT_ID'
operation_id = 'OPERATION_ID'

request = api.projects().locations().global_().operations().get(
        name='projects/%s/locations/global/operations/%s' % (project_id, operation_id))

print(json.dumps(request.execute(), indent=4))

Ersetzen Sie die folgenden Werte:

  • PROJECT_ID: die Projekt-ID des Projekts, in dem Sie den Test erstellt haben
  • OPERATION_ID: die Ressourcen-ID des zu prüfenden laufenden Testvorgangs, z. B. operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13

Nächste Schritte