Cloud Profiler

Cloud Profiler terus mengumpulkan dan melaporkan informasi penggunaan CPU dan alokasi memori aplikasi.

Persyaratan:

  • Profiler hanya mendukung jenis tugas Hadoop dan Spark Managed Service for Apache Spark (Spark, PySpark, SparkSql, dan SparkR).

  • Tugas harus berjalan lebih dari 3 menit agar Profiler dapat mengumpulkan dan mengupload data ke project Anda.

Managed Service for Apache Spark mengenali cloud.profiler.enable dan properti cloud.profiler.* lainnya (lihat Opsi profiler), lalu menambahkan opsi JVM profiler yang relevan ke konfigurasi berikut:

  • Spark: spark.driver.extraJavaOptions dan spark.executor.extraJavaOptions
  • MapReduce: Properti mapreduce.task.profile dan mapreduce.task.profile.* lainnya

Mengaktifkan pembuatan profil

Selesaikan langkah-langkah berikut untuk mengaktifkan dan menggunakan Profiler pada tugas Spark dan Hadoop Managed Service for Apache Spark.

  1. Aktifkan Profiler.

  2. Buat cluster Managed Service for Apache Spark dengan cakupan akun layanan yang ditetapkan ke monitoring untuk memungkinkan cluster berkomunikasi dengan layanan profiler.

  3. Jika Anda menggunakan akun layanan VM kustom, berikan peran Agen Cloud Profiler ke akun layanan VM kustom. Peran ini berisi izin layanan profiler yang diperlukan.

gcloud

gcloud dataproc clusters create cluster-name \
    --scopes=cloud-platform \
    --region=region \
    other args ...

Mengirimkan tugas Managed Service for Apache Spark dengan opsi Profiler

  1. Kirimkan tugas Spark atau Hadoop Managed Service for Apache Spark dengan satu atau beberapa opsi Profiler berikut:
    Opsi Deskripsi Nilai Wajib/Opsional Default Catatan
    cloud.profiler.enable Mengaktifkan pembuatan profil tugas true atau false Wajib false
    cloud.profiler.name Nama yang digunakan untuk membuat profil di Profiler Service profile-name Opsional UUID tugas Managed Service for Apache Spark
    cloud.profiler.service.version String yang disediakan pengguna untuk mengidentifikasi dan membedakan hasil profiler. Profiler Service Version Opsional UUID tugas Managed Service for Apache Spark
    mapreduce.task.profile.maps Rentang numerik tugas peta ke profil (contoh: untuk maksimal 100, tentukan "0-100") number range Opsional 0-10000 Hanya berlaku untuk tugas mapreduce Hadoop
    mapreduce.task.profile.reduces Rentang numerik tugas reducer yang akan diukur profilnya (contoh: untuk hingga 100, tentukan "0-100") number range Opsional 0-10000 Hanya berlaku untuk tugas mapreduce Hadoop

Contoh PySpark

Google Cloud CLI

Contoh pengiriman tugas PySpark dengan pembuatan profil:

gcloud dataproc jobs submit pyspark python-job-file \
    --cluster=cluster-name \
    --region=region \
    --properties=cloud.profiler.enable=true,cloud.profiler.name=profiler_name,cloud.profiler.service.version=version \
    --  job args

Dua profil akan dibuat:

  1. profiler_name-driver untuk memprofilkan tugas driver Spark
  2. profiler_name-executor untuk memprofilkan tugas eksekutor spark

Misalnya, jika profiler_name adalah "spark_word_count_job", profil spark_word_count_job-driver dan spark_word_count_job-executor akan dibuat.

Contoh Hadoop

gcloud CLI

Pengiriman tugas Hadoop (mapreduce teragen) dengan contoh pembuatan profil:

gcloud dataproc jobs submit hadoop \
    --cluster=cluster-name \
    --region=region \
    --jar=jar-file \
    --properties=cloud.profiler.enable=true,cloud.profiler.name=profiler_name,cloud.profiler.service.version=version \
    --  teragen 100000 gs://bucket-name

Lihat profil

Lihat profil dari Profiler di konsol Google Cloud .

Langkah berikutnya