Connectivity Tests supporta il controllo periodico dello stato
un'operazione di test in esecuzione, ad esempio create
, update
o delete
. Puoi
ancora esaminare i risultati finali del test al termine del test.
Console
La console Google Cloud utilizza un'icona a forma di rotellina per mostrare un test in esecuzione. Dietro le quinte, Connectivity Tests esegue sondaggi continui per lo stato dell'operazione di test. Al termine del test, puoi controllare i risultati finali nel riquadro Dettagli risultati.
Per saperne di più sulle pagine della console Google Cloud, consulta Crea ed esegui Connectivity Tests.
gcloud
Per utilizzare gcloud CLI al fine di verificare un'operazione di test in esecuzione,
specificare l'opzione --async
. Se non specifichi questa opzione, vedrai solo
i risultati finali del test.
Ad esempio, la creazione del seguente test utilizzando l'opzione
--async
restituisce immediatamente un ID risorsa operazione nella riga di comando. Puoi quindi utilizzare questo ID in un comandodescribe
successivo per controllare lo stato del test mentre è ancora in esecuzione.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
Sostituisci i seguenti valori:
NAME
: il nome dei Connectivity TestsDESTINATION_PROJECT
: l'ID progetto del endpoint di destinazioneSOURCE_IP_ADDRESS
: l'indirizzo IP di origine interno o esterno da cui stai eseguendo il test. Un indirizzo IPv6 è consentito solo se la destinazione del test è un VIP del bilanciatore del carico globaleDESTINATION_IP_ADDRESS
: il valore interno o l'indirizzo IP di origine esterna su cui stai eseguendo il test; un indirizzo IPv6 consentito solo quando la destinazione del test è un VIP del bilanciatore del carico globalePROTOCOL
: un protocollo supportato per i test di connettivitàSOURCE_PROJECT
: l'ID progetto dell'endpoint di origine
L'output è il seguente:
Create request issued for: [gcloud-example] Check operation [projects/reachability-e2e-test/locations/global/operations/operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13] for status
Utilizza l'ID risorsa dell'operazione con il comando
describe
per controllare lo stato del test:gcloud network-management operations describe \ projects/SOURCE_PROJECT/locations/global/operations/OPERATION_RESOURCE_ID
Sostituisci i seguenti valori:
SOURCE_PROJECT
: l'ID progetto dell'endpoint di origineOPERATION_RESOURCE_ID
: l'ID risorsa dell'operazione in corso che stai controllando (ad esempio,operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13
)
Il seguente output di esempio per il comando precedente mostra
done: false
. Al termine del test, questo campo diventadone: 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.
Ripeti il comando
describe
precedente finché l'output non mostradone: true
.
API
L'API Network Management è sempre in modalità async
. Quando emetti un comando all'API, ricevi immediatamente un ID operazione. Puoi
utilizzare questo ID per controllare periodicamente lo stato del test.
Python
L'API Network Management è sempre in modalità async
. Quando utilizzi il
API Python per inviare una richiesta, riceverai immediatamente un ID operazione.
Puoi utilizzare questo ID per controllare periodicamente lo stato del test.
Vedi l'esempio che segue:
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))
Sostituisci i seguenti valori:
PROJECT_ID
: l'ID del progetto in cui hai creato il testOPERATION_ID
: l'ID risorsa dell'operazione in corso che stai controllando (ad esempio,operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13
)