Argomenti della guida:
Diagnostica l'infrastruttura
Questa pagina fornisce indicazioni su come risolvere i problemi e convalidare l'infrastruttura di Aggregation Service. Segui i passaggi per identificare e risolvere i problemi.
Risoluzione dei problemi di Terraform
Terraform, la piattaforma Infrastructure as Code (IaC) creata da HashiCorp, è il motore principale per il deployment di Aggregation Service nel cloud pubblico scelto. Se non hai installato Terraform, consulta la documentazione di HashiCorp su come ottenere l'interfaccia a riga di comando localmente.
Ti consigliamo inoltre di installare tfenv, se le tue esigenze richiedono di cambiare versione di Terraform.
Se non riesci a risolvere il problema relativo al servizio di aggregazione, comunicacelo inviando un problema GitHub o compilando il modulo di assistenza tecnica.
Se preferisci cambiare terraform manualmente:
rm -rf $(which terraform)
wget https://releases.hashicorp.com/terraform/1.2.3/terraform_1.2.3_linux_amd64.zip
unzip terraform_1.2.3_linux_amd64.zip
mv terraform /usr/local/bin/terraform
terraform --version
Se un errore di Terraform non è chiaro, l'output può essere visualizzato attivando
la registrazione di Terraform a livello TRACE
.
Google Cloud
Il provider Terraform per Google Cloud è sviluppato congiuntamente da HashiCorp e Google. Per ulteriori domande e consigli per la risoluzione dei problemi, contatta l'assistenza Terraform di Cloud per maggiori informazioni o visita la sezione Google del portale Discuss di Hashicorp.
Amazon Web Services
La documentazione di debug è disponibile sul sito di AWS. Ti invitiamo inoltre a consultare la sezione AWS del portale HashiCorp Discuss.
Per ulteriori domande su Terraform, visita il portale della community di HashiCorp. Per consigli sulla risoluzione dei problemi generali di Terraform, consulta la documentazione sul debug.
Fai molta attenzione quando modifichi queste directory, perché la loro rimozione farà sì che Terraform non riconosca più lo stato. Cercherà di eseguire nuovamente il provisioning di tutte le risorse e restituirà un errore se esiste una risorsa con lo stesso nome esatto. Se il problema persiste, contattaci tramite il modulo di assistenza tecnica.
Fai molta attenzione quando modifichi queste directory, perché la loro rimozione farà sì che Terraform non riconosca più lo stato. Cercherà di eseguire nuovamente il provisioning di tutte le risorse e restituirà un errore se esiste una risorsa con lo stesso nome esatto. Se il problema persiste, contattaci tramite il modulo di assistenza tecnica
Convalida la configurazione di Cloud
Verifica se l'infrastruttura del servizio di aggregazione nel cloud pubblico scelto è stata di cui è stato eseguito il deployment correttamente. A questo scopo, utilizzeremo report di debug di esempio ed eseguiremo un job in modalità di debug. Se il servizio di aggregazione è in grado di ricevere la richiesta dell'API e di rispondere, sappiamo che è attivo e funzionante. Se non ne hai già configurato uno, ti consigliamo di utilizzare Postman o cURL
per configurare le chiamate API al servizio di aggregazione. Tieni presente che le modalità di debug devono essere disattivate, impostate su false, durante le normali operazioni di aggregazione.
Oltre ai passaggi che seguono, per convalidare ulteriormente l'infrastruttura del servizio di aggregazione, esamina tutti i componenti cloud di cui viene eseguito il provisioning nel cloud pubblico.
Passaggi
Per generare report di debug di esempio e file di dominio di output, segui i passaggi pertinenti dei codelab:
- Google Cloud: segui i passaggi da 3.1.1 a 3.1.4 del Codelab di Google Cloud per il servizio di aggregazione.
- Amazon Web Services: segui i passaggi da 4.1 a 4.4 del Codelab AWS per il servizio di aggregazione
Esegui una richiesta
createJob
con questo corpo, sostituendo i segnaposto evidenziati:{ "job_request_id": "<job_request_id>", "input_data_blob_prefix": "<report_folder>/<report_name>.avro", "input_data_bucket_name": "<input_bucket_name>", "output_data_blob_prefix": "<output_folder>/<summary_report_prefix>", "output_data_bucket_name": "<output_bucket_name>", "job_parameters": { "output_domain_blob_prefix": "<output_domain_folder>/<output_domain>.avro", "output_domain_bucket_name": "<output_domain_bucket_name>", "attribution_report_to": "<reporting_origin_domain>", "report_error_threshold_percentage": "10", // example value "debug_run": "true" // optional, but should be false by default } }
Esegui una richiesta
getJob
per visualizzare la risposta. Se ricevi la seguente risposta, significa che il servizio di aggregazione è stato implementato correttamente.{ "job_status": "FINISHED", "request_received_at": <utc_timestamp>, "request_updated_at": <utc_timestamp>, "job_request_id": "<job_request_id>", "input_data_blob_prefix": "<report_folder>/<input_report_prefix>.avro", "input_data_bucket_name": "<input_bucket_name>", "output_data_blob_prefix": "<output_folder>/<summary_report_prefix>", "output_data_bucket_name": "<output_bucket_name>", "postback_url": "", "result_info": { "return_code": "<return_code_and_message>", "return_message": "Aggregation job successfully processed", "error_summary": { "error_counts": [], "error_messages": [] }, "finished_at": <utc_timestamp> }, "job_parameters": { "debug_run": "true", // optional, but should be false by default "output_domain_bucket_name": "<output_domain_bucket_name>", "output_domain_blob_prefix": "<output_domain_folder>/<output_domain>.avro", "attribution_report_to": "<reporting_origin_domain>" }, "request_processing_started_at": <utc_timestamp> }
Se non ricevi una risposta con un job_status: FINISHED
,
raccolgi ulteriori informazioni andando alla risorsa Compute Engine o EC2 del
cloud pubblico scelto. Controlla l'istanza del servizio di aggregazione, esamina i log e registra le informazioni visualizzate tra TEE container launcher initiating
e TEE container launcher exiting
da fornire al nostro team di assistenza tecnica.
Google Cloud
- Vai a Google Cloud: Compute Engine.
- Fai clic su Istanze VM e seleziona l'istanza del servizio di aggregazione.
- Fai clic su Dettagli > Log > Logging (o cerca Esplora log).
Amazon Web Services
- Vai ad Amazon Web Services: EC2 Enclave.
- Fai clic su Istanze EC2 e seleziona l'istanza del servizio di aggregazione.
- Fai clic su Azioni > Monitora e risolvi i problemi > Ottieni il log di sistema.
Controlla se trovi una corrispondenza con le notifiche di errore nelle nostre linee guida pubbliche su GitHub.
Nota:se hai appena eseguito l'upgrade della versione corrente di Aggregation Service, la procedura di provisioning completa potrebbe richiedere fino a un paio di ore prima che l'immagine dell'istanza corretta venga applicata all'istanza di servizio di calcolo finale. Contattaci se non è così.
Passaggi successivi
Se non riesci a risolvere il problema relativo al servizio di aggregazione, comunicacelo inviando un problema GitHub o compilando il modulo di assistenza tecnica.