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.
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 comandodescribe
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 conectividadDESTINATION_PROJECT
: el ID de proyecto del endpoint de destinoSOURCE_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 conectividadSOURCE_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
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 origenOPERATION_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á adone: 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.
Repite el comando
describe
anterior hasta que el resultado muestredone: 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 pruebaOPERATION_ID
: el ID del recurso de la operación en curso que estás comprobando (por ejemplo,operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13
)