Comprobar una operación de prueba en ejecución

Connectivity Tests permite comprobar periódicamente el estado de una operación de prueba en ejecución, como create, update o delete. Podrás consultar los resultados finales de la prueba cuando se complete.

Consola

La consola Google Cloud usa un icono de rueda giratoria para mostrar que se está ejecutando una prueba. En segundo plano, las pruebas de conectividad consultan continuamente el estado de la operación de prueba. Cuando finalice la prueba, podrá consultar los resultados finales en el panel Detalles del resultado.

Para obtener más información sobre las páginas de la consola, consulta Crear y ejecutar pruebas de conectividad. Google Cloud

gcloud

Para usar gcloud CLI y comprobar una operación de prueba en ejecución, especifica la opción --async. Si no especifica esta opción, solo verá los resultados finales de la prueba.

  1. Por ejemplo, si crea la siguiente prueba con la opción --async, se devolverá inmediatamente un ID de recurso de operación a la línea de comandos. Después, puedes usar este ID en un comando describe para comprobar el estado de la prueba mientras se está ejecutando.

    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
    

    Sustituye los siguientes valores:

    • NAME: el nombre de las pruebas de conectividad
    • DESTINATION_PROJECT: el ID de proyecto del endpoint de destino
    • SOURCE_IP_ADDRESS: la dirección IP de origen interna o externa desde la que estás haciendo la prueba. Solo se permite una dirección IPv6 cuando el destino de la prueba es una IP virtual de balanceador de carga global.
    • DESTINATION_IP_ADDRESS: la dirección IP de origen interna o externa que estás probando. Solo se permite una dirección IPv6 cuando el destino de la prueba es una IP virtual de un balanceador de carga global.
    • PROTOCOL: un protocolo compatible para las pruebas de conectividad
    • SOURCE_PROJECT: el ID de proyecto del endpoint de origen

    El resultado es el siguiente:

    Create request issued for: [gcloud-example]
    Check operation [projects/reachability-e2e-test/locations/global/operations/operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13] for status
    
  2. Usa el ID de recurso de la operación con el comando describe para comprobar el estado de la prueba:

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

    Sustituye los siguientes valores:

    • SOURCE_PROJECT: el ID de proyecto del endpoint de origen
    • OPERATION_RESOURCE_ID: el ID del recurso de la operación en curso que estás comprobando (por ejemplo, operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13)

    El siguiente resultado de ejemplo del comando anterior muestra done: false. Cuando se complete la prueba, este campo cambiará a 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. Repite el comando describe anterior hasta que el resultado muestre done: true.

API

La API Network Management siempre está en modo async. Cuando envías un comando a la API, recibes inmediatamente un ID de operación. Puede usar este ID para comprobar periódicamente el estado de la prueba.

Python

La API Network Management siempre está en modo async. Cuando usas el cliente de Python de la API para enviar una solicitud, recibes inmediatamente un ID de operación. Puedes usar este ID para comprobar periódicamente el estado de la prueba.

Consulta el siguiente ejemplo:

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))

Sustituye los siguientes valores:

  • PROJECT_ID: el ID del proyecto en el que has creado la prueba
  • OPERATION_ID: el ID del recurso de la operación en curso que estás comprobando (por ejemplo, operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13)

Siguientes pasos