Mendiagnosis cluster Dataproc

"Ringkasan Diagnostik Perintah Cluster Dataproc | Google Cloud"

Anda dapat menjalankan gcloud dataproc clusters diagnose untuk mengumpulkan log sistem, Spark, Hadoop, dan Dataproc, file konfigurasi cluster, dan informasi lainnya yang dapat Anda periksa atau bagikan kepada dukungan Google untuk membantu Anda memecahkan masalah cluster atau tugas Dataproc. Perintah tersebut mengupload data diagnostik dan ringkasan ke bucket staging Dataproc di Cloud Storage.

Menjalankan perintah diagnosis cluster Google Cloud CLI

Menjalankan gcloud dataproc clusters diagnose untuk membuat dan menampilkan lokasi file arsip diagnostik.

gcloud dataproc clusters diagnose CLUSTER_NAME \
    --region=REGION \
    OPTIONAL FLAGS ...

Catatan:

  • CLUSTER_NAME: Nama cluster yang akan didiagnosis.
  • REGION: Region cluster, misalnya, us-central1.
  • OPTIONAL FLAGS:

    • --job-ids: Anda dapat flag ini untuk mengumpulkan pengemudi lowongan, peristiwa Spark, YARN aplikasi, dan log output Spark Lense, selain file log default, untuk daftar ID tugas tertentu yang dipisahkan koma. Untuk tugas MapReduce, hanya log aplikasi YARN yang akan dikumpulkan. Agregasi log YARN harus diaktifkan untuk pengumpulan aplikasi YARN log.

    • --yarn-application-ids: Anda dapat flag ini untuk mengumpulkan driver lowongan, peristiwa Spark, aplikasi YARN, dan log output Spark Lense selain file log default, untuk daftar YARN tertentu yang dipisahkan koma ID aplikasi Google. Agregasi log YARN harus diaktifkan untuk pengumpulan Log aplikasi YARN.

    • --start-time dengan --end-time: Menggunakan kedua tanda untuk menentukan waktu rentang, dalam format %Y-%m-%dT%H:%M:%S.%fZ, untuk kumpulan data data diagnostik. Menentukan rentang waktu juga memungkinkan pengumpulan Log penskalaan otomatis Dataproc selama rentang waktu (secara default, Log penskalaan otomatis Dataproc tidak dikumpulkan di data diagnostik).

    • --tarball-access=GOOGLE_DATAPROC_DIAGNOSE Gunakan tanda ini untuk mengirimkan atau memberikan akses ke file tar diagnostik ke Tim dukungan Google Cloud. Selain itu, berikan informasi kepada tim dukungan Google Cloud sebagai berikut:

      • Jalur Cloud Storage file tar diagnostik, atau
      • Bucket konfigurasi cluster, UUID cluster, dan ID operasi perintah diagnostik

Jalankan skrip diagnostik dari node master cluster (jika perlu)

Perintah gcloud dataproc clusters diagnose dapat gagal atau kehabisan waktu jika sebuah cluster dalam status {i>error<i} dan tidak dapat menerima tugas diagnosis dari server Dataproc. Sebagai alternatif untuk menjalankan perintah diagnostik, Anda dapat menghubungkan ke node master cluster menggunakan SSH, mendownload skrip diagnostik, lalu menjalankan skrip tersebut secara lokal di node master.

gcloud compute ssh HOSTNAME
gcloud storage cp gs://dataproc-diagnostic-scripts/diagnostic-script.sh .
sudo bash diagnostic-script.sh

File tar arsip diagnostik disimpan di direktori lokal. Perintah output mencantumkan lokasi file tar dengan petunjuk cara mengupload file tar ke bucket Cloud Storage.

Cara membagikan data diagnostik

Untuk membagikan arsip:

  • Mendownload arsip dari Cloud Storage, lalu membagikan arsip yang didownload, atau
  • Mengubah izin di arsip agar pengguna atau project Google Cloud lainnya dapat mengakses file tersebut.

Contoh: Perintah berikut menambahkan izin baca ke arsip untuk pengguna jane@gmail.com:

gcloud storage objects update PATH_TO_ARCHIVE} --add-acl-grant=entity=user-jane@gmail.com,role=roles/storage.legacyObjectReader

Ringkasan diagnostik dan arsip konten

Perintah diagnose menghasilkan ringkasan diagnostik dan file tar arsip yang berisi file konfigurasi cluster, log, dan file serta informasi lainnya. Arsip file tar ditulis ke Dataproc bucket staging di Cloud Storage.

Ringkasan diagnostik: Skrip diagnostik menganalisis data yang dikumpulkan, dan membuat summary.txt di root arsip diagnostik. Ringkasan tersebut memberikan ringkasan status cluster, termasuk YARN, HDFS, disk, dan jaringan status, dan menyertakan peringatan untuk memperingatkan Anda tentang potensi masalah.

Arsip file tar: Bagian berikut mencantumkan file dan informasi yang ada dalam file {i>.tar<i} arsip diagnostik.

Informasi Daemon dan layanan

Perintah dijalankan Lokasi di arsip
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

Informasi JVM

Perintah dijalankan Lokasi di arsip
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

Informasi sistem Linux

Perintah dijalankan Lokasi di arsip
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 log

Item yang disertakan Lokasi di arsip
Semua log di /var/log dengan awalan berikut dalam nama filenya:
cloud-sql-proxy
dataproc
druid
gcdp
google
hadoop
hdfs
hive
knox
presto
spark
syslog
yarn
zookeeper
File ditempatkan dalam folder arsip logs, dan tetap menggunakan nama file aslinya.
Log startup node Dataproc untuk setiap node (master dan worker) di cluster Anda. File ditempatkan di folder arsip node_startup, yang berisi subfolder terpisah untuk setiap mesin di cluster.
Log gateway komponen dari journalctl -u google-dataproc-component-gateway /logs/google-dataproc-component-gateway.log

File konfigurasi

Item yang disertakan Lokasi di arsip
Metadata VM /conf/dataproc/metadata
Variabel lingkungan di /etc/environment /conf/dataproc/environment
Properti Dataproc /conf/dataproc/dataproc.properties
Semua file di /etc/google-dataproc/ /conf/dataproc/
Semua file di /etc/hadoop/conf/ /conf/hadoop/
Semua file di /etc/hive/conf/ /conf/hive/
Semua file di /etc/hive-hcatalog/conf/ /conf/hive-hcatalog/
Semua file di /etc/knox/conf/ /conf/knox/
Semua file di /etc/pig/conf/ /conf/pig/
Semua file di /etc/presto/conf/ /conf/presto/
Semua file di /etc/spark/conf/ /conf/spark/
Semua file di /etc/tez/conf/ /conf/tez/
Semua file di /etc/zookeeper/conf/ /conf/zookeeper/