Risolvere i problemi di connettività di batch e sessioni

Questa pagina fornisce indicazioni per la diagnosi e la risoluzione dei problemi comuni di connettività di rete per i carichi di lavoro batch e le sessioni interattive di Serverless per Apache Spark. Questi problemi possono impedire ai tuoi workload di accedere alle origini dati richieste, ai servizi esterni o alle API Google Cloud .

Sintomi e messaggi di errore comuni

Quando Serverless per Apache Spark rileva problemi di connettività, potresti riscontrare errori come:

  • Unable to connect to service_name.googleapis.com
  • Could not reach required Google APIs
  • Connection refused
  • Host unreachable
  • Operation timed out
  • Permission denied (spesso correlato alla rete se blocca le chiamate API)

Potresti anche riscontrare errori relativi all'accesso ai dati in Cloud Storage, BigQuery o altri database.

Cause comuni e suggerimenti per la risoluzione dei problemi

Questa sezione elenca le cause comuni dei problemi di connettività di Serverless per Apache Spark e fornisce suggerimenti per la risoluzione dei problemi per aiutarti a risolverli.

Configurazione di rete

Le configurazioni errate della rete sono una causa frequente di errori di connettività. I workload e le sessioni di Serverless per Apache Spark vengono eseguiti su VM con indirizzi IP interni, con l'accesso privato Google (PGA) abilitato automaticamente nella subnet del workload o della sessione per accedere a servizi e API Google. Per maggiori informazioni, vedi Configurazione di rete di Serverless per Apache Spark.

  • Opzioni di accesso:

    • Private Service Connect (PSC): puoi creare endpoint privati all'interno della tua rete VPC per accedere a specifiche API di Google.

      • Nella console Google Cloud , vai a Private Service Connect > Endpoint. Connetti gli endpoint o conferma che siano connessi per tutte le API richieste, ad esempio storage.googleapis.com e dataproc.googleapis.com, e che si connettano al batch workload o alla rete Virtual Private Cloud della sessione.
    • Cloud NAT: se il tuo workload deve accedere a internet pubblico, puoi configurare Cloud NAT per il tuo workload batch o la subnet della sessione:

      • Nella console Google Cloud , vai alla pagina Cloud NAT. Configura un gateway o verifica che un gateway sia configurato per la rete VPC, la regione e la subnet del workload batch o della sessione. Inoltre, assicurati che le regole firewall consentano l'uscita a 0.0.0.0/0. Per saperne di più, vedi Configurare Cloud NAT.
  • Regole firewall:

    • Le regole firewall in uscita nella rete VPC (o nel progetto host della rete VPC condivisa, se applicabile) non devono bloccare il traffico in uscita verso le destinazioni richieste.
      • Se applicabile, le regole di uscita devono consentire il traffico verso servizi esterni, come API e database pubblici al di fuori di Google Cloud. Se il tuo batch o la tua sessione ha bisogno dell'accesso a internet, puoi utilizzare Cloud NAT per fornire l'uscita della subnet.
    • Sebbene non sia una causa comune di problemi di connettività, regole di ingresso eccessivamente restrittive potrebbero bloccare inavvertitamente il traffico di ritorno necessario o le comunicazioni interne.
  • Risoluzione DNS:

    • La risoluzione DNS deve essere configurata all'interno della rete VPC. I carichi di lavoro e le sessioni devono essere in grado di risolvere i nomi host per le API di Google, come storage.googleapis.com obigquery.googleapis.com e i servizi esterni.
    • I server DNS personalizzati e le zone private di Cloud DNS devono inoltrare o risolvere le query per i domini Google.
    • Se utilizzi Private Service Connect per l'accesso privato alle API di Google, i record DNS per i servizi Google devono essere risolti in indirizzi IP privati all'interno della tua rete VPC utilizzando l'endpoint PSC.

Suggerimenti per la risoluzione dei problemi:

  • Identifica la configurazione di rete e subnet:

    • Dai dettagli del batch o della sessione di Serverless per Apache Spark, esamina networkUri e subnetUri.
    • Nella console Google Cloud , esamina le impostazioni della rete VPC e della subnet.
  • Testa la connettività da una VM proxy:

    • Avvia una VM Compute Engine di test nella subnet batch o sessione utilizzando ilaccount di serviziot batch o sessione.
    • Dalla VM di test, esegui i seguenti test di connettività:
      • nslookup storage.googleapis.com per verificare la risoluzione DNS. Cerca altri domini API Google, come bigquery.googleapis.com e dataproc.googleapis.com. Con l'accesso privato Google, che viene abilitato automaticamente nelle subnet Serverless per Apache Spark o Private Service Connect, i domini devono essere risolti in indirizzi IP privati.
      • curl -v https://storage.googleapis.com per verificare la connettività HTTPS alle API di Google. Prova anche a connetterti ad altri servizi Google.
      • ping 8.8.8.8 per testare la connettività a internet, se richiesta dal batch o dalla sessione. Prova curl -v https://example.com se è previsto Cloud NAT.
    • Esegui i Google Cloud test di connettività di Network Intelligence Center per diagnosticare i percorsi di rete dalla tua subnet agli endpoint pertinenti, come le API di Google e gli indirizzi IP esterni.
  • Controlla Cloud Logging per gli errori di rete:

    • Esamina la registrazione per il tuo workload o la tua sessione Serverless per Apache Spark. Cerca messaggi ERROR o WARNING relativi a timeout di rete, rifiuti di connessione o errori di chiamata API. Filtra per jsonPayload.component="driver" o jsonPayload.component="executor" per problemi di rete specifici di Spark.

Autorizzazioni IAM

Autorizzazioni IAM insufficienti possono impedire ai workload o alle sessioni di accedere alle risorse, causando errori di rete se le chiamate API vengono negate.

Il account di servizio utilizzato dal batch o dalla sessione deve disporre dei ruoli richiesti:

  • Ruolo Dataproc Worker (roles/dataproc.worker).
  • Ruoli di accesso ai dati, ad esempio roles/storage.objectViewer o roles/bigquery.dataViewer).
  • Logging: (roles/logging.logWriter).

Suggerimenti per la risoluzione dei problemi:

Configurazione del servizio esterno

Se il tuo workload si connette a database o servizi esterni a Google Cloud, verifica la loro configurazione:

  • Verifica che il firewall del servizio esterno o il gruppo di sicurezza consenta le connessioni in entrata dagli intervalli IP della tua rete VPC: se applicabile, controlla gli indirizzi IP interni utilizzando il peering VPC, Cloud VPN o Cloud Interconnect oppure gli indirizzi IP Cloud NAT.
  • Controlla le credenziali del database o le stringhe di connettività. Controlla i dettagli della connessione, i nomi utente e le password.

Passaggi successivi