Mengelola pekerjaan berjalan dengan AWS CLI - Amazon EMR

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengelola pekerjaan berjalan dengan AWS CLI

Topik ini mencakup cara mengelola pekerjaan berjalan dengan AWS Command Line Interface (AWS CLI). Ini masuk ke detail mengenai properti, seperti parameter keamanan, driver, dan berbagai pengaturan penggantian. Ini juga mencakup subtopik yang mencakup berbagai cara untuk mengonfigurasi logging.

Pilihan untuk mengonfigurasi tugas berjalan

Gunakan opsi berikut untuk mengonfigurasi parameter tugas berjalan:

  • --execution-role-arn: Anda harus memberikan IAM peran yang digunakan untuk menjalankan pekerjaan. Untuk informasi selengkapnya, lihat Menggunakan peran eksekusi tugas dengan Amazon EMR di EKS.

  • --release-label: Anda dapat menerapkan Amazon EKS dengan EMR Amazon EMR versi 5.32.0 dan 6.2.0 dan yang lebih baru. EMRAmazon aktif EKS tidak didukung di versi EMR rilis Amazon sebelumnya. Untuk informasi selengkapnya, lihat Amazon EMR pada EKS rilis.

  • --job-driver: Driver tugas digunakan untuk memberikan input pada tugas utama. Ini adalah bidang jenis serikat di mana Anda hanya dapat meloloskan salah satu nilai untuk jenis tugas yang ingin Anda jalankan. Jenis tugas yang didukung meliputi:

    • Tugas Spark submit - Digunakan untuk menjalankan perintah melalui Spark submit. Anda dapat menggunakan jenis pekerjaan ini untuk menjalankan Scala,, SparkR PySpark, Spark, dan pekerjaan lain yang SQL didukung melalui Spark Submit. Tugas ini memiliki parameter berikut:

      • Entrypoint - Ini adalah referensi HCFS (sistem file yang kompatibel dengan Hadoop) ke file jar/py utama yang ingin Anda jalankan.

      • EntryPointArguments - Ini adalah array argumen yang ingin Anda lewatkan ke file jar/py utama Anda. Anda harus menangani membaca parameter ini menggunakan kode entrypoint Anda. Setiap argumen dalam array harus dipisahkan dengan koma. EntryPointArguments tidak dapat berisi tanda kurung atau tanda kurung, seperti (), {}, atau [].

      • SparkSubmitParameters - Ini adalah parameter percikan tambahan yang ingin Anda kirim ke pekerjaan. Gunakan parameter ini untuk menimpa properti default Spark seperti memori driver atau jumlah pelaksana seperti —conf atau —class. Untuk informasi tambahan, lihat Peluncuran Aplikasi dengan spark-submit.

    • Spark SQL jobs - Digunakan untuk menjalankan file SQL query melalui SparkSQL. Anda dapat menggunakan jenis pekerjaan ini untuk menjalankan SQL pekerjaan Spark. Tugas ini memiliki parameter berikut:

      • Entrypoint - Ini adalah HCFS (sistem file kompatibel Hadoop) referensi ke file SQL query Anda ingin menjalankan.

        Untuk daftar parameter Spark tambahan yang dapat Anda gunakan untuk SQL pekerjaan Spark, lihat. Menjalankan SQL skrip Spark melalui StartJobRun API

  • --configuration-overrides: Anda dapat menimpa konfigurasi default untuk aplikasi dengan menyediakan objek konfigurasi. Anda dapat menggunakan sintaks singkatan untuk menyediakan konfigurasi atau Anda dapat mereferensikan objek konfigurasi dalam file. JSON Objek konfigurasi terdiri dari klasifikasi, properti, dan konfigurasi bersarang opsional. Properti terdiri dari pengaturan yang ingin Anda timpa dalam file tersebut. Anda dapat menentukan beberapa klasifikasi untuk beberapa aplikasi dalam satu JSON objek. Klasifikasi konfigurasi yang tersedia bervariasi menurut versi EMR rilis Amazon. Untuk daftar klasifikasi konfigurasi yang tersedia untuk setiap versi rilis AmazonEMR, lihatAmazon EMR pada EKS rilis.

    Jika Anda melewati konfigurasi yang sama dalam penimpaan aplikasi dan di parameter kirim Spark, parameter kirim Spark diutamakan. Daftar prioritas konfigurasi lengkap mengikuti, dalam urutan prioritas tertinggi ke prioritas terendah.

    • Konfigurasi disediakan saat membuat SparkSession.

    • Konfigurasi disediakan sebagai bagian dari sparkSubmitParameters menggunakan —conf.

    • Konfigurasi disediakan sebagai bagian dari penimpaan aplikasi.

    • Konfigurasi yang dioptimalkan dipilih oleh Amazon EMR untuk rilis.

    • Konfigurasi sumber terbuka default untuk aplikasi.

    Untuk memantau pekerjaan berjalan menggunakan Amazon CloudWatch atau Amazon S3, Anda harus memberikan detail konfigurasi untuk. CloudWatch Untuk informasi selengkapnya, silakan lihat Konfigurasikan pekerjaan yang dijalankan untuk menggunakan log Amazon S3 dan Mengonfigurasi pekerjaan yang dijalankan untuk menggunakan Amazon CloudWatch Logs. Jika bucket S3 atau grup CloudWatch log tidak ada, Amazon membuatnya EMR sebelum mengunggah log ke bucket.

  • Untuk daftar tambahan opsi konfigurasi Kubernetes, lihat Properti Spark di Kubernetes.

    Konfigurasi Spark berikut tidak didukung.

    • spark.kubernetes.authenticate.driver.serviceAccountName

    • spark.kubernetes.authenticate.executor.serviceAccountName

    • spark.kubernetes.namespace

    • spark.kubernetes.driver.pod.name

    • spark.kubernetes.container.image.pullPolicy

    • spark.kubernetes.container.image

      catatan

      Anda dapat menggunakan spark.kubernetes.container.image untuk gambar Docker yang disesuaikan. Untuk informasi selengkapnya, lihat Menyesuaikan gambar Docker untuk Amazon EMR EKS.

Daftar tugas berjalan

Anda dapat menjalankan list-job-run untuk menunjukkan keadaan tugas berjalan, seperti yang ditunjukkan contoh berikut.

aws emr-containers list-job-runs --virtual-cluster-id <cluster-id>

Jelaskan tugas berjalan

Anda dapat menjalankan describe-job-run untuk mendapatkan detail lebih lanjut tentang tugas, seperti status tugas, detail tugas, dan nama tugas, seperti yang ditunjukkan contoh berikut.

aws emr-containers describe-job-run --virtual-cluster-id cluster-id --id job-run-id

Membatalkan tugas berjalan

Anda dapat menjalankan cancel-job-run untuk membatalkan tugas berjalan, seperti yang ditunjukkan contoh berikut.

aws emr-containers cancel-job-run --virtual-cluster-id cluster-id --id job-run-id