Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pantau metrik Spark dengan Amazon Managed Service untuk Prometheus
Dengan Amazon EMR merilis 7.1.0 dan yang lebih tinggi, Anda dapat mengintegrasikan Tanpa EMR Server dengan Amazon Managed Service untuk Prometheus guna mengumpulkan metrik Apache Spark untuk pekerjaan dan aplikasi Tanpa Server. EMR Integrasi ini tersedia saat Anda mengirimkan pekerjaan atau membuat aplikasi menggunakan AWS konsol, EMR Tanpa ServerAPI, atau. AWS CLI
Prasyarat
Sebelum Anda dapat mengirimkan metrik Spark Anda ke Amazon Managed Service untuk Prometheus, Anda harus menyelesaikan prasyarat berikut.
-
Buat Layanan Terkelola Amazon untuk ruang kerja Prometheus. Ruang kerja ini berfungsi sebagai titik akhir konsumsi. Buat catatan yang URL ditampilkan untuk Endpoint - tulis URL jarak jauh. Anda harus menentukan URL kapan Anda membuat aplikasi EMR Tanpa Server Anda.
-
Untuk memberikan akses pekerjaan Anda ke Amazon Managed Service untuk Prometheus untuk tujuan pemantauan, tambahkan kebijakan berikut ke peran pelaksanaan pekerjaan Anda.
{ "Sid": "AccessToPrometheus", "Effect": "Allow", "Action": ["aps:RemoteWrite"], "Resource": "arn:aws:aps:
<AWS_REGION>
:<AWS_ACCOUNT_ID>
:workspace/<WORKSPACE_ID>
" }
Pengaturan
Untuk menggunakan AWS konsol untuk membuat aplikasi yang terintegrasi dengan Amazon Managed Service untuk Prometheus
-
Lihat Memulai Amazon EMR Tanpa Server untuk membuat aplikasi.
-
Saat Anda membuat aplikasi, pilih Gunakan pengaturan khusus, lalu konfigurasikan aplikasi Anda dengan menentukan informasi ke dalam bidang yang ingin Anda konfigurasikan.
-
Di bawah Log dan metrik aplikasi, pilih Mengirimkan metrik engine ke Amazon Managed Service for Prometheus, lalu tentukan penulisan jarak jauh Anda. URL
-
Tentukan pengaturan konfigurasi lain yang Anda inginkan, lalu pilih Buat dan mulai aplikasi.
Gunakan AWS CLI atau Tanpa EMR Server API
Anda juga dapat menggunakan AWS CLI atau EMR Tanpa Server API untuk mengintegrasikan EMR aplikasi Tanpa Server Anda dengan Amazon Managed Service untuk Prometheus saat menjalankan atau perintah. create-application
start-job-run
Termasuk prometheusMonitoringConfiguration
dalam perintah Anda menunjukkan bahwa EMR Tanpa Server harus menjalankan pekerjaan Spark dengan agen yang mengumpulkan metrik Spark dan menuliskannya ke titik akhir Anda untuk remoteWriteUrl
Amazon Managed Service for Prometheus. Anda kemudian dapat menggunakan metrik Spark di Amazon Managed Service for Prometheus untuk visualisasi, peringatan, dan analisis.
Properti konfigurasi lanjutan
EMRTanpa server menggunakan komponen dalam nama Spark PrometheusServlet
untuk mengumpulkan metrik Spark dan menerjemahkan data kinerja ke dalam data yang kompatibel dengan Amazon Managed Service for Prometheus. Secara default, EMR Tanpa Server menetapkan nilai default di Spark dan mem-parsing metrik driver dan eksekutor saat Anda mengirimkan pekerjaan menggunakan. PrometheusMonitoringConfiguration
Tabel berikut menjelaskan semua properti yang dapat Anda konfigurasikan saat mengirimkan pekerjaan Spark yang mengirimkan metrik ke Amazon Managed Service for Prometheus.
Properti percikan | Nilai default | Deskripsi |
---|---|---|
spark.metrics.conf.*.sink.prometheusServlet.class |
org.apache.spark.metrics.sink. PrometheusServlet |
Kelas yang digunakan Spark untuk mengirim metrik ke Amazon Managed Service untuk Prometheus. Untuk mengganti perilaku default, tentukan kelas kustom Anda sendiri. |
spark.metrics.conf.*.source.jvm.class |
org.apache.spark.metrics.source. JvmSource |
Kelas Spark digunakan untuk mengumpulkan dan mengirim metrik penting dari mesin virtual Java yang mendasarinya. Untuk berhenti mengumpulkan JVM metrik, nonaktifkan properti ini dengan menyetelnya ke string kosong, seperti |
spark.metrics.conf.driver.sink.prometheusServlet.path |
/metrik/prometheus |
Perbedaan URL yang digunakan Amazon Managed Service untuk Prometheus untuk mengumpulkan metrik dari driver. Untuk mengganti perilaku default, tentukan jalur Anda sendiri. Untuk berhenti mengumpulkan metrik driver, nonaktifkan properti ini dengan menyetelnya ke string kosong, seperti |
spark.metrics.conf.executor.sink.prometheusServlet.path |
/metrics/executor/prometheus |
Perbedaan URL yang digunakan Amazon Managed Service untuk Prometheus untuk mengumpulkan metrik dari pelaksana. Untuk mengganti perilaku default, tentukan jalur Anda sendiri. Untuk berhenti mengumpulkan metrik pelaksana, nonaktifkan properti ini dengan menyetelnya ke string kosong, seperti. |
Untuk informasi selengkapnya tentang metrik Spark, lihat metrik Apache
Pertimbangan dan batasan
Saat menggunakan Layanan Terkelola Amazon untuk Prometheus untuk mengumpulkan metrik EMR dari Tanpa Server, pertimbangkan pertimbangan dan batasan berikut.
-
Dukungan untuk menggunakan Amazon Managed Service untuk Prometheus EMR dengan Serverless hanya tersedia di tempat Wilayah AWS Amazon Managed Service untuk Prometheus umumnya tersedia.
-
Menjalankan agen untuk mengumpulkan metrik Spark di Amazon Managed Service untuk Prometheus membutuhkan lebih banyak sumber daya dari pekerja. Jika Anda memilih ukuran pekerja yang lebih kecil, seperti satu CPU pekerja v, waktu kerja Anda mungkin meningkat.
-
Support untuk menggunakan Amazon Managed Service untuk Prometheus EMR dengan Serverless hanya tersedia untuk Amazon rilis 7.1.0 dan yang lebih tinggi. EMR
-
Layanan Terkelola Amazon untuk Prometheus harus diterapkan di akun yang sama tempat Anda EMR menjalankan Tanpa Server untuk mengumpulkan metrik.