Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan penskalaan otomatis vertikal untuk Amazon EMR di EKS saat Anda ingin penyetelan otomatis memori dan sumber daya CPU untuk beradaptasi dengan beban kerja aplikasi Amazon EMR Spark Anda. Untuk informasi selengkapnya, lihat Menggunakan penskalaan otomatis vertikal dengan pekerjaan Amazon EMR Spark.
Mengirimkan pekerjaan Spark dengan autoscaling vertikal
Saat Anda mengirimkan pekerjaan melalui StartJobRunAPI, tambahkan dua konfigurasi berikut ke driver untuk pekerjaan Spark Anda untuk mengaktifkan penskalaan otomatis vertikal:
"spark.kubernetes.driver.annotation.emr-containers.amazonaws.com/dynamic.sizing":"true",
"spark.kubernetes.driver.annotation.emr-containers.amazonaws.com/dynamic.sizing.signature":"YOUR_JOB_SIGNATURE
"
Pada kode di atas, baris pertama memungkinkan kemampuan autoscaling vertikal. Baris berikutnya adalah konfigurasi tanda tangan wajib yang memungkinkan Anda memilih tanda tangan untuk pekerjaan Anda.
Untuk informasi selengkapnya tentang konfigurasi ini dan nilai parameter yang dapat diterima, lihatMengkonfigurasi penskalaan otomatis vertikal untuk Amazon EMR di EKS. Secara default, pekerjaan Anda dikirimkan dalam mode Monitoring-Only Off dari penskalaan otomatis vertikal. Status pemantauan ini memungkinkan Anda menghitung dan melihat rekomendasi sumber daya tanpa melakukan penskalaan otomatis. Untuk informasi selengkapnya, lihat Mode penskalaan otomatis vertikal.
Contoh berikut menunjukkan cara menyelesaikan start-job-run
perintah sampel dengan autoscaling vertikal:
aws emr-containers start-job-run \
--virtual-cluster-id $VIRTUAL_CLUSTER_ID
\
--name $JOB_NAME
\
--execution-role-arn $EMR_ROLE_ARN
\
--release-label emr-6.10.0-latest
\
--job-driver '{
"sparkSubmitJobDriver": {
"entryPoint": "local:///usr/lib/spark/examples/src/main/python/pi.py"
}
}' \
--configuration-overrides '{
"applicationConfiguration": [{
"classification": "spark-defaults",
"properties": {
"spark.kubernetes.driver.annotation.emr-containers.amazonaws.com/dynamic.sizing": "true",
"spark.kubernetes.driver.annotation.emr-containers.amazonaws.com/dynamic.sizing.signature": "test-signature
"
}
}]
}'
Memverifikasi fungsionalitas penskalaan otomatis vertikal
Untuk memverifikasi bahwa penskalaan otomatis vertikal berfungsi dengan benar untuk pekerjaan yang dikirimkan, gunakan kubectl untuk mendapatkan sumber daya verticalpodautoscaler
kustom dan melihat rekomendasi penskalaan Anda. Misalnya, permintaan perintah berikut untuk rekomendasi pada pekerjaan contoh dari Mengirimkan pekerjaan Spark dengan autoscaling vertikal bagian:
kubectl get verticalpodautoscalers --all-namespaces \ -l=emr-containers.amazonaws.com/dynamic.sizing.signature=
test-signature
Output dari kueri ini harus menyerupai yang berikut:
NAME MODE CPU MEM PROVIDED AGE
ds-jceyefkxnhrvdzw6djum3naf2abm6o63a6dvjkkedqtkhlrf25eq-vpa Off 3304504865 True 87m
Jika output Anda tidak terlihat serupa atau berisi kode kesalahan, lihat langkah-langkah Memecahkan masalah Amazon EMR pada penskalaan otomatis vertikal EKS untuk membantu menyelesaikan masalah.