Puoi eseguire il comando gcloud dataproc clusters diagnose
per raccogliere log di sistema, Spark, Hadoop e Dataproc, file di configurazione dei cluster e altre informazioni che puoi esaminare o condividere con l'assistenza Google per aiutarti a risolvere i problemi relativi a un cluster o job Dataproc.
Il comando carica i dati diagnostici e il riepilogo nel bucket gestione temporanea di Dataproc in Cloud Storage.
Esegui il comando di diagnostica del cluster di Google Cloud CLI
Esegui il comando gcloud dataproc clusters diagnose
per creare e restituire il percorso del file di archivio diagnostico.
gcloud dataproc clusters diagnose CLUSTER_NAME \ --region=REGION \ OPTIONAL FLAGS ...
Note:
- CLUSTER_NAME: il nome del cluster di cui eseguire la diagnostica.
- REGION: la regione del cluster, ad esempio
us-central1
. OPTIONAL FLAGS:
--job-ids
: puoi utilizzare questo flag per raccogliere i log di output del driver di job, dell'evento Spark, dell'applicazione YARN e di Spark Lense, oltre ai file di log predefiniti, per un elenco specificato di ID job separati da virgole. Per i job MapReduce, vengono raccolti solo i log delle applicazioni YARN. L'aggregazione dei log YARN deve essere abilitata per la raccolta di log delle applicazioni YARN.--yarn-application-ids
: puoi utilizzare questo flag per raccogliere i log di output del driver del job, dell'evento Spark, dell'applicazione YARN e di Spark Lense oltre ai file di log predefiniti, per un elenco specificato di ID applicazione YARN separati da virgole. L'aggregazione dei log YARN deve essere abilitata per la raccolta di log dell'applicazione YARN.--start-time
con--end-time
: utilizza entrambi i flag per specificare un intervallo di tempo, in formato%Y-%m-%dT%H:%M:%S.%fZ
, per la raccolta dei dati diagnostici. Se specifichi un intervallo di tempo, consenti anche la raccolta dei log di scalabilità automatica di Dataproc durante l'intervallo di tempo (per impostazione predefinita, i log di scalabilità automatica di Dataproc non vengono raccolti nei dati diagnostici).--tarball-access
=GOOGLE_DATAPROC_DIAGNOSE
Utilizza questo flag per inviare il file tar di diagnostica o accedere al team di assistenza Google Cloud. Fornisci inoltre informazioni al team di assistenza di Google Cloud come segue:- Percorso Cloud Storage del file tar diagnostico, oppure
- Bucket di configurazione cluster, UUID del cluster e ID operazione del comando di diagnostica
Esegui lo script di diagnostica dal nodo master del cluster (se necessario)
Il comando gcloud dataproc clusters diagnose
può avere esito negativo o timeout se un cluster è in stato di errore e non può accettare attività di diagnostica dal server Dataproc. In alternativa all'esecuzione del comando di diagnostica, puoi connetterti al nodo master del cluster utilizzando SSH, scaricare lo script di diagnostica ed eseguire lo script localmente sul nodo master.
gcloud compute ssh HOSTNAME
gsutil cp gs://dataproc-diagnostic-scripts/diagnostic-script.sh .
sudo bash diagnostic-script.sh
Il file tar dell'archivio diagnostico viene salvato in una directory locale. L'output del comando elenca la posizione del file tar con le istruzioni su come caricare il file tar in un bucket Cloud Storage.
Come condividere i dati diagnostici
Per condividere l'archivio:
- Scaricare l'archivio da Cloud Storage e quindi condividere l'archivio scaricato oppure
- Modifica le autorizzazioni nell'archivio per consentire ad altri utenti o progetti Google Cloud di accedere al file.
Esempio: il seguente comando aggiunge autorizzazioni di lettura all'archivio in test-project
:
gsutil -m acl ch -g test-project:R PATH_TO_ARCHIVE}
Riepilogo diagnostico e contenuti dell'archivio
Il comando diagnose
restituisce un riepilogo della diagnostica e un file tar di archivio contenente
file di configurazione del cluster, log, altri file e informazioni. Il file tar di archivio viene scritto nel bucket gestione temporanea Dataproc in Cloud Storage.
Riepilogo diagnostica: lo script di diagnostica analizza i dati raccolti e genera un valore summary.txt
nella directory principale dell'archivio diagnostico. Il riepilogo fornisce una panoramica dello stato del cluster, inclusi YARN, HDFS, disco e stato di rete, e include avvisi che segnalano potenziali problemi.
File tar di archivio: nelle sezioni seguenti sono elencati i file e le informazioni contenuti nel file tar dell'archivio di diagnostica.
Informazioni su daemon e servizi
Comando eseguito | Posizione in archivio |
---|---|
yarn node -list -all |
/system/yarn-nodes.log |
hdfs dfsadmin -report -live -decommissioning |
/system/hdfs-nodes.log |
hdfs dfs -du -h |
/system/hdfs-du.log |
service --status-all |
/system/service.log |
systemctl --type service |
/system/systemd-services.log |
curl "http://${HOSTNAME}:8088/jmx" |
/metrics/resource_manager_jmx |
curl "http://${HOSTNAME}:8088/ws/v1/cluster/apps" |
/metrics/yarn_app_info |
curl "http://${HOSTNAME}:8088/ws/v1/cluster/nodes" |
/metrics/yarn_node_info |
curl "http://${HOSTNAME}:9870/jmx" |
/metrics/namenode_jmx |
Informazioni su JVM
Comando eseguito | Posizione in archivio |
---|---|
jstack -l "${DATAPROC_AGENT_PID}" |
jstack/agent_${DATAPROC_AGENT_PID}.jstack |
jstack -l "${PRESTO_PID}" |
jstack/agent_${PRESTO_PID}.jstack |
jstack -l "${JOB_DRIVER_PID}" |
jstack/driver_${JOB_DRIVER_PID}.jstack |
jinfo "${DATAPROC_AGENT_PID}" |
jinfo/agent_${DATAPROC_AGENT_PID}.jstack |
jinfo "${PRESTO_PID}" |
jinfo/agent_${PRESTO_PID}.jstack |
jinfo "${JOB_DRIVER_PID}" |
jinfo/agent_${JOB_DRIVER_PID}.jstack |
Informazioni sul sistema Linux
Comando eseguito | Posizione in archivio |
---|---|
df -h |
/system/df.log |
ps aux |
/system/ps.log |
free -m |
/system/free.log |
netstat -anp |
/system/netstat.log |
sysctl -a |
/system/sysctl.log |
uptime |
/system/uptime.log |
cat /proc/sys/fs/file-nr |
/system/fs-file-nr.log |
ping -c 1 |
/system/cluster-ping.log |
File di log
Articoli inclusi | Posizione in archivio |
---|---|
Tutti i log in /var/log con i seguenti prefissi nel nome file:cloud-sql-proxy dataproc druid gcdp google hadoop hdfs hive knox presto spark syslog yarn zookeeper |
I file vengono inseriti nella cartella di archiviazione logs e conservano i nomi file originali. |
Log di avvio dei nodi Dataproc per ciascun nodo (master e worker) nel cluster. | I file vengono inseriti nella cartella di archiviazione node_startup , che contiene sottocartelle separate per ogni macchina nel cluster. |
Log del gateway dei componenti da journalctl -u google-dataproc-component-gateway |
/logs/google-dataproc-component-gateway.log |
File di configurazione
Articoli inclusi | Posizione in archivio |
---|---|
Metadati VM | /conf/dataproc/metadata |
Variabili di ambiente in /etc/environment |
/conf/dataproc/environment |
Proprietà Dataproc | /conf/dataproc/dataproc.properties |
Tutti i file in /etc/google-dataproc/ |
/conf/dataproc/ |
Tutti i file in /etc/hadoop/conf/ |
/conf/hadoop/ |
Tutti i file in /etc/hive/conf/ |
/conf/hive/ |
Tutti i file in /etc/hive-hcatalog/conf/ |
/conf/hive-hcatalog/ |
Tutti i file in /etc/knox/conf/ |
/conf/knox/ |
Tutti i file in /etc/pig/conf/ |
/conf/pig/ |
Tutti i file in /etc/presto/conf/ |
/conf/presto/ |
Tutti i file in /etc/spark/conf/ |
/conf/spark/ |
Tutti i file in /etc/tez/conf/ |
/conf/tez/ |
Tutti i file in /etc/zookeeper/conf/ |
/conf/zookeeper/ |