

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

# Kelola kluster EMR Amazon
<a name="emr-manage"></a>

 Setelah meluncurkan klaster, Anda dapat terhubung dan mengelolanya. Amazon EMR menyediakan koleksi alat yang dapat Anda gunakan untuk melakukan ini. Bagian ini memberikan panduan untuk menghubungkan ke klaster Anda, memberikannya pekerjaan yang harus dilakukan, memantau pekerjaan saat selesai, dan memecahkan masalah. 

**Topics**
+ [Connect ke kluster EMR Amazon](emr-connect-master-node.md)
+ [Kirim pekerjaan ke kluster EMR Amazon](emr-work-with-steps.md)
+ [Lihat dan pantau klaster EMR Amazon saat melakukan pekerjaan](emr-manage-view.md)
+ [Gunakan penskalaan klaster EMR Amazon untuk menyesuaikan perubahan beban kerja](emr-scale-on-demand.md)
+ [Mengakhiri klaster EMR Amazon di status awal, berjalan, atau menunggu](UsingEMR_TerminateJobFlow.md)
+ [Kloning kluster EMR Amazon menggunakan konsol](clone-console.md)
+ [Otomatiskan cluster EMR Amazon berulang dengan AWS Data Pipeline](emr-manage-recurring.md)

# Connect ke kluster EMR Amazon
<a name="emr-connect-master-node"></a>

Ketika Anda menjalankan klaster Amazon EMR, seringkali yang perlu Anda lakukan hanya menjalankan aplikasi untuk menganalisis data Anda dan kemudian mengumpulkan output dari bucket Amazon S3. Di lain waktu, Anda mungkin ingin berinteraksi dengan node utama saat cluster sedang berjalan. Misalnya, Anda mungkin ingin terhubung ke node utama untuk menjalankan kueri interaktif, memeriksa file log, men-debug masalah dengan cluster, memantau kinerja menggunakan aplikasi seperti Ganglia yang berjalan pada node utama, dan sebagainya. Bagian berikut menjelaskan teknik yang dapat Anda gunakan untuk terhubung ke simpul utama. 

Dalam kluster EMR, node utama adalah instans Amazon EC2 yang mengoordinasikan instans EC2 yang berjalan sebagai node tugas dan inti. Node utama mengekspos nama DNS publik yang dapat Anda gunakan untuk menghubungkannya. Secara default, Amazon EMR membuat aturan grup keamanan untuk node utama, dan untuk node inti dan tugas, yang menentukan cara Anda mengakses node.

**catatan**  
Anda dapat terhubung ke node utama hanya saat cluster sedang berjalan. Ketika cluster berakhir, instans EC2 bertindak sebagai node utama dihentikan dan tidak lagi tersedia. Untuk terhubung ke node utama, Anda juga harus mengautentikasi ke cluster. Anda dapat menggunakan Kerberos untuk autentikasi, atau menentukan kunci privat pasangan kunci Amazon EC2 ketika Anda meluncurkan klaster. Untuk informasi selengkapnya tentang mengkonfigurasi Kerberos, dan kemudian menyambungkan, lihat [Gunakan Kerberos untuk otentikasi dengan Amazon EMR](emr-kerberos.md). Ketika Anda memulai sebuah klaster dari konsol, kunci privat pasangan kunci Amazon EC2 ditentukan dalam bagian **Keamanan dan Akses** pada halaman **Buat Klaster**. 

Secara default, grup keamanan ElasticMapReduce -master tidak mengizinkan akses SSH masuk. Anda mungkin perlu menambahkan aturan masuk yang mengizinkan akses SSH (TCP port 22) dari sumber tempat Anda ingin memiliki akses. Untuk informasi selengkapnya tentang mengubah aturan grup keamanan, lihat [Menambahkan aturan ke grup keamanan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) di Panduan Pengguna *Amazon EC2*.

**penting**  
Jangan mengubah aturan yang tersisa di grup keamanan ElasticMapReduce -master. Memodifikasi aturan ini dapat mengganggu operasi klaster. 

**Topics**
+ [Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk](emr-connect-ssh-prereqs.md)
+ [Connect ke node primer Amazon EMR cluster menggunakan SSH](emr-connect-master-node-ssh.md)

# Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk
<a name="emr-connect-ssh-prereqs"></a>

Sebelum Anda menyambungkan ke klaster Amazon EMR, Anda harus mengotorisasi SSH lalu lintas masuk (port 22) dari klien tepercaya seperti alamat IP komputer Anda. Untuk melakukannya, edit aturan grup keamanan terkelola untuk simpul yang ingin Anda sambungkan. Misalnya, petunjuk berikut menunjukkan cara menambahkan aturan masuk untuk akses SSH ke grup keamanan ElasticMapReduce -master default.

Untuk informasi selengkapnya tentang menggunakan grup keamanan dengan Amazon EMR, lihat [Kontrol lalu lintas jaringan dengan grup keamanan untuk klaster EMR Amazon Anda](emr-security-groups.md).

------
#### [ Console ]

**Untuk memberikan akses SSH sumber tepercaya ke grup keamanan utama dengan konsol**

Untuk mengedit grup keamanan, Anda harus memiliki izin untuk mengelola grup keamanan untuk VPC tempat klaster berada. Untuk informasi [selengkapnya, lihat Mengubah Izin untuk pengguna](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html) dan [Kebijakan Contoh](https://docs.aws.amazon.com//IAM/latest/UserGuide/reference_policies_examples_ec2_securitygroups-vpc.html) yang memungkinkan mengelola grup keamanan EC2 di Panduan Pengguna *IAM*.

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih Cluster, lalu pilih **cluster** yang ingin Anda perbarui. Ini membuka halaman detail cluster. Tab **Properties** pada halaman ini akan dipilih sebelumnya.

1. Di bawah **Jaringan** di tab **Properties**, pilih panah di sebelah **grup keamanan EC2 (firewall)** untuk memperluas bagian ini. Di bawah **Simpul utama**, pilih tautan grup keamanan. Ini membuka konsol EC2.

1. Pilih tab **Aturan masuk** dan kemudian pilih **Edit aturan masuk**.

1. Memeriksa aturan masuk yang mengizinkan akses publik dengan pengaturan berikut. Jika ada, pilih **Hapus** untuk menghapusnya.
   + **Jenis**

     SSH
   + **Port**

     22
   + **Sumber**

     Kustom 0.0.0.0/0
**Awas**  
Sebelum Desember 2020, grup keamanan ElasticMapReduce -master memiliki aturan yang telah dikonfigurasi sebelumnya untuk mengizinkan lalu lintas masuk di Port 22 dari semua sumber. Aturan ini dibuat untuk menyederhanakan koneksi SSH awal ke node utama. Kami sangat menyarankan agar Anda menghapus aturan masuk ini dan membatasi lalu lintas ke sumber tepercaya.

1. Gulir ke bagian bawah daftar aturan dan pilih **Tambahkan Aturan**.

1. Untuk **Jenis**, pilih **SSH**. Pilihan ini secara otomatis memasuki **TCP** untuk **Protokol** dan **22** untuk **Rentang Port**.

1. Untuk sumber, pilih **IP Saya** untuk secara otomatis menambahkan alamat IP Anda sebagai alamat sumber. Anda juga dapat menambahkan berbagai alamat IP klien tepercaya **kustom**, atau membuat aturan tambahan untuk klien lain. Banyak lingkungan jaringan mengalokasikan alamat IP secara dinamis, jadi Anda mungkin perlu memperbarui alamat IP Anda untuk klien tepercaya di masa mendatang.

1. Pilih **Simpan**.

1. Secara opsional kembali ke Langkah 3, pilih **Core dan node tugas**, dan ulangi Langkah 4 - 8. Ini memberikan akses klien SSH node inti dan tugas.

------

# Connect ke node primer Amazon EMR cluster menggunakan SSH
<a name="emr-connect-master-node-ssh"></a>

Secure Shell (SSH) adalah protokol jaringan yang dapat Anda gunakan untuk membuat sambungan yang aman ke komputer jarak jauh. Setelah Anda membuat sambungan, terminal pada komputer lokal Anda berperilaku seolah-olah berjalan pada komputer jarak jauh. Perintah yang Anda keluarkan secara lokal dijalankan di komputer jarak jauh, dan output perintah dari komputer jarak jauh muncul di jendela terminal Anda. 

Saat Anda menggunakan SSH AWS, Anda terhubung ke instans EC2, yang merupakan server virtual yang berjalan di cloud. Saat bekerja dengan Amazon EMR, penggunaan SSH yang paling umum adalah terhubung ke instans EC2 yang bertindak sebagai simpul utama cluster.

Menggunakan SSH untuk terhubung ke node utama memberi Anda kemampuan untuk memantau dan berinteraksi dengan cluster. Anda dapat mengeluarkan perintah Linux pada node utama, menjalankan aplikasi seperti Hive dan Pig secara interaktif, menelusuri direktori, membaca file log, dan sebagainya. Anda juga dapat membuat terowongan di koneksi SSH Anda untuk melihat antarmuka web yang dihosting di node utama. Untuk informasi selengkapnya, lihat [Melihat antarmuka web yang di-host pada klaster Amazon EMR](emr-web-interfaces.md).

Untuk terhubung ke node primer menggunakan SSH, Anda memerlukan nama DNS publik dari node utama. Selain itu, grup keamanan yang terkait dengan node utama harus memiliki aturan masuk yang memungkinkan lalu lintas SSH (TCP port 22) dari sumber yang menyertakan klien tempat koneksi SSH berasal. Anda mungkin perlu menambahkan aturan untuk mengizinkan koneksi SSH dari klien Anda. Untuk informasi selengkapnya tentang memodifikasi aturan grup keamanan, lihat [Kontrol lalu lintas jaringan dengan grup keamanan untuk klaster EMR Amazon Anda](emr-security-groups.md) dan [Menambahkan aturan ke grup keamanan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) di Panduan *Pengguna Amazon EC2*.

## Mengambil nama DNS publik dari node utama
<a name="emr-connect-master-dns"></a>

Anda dapat mengambil nama DNS publik utama menggunakan konsol EMR Amazon dan. AWS CLI

------
#### [ Console ]

**Untuk mengambil nama DNS publik dari node utama dengan konsol baru**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Clusters**, lalu pilih cluster tempat Anda ingin mengambil nama DNS publik.

1. Perhatikan nilai **DNS publik simpul primer** di bagian **Ringkasan** halaman detail klaster.

------
#### [ CLI ]<a name="emr-connect-master-dns-cli"></a>

**Untuk mengambil nama DNS publik dari node utama dengan AWS CLI**

1. Untuk mengambil pengidentifikasi klaster, ketik perintah berikut.

   ```
   1. aws emr list-clusters
   ```

   Output mencantumkan cluster Anda termasuk cluster IDs. Perhatikan ID klaster untuk klaster yang Anda hubungkan.

   ```
   "Status": {
       "Timeline": {
           "ReadyDateTime": 1408040782.374,
           "CreationDateTime": 1408040501.213
       },
       "State": "WAITING",
       "StateChangeReason": {
           "Message": "Waiting after step completed"
       }
   },
   "NormalizedInstanceHours": 4,
   "Id": "j-2AL4XXXXXX5T9",
   "Name": "My cluster"
   ```

1. Untuk mencantumkan instance klaster termasuk nama DNS publik untuk klaster, ketikkan salah satu perintah berikut. Ganti *j-2AL4XXXXXX5T9* dengan ID cluster yang dikembalikan oleh perintah sebelumnya.

   ```
   1. aws emr list-instances --cluster-id j-2AL4XXXXXX5T9
   ```

   Atau:

   ```
   aws emr describe-cluster --cluster-id j-2AL4XXXXXX5T9
   ```

   Output mencantumkan instans klaster termasuk nama DNS dan alamat IP. Perhatikan nilai untuk `PublicDnsName`. 

   ```
   "Status": {
       "Timeline": {
           "ReadyDateTime": 1408040779.263,
           "CreationDateTime": 1408040515.535
       },
       "State": "RUNNING",
       "StateChangeReason": {}
   },
   "Ec2InstanceId": "i-e89b45e7",
   "PublicDnsName": "ec2-###-##-##-###.us-west-2.compute.amazonaws.com"
   
   "PrivateDnsName": "ip-###-##-##-###.us-west-2.compute.internal",
   "PublicIpAddress": "##.###.###.##",
   "Id": "ci-12XXXXXXXXFMH",
   "PrivateIpAddress": "###.##.#.###"
   ```

Untuk informasi selengkapnya, lihat [Perintah Amazon EMR dalam AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/emr).

------

## Connect ke node utama menggunakan SSH dan kunci privat Amazon EC2 di Linux, Unix, dan Mac OS X
<a name="emr-connect-linux"></a>

Untuk membuat koneksi SSH yang diautentikasi dengan file kunci privat, Anda perlu menentukan kunci privat pasangan kunci Amazon EC2 ketika Anda meluncurkan suatu klaster. Untuk informasi selengkapnya tentang mengakses key pair, lihat pasangan kunci [Amazon EC2 di Panduan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) Pengguna *Amazon EC2*.

Komputer Linux Anda kemungkinan besar memiliki klien SSH secara default. Sebagai contoh, OpenSSH dipasang pada kebanyakan sistem operasi Linux, Unix, dan MacOS. Anda dapat memeriksa klien SSH dengan mengetik **ssh** di baris perintah. Jika komputer Anda tidak mengenali perintah, instal klien SSH untuk terhubung ke node utama. Proyek OpenSSH menyediakan implementasi gratis rangkaian lengkap alat SSH. Untuk informasi selengkapnya, lihat situs web [OpenSSH](http://www.openssh.org/).

Petunjuk berikut menunjukkan membuka koneksi SSH ke simpul utama Amazon EMR di Linux, Unix, dan Mac OS X. <a name="emr-keypair-file-permission-config"></a>

**Untuk mengonfigurasi izin file kunci privat pasangan kunci**

Sebelum Anda dapat menggunakan kunci privat pasangan kunci Amazon EC2 Anda untuk membuat koneksi SSH, Anda harus mengatur izin pada file `.pem` agar hanya pemilik kunci yang memiliki izin untuk mengakses file. Ini diperlukan untuk membuat koneksi SSH menggunakan terminal atau file. AWS CLI

1. Pastikan Anda telah mengizinkan lalu lintas SSH masuk. Untuk melihat instruksi, lihat [Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk](emr-connect-ssh-prereqs.md).

1. Temukan file `.pem` Anda. Instruksi berikut mengasumsikan bahwa file dinamakan `mykeypair.pem` dan disimpan dalam direktori beranda pengguna saat ini.

1. Ketik perintah berikut untuk mengatur izin. Ganti *\$1/mykeypair.pem* dengan path lengkap dan nama file file kunci pribadi key pair Anda. Sebagai contoh, `C:/Users/<username>/.ssh/mykeypair.pem`.

   ```
   1. chmod 400 ~/mykeypair.pem
   ```

   Jika Anda tidak mengatur izin pada file `.pem`, Anda akan menerima kesalahan yang menunjukkan bahwa file kunci Anda tidak dilindungi dan kunci akan ditolak. Untuk menyambungkan, Anda hanya perlu mengatur izin pada file kunci privat pasangan kunci saat pertama kali Anda menggunakannya.<a name="emr-ssh"></a>

**Untuk terhubung ke node utama menggunakan terminal**

1. Buka jendela terminal. Pada Mac OS X, pilih **Aplikasi > Utilitas > Terminal**. Pada distribusi Linux lainnya, terminal biasanya ditemukan di **Aplikasi > Aksesori > Terminal**.

1. Untuk membuat koneksi ke node utama, ketik perintah berikut. Ganti *ec2-\$1\$1\$1-\$1\$1-\$1\$1-\$1\$1\$1.compute-1.amazonaws.com* dengan nama DNS publik utama klaster Anda dan ganti *\$1/mykeypair.pem* dengan jalur lengkap dan nama file `.pem` file Anda. Sebagai contoh, `C:/Users/<username>/.ssh/mykeypair.pem`.

   ```
   1. ssh hadoop@ec2-###-##-##-###.compute-1.amazonaws.com -i ~/mykeypair.pem
   ```
**penting**  
Anda harus menggunakan nama login `hadoop` ketika Anda terhubung ke simpul utama Amazon EMR; jika tidak, Anda mungkin melihat kesalahan yang mirip dengan. `Server refused our key`

1. Muncul peringatan yang menyatakan bahwa keaslian host yang Anda sambungkan tidak dapat diverifikasi. Ketik `yes` untuk melanjutkan.

1.  Ketika Anda selesai bekerja pada node utama, ketik perintah berikut untuk menutup koneksi SSH. 

   ```
   exit
   ```

Jika Anda mengalami kesulitan dalam menggunakan SSH untuk terhubung ke node utama Anda, lihat [Memecahkan masalah menghubungkan ke](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html) instans Anda.

## Connect ke node utama menggunakan SSH pada Windows
<a name="emr-connect-win"></a>

Pengguna Windows dapat menggunakan klien SSH seperti PuTTY untuk terhubung ke node utama. Sebelum menghubungkan ke simpul utama Amazon EMR, Anda harus mengunduh dan menginstal PuTTY dan Pu. TTYgen Anda dapat mengunduh keduanya dari [halaman unduh PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/).

PuTTY tidak secara native mendukung format file kunci privat pasangan kunci (`.pem`) yang dihasilkan oleh Amazon EC2. Anda menggunakan Pu TTYgen untuk mengonversi file kunci Anda ke format PuTTY yang diperlukan ()`.ppk`. Anda harus mengonversi kunci Anda ke format ini (`.ppk`) sebelum mencoba terhubung ke node utama menggunakan PuTTY.

Untuk informasi selengkapnya tentang mengonversi kunci, lihat [Mengonversi kunci pribadi menggunakan Pu TTYgen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html) di Panduan Pengguna *Amazon EC2*.<a name="emr-ssh-windows"></a>

**Untuk terhubung ke node utama menggunakan PuTTY**

1. Pastikan Anda telah mengizinkan lalu lintas SSH masuk. Untuk melihat instruksi, lihat [Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk](emr-connect-ssh-prereqs.md).

1. Buka `putty.exe`. Anda juga dapat meluncurkan PuTTY dari daftar program Windows. 

1. Jika perlu, di daftar **Kategori**, pilih **Sesi**.

1. Untuk **Nama Host (atau alamat IP)**, ketik `hadoop@`*MasterPublicDNS*. Sebagai contoh: `hadoop@`*ec2-\$1\$1\$1-\$1\$1-\$1\$1-\$1\$1\$1.compute-1.amazonaws.com*. 

1. Di daftar **Kategori**, pilih **Koneksi > SSH**, **Autentikasi**.

1. Untuk **File kunci privat untuk autentikasi**, pilih **Telusuri** dan pilih file `.ppk` yang Anda buat. 

1. Pilih **Buka** lalu **Ya** untuk mengabaikan pemberitahuan keamanan PuTTY. 
**penting**  
Saat masuk ke node utama, ketik `hadoop` jika Anda diminta untuk nama pengguna.

1. Ketika Anda selesai bekerja pada node utama, Anda dapat menutup koneksi SSH dengan menutup PuTTY.
**catatan**  
Untuk mencegah koneksi SSH kehabisan waktu, Anda dapat memilih **Koneksi** dalam daftar **Kategori** dan pilih opsi **Aktifkan TCP\$1keepalives**. Jika Anda memiliki sesi SSH aktif di PuTTY, Anda dapat mengubah pengaturan Anda dengan membuka konteks (klik kanan) untuk bilah judul PuTTY dan memilih **Mengubah Pengaturan**.

Jika Anda mengalami kesulitan dalam menggunakan SSH untuk terhubung ke node utama Anda, lihat [Memecahkan masalah menghubungkan ke](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html) instans Anda.

## Connect ke node utama menggunakan AWS CLI
<a name="emr-connect-cli"></a>

Anda dapat membuat koneksi SSH dengan node utama menggunakan AWS CLI pada Windows dan Linux, Unix, dan Mac OS X. Terlepas dari platform, Anda memerlukan nama DNS publik dari node utama dan kunci privat Amazon EC2 key pair Anda. Jika Anda menggunakan AWS CLI di Linux, Unix, atau Mac OS X, Anda juga harus mengatur izin pada file kunci pribadi (`.pem`atau`.ppk`) seperti yang ditunjukkan pada. [Untuk mengonfigurasi izin file kunci privat pasangan kunci](#emr-keypair-file-permission-config)<a name="emr-ssh-cli"></a>

**Untuk terhubung ke node utama menggunakan AWS CLI**

1. Pastikan Anda telah mengizinkan lalu lintas SSH masuk. Untuk melihat instruksi, lihat [Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk](emr-connect-ssh-prereqs.md).

1. Untuk mengambil pengidentifikasi klaster, ketik:

   ```
   1. aws emr list-clusters
   ```

   Output mencantumkan cluster Anda termasuk cluster IDs. Perhatikan ID klaster untuk klaster yang Anda hubungkan.

   ```
   "Status": {
       "Timeline": {
           "ReadyDateTime": 1408040782.374,
           "CreationDateTime": 1408040501.213
       },
       "State": "WAITING",
       "StateChangeReason": {
           "Message": "Waiting after step completed"
       }
   },
   "NormalizedInstanceHours": 4,
   "Id": "j-2AL4XXXXXX5T9",
   "Name": "AWS CLI cluster"
   ```

1. Ketik perintah berikut untuk membuka koneksi SSH ke node utama. Dalam contoh berikut, ganti *j-2AL4XXXXXX5T9* dengan ID cluster dan ganti *\$1/mykeypair.key* dengan path lengkap dan nama file `.pem` file Anda (untuk Linux, Unix, dan Mac OS X) atau `.ppk` file (untuk Windows). Sebagai contoh, `C:\Users\<username>\.ssh\mykeypair.pem`.

   ```
   aws emr ssh --cluster-id j-2AL4XXXXXX5T9 --key-pair-file ~/mykeypair.key						
   ```

1. Ketika Anda selesai bekerja pada node utama, tutup AWS CLI jendela. 

   Untuk informasi selengkapnya, lihat [Perintah Amazon EMR di AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/emr). Jika Anda mengalami kesulitan dalam menggunakan SSH untuk terhubung ke node utama Anda, lihat [Memecahkan masalah menghubungkan ke](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html) instans Anda.

# Port layanan Amazon EMR
<a name="emr-service-ports"></a>

**catatan**  
Berikut ini adalah antarmuka dan port layanan untuk komponen di Amazon EMR. Ini bukan daftar lengkap port layanan. Layanan non-default, seperti port SSL dan berbagai jenis protokol, tidak terdaftar.

**penting**  
Berhati-hatilah saat Anda mengedit aturan grup keamanan untuk membuka port. Pastikan untuk menambahkan aturan yang hanya mengizinkan lalu lintas dari klien tepercaya dan terautentikasi untuk protokol dan port yang diperlukan untuk menjalankan beban kerja Anda.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/emr-service-ports.html)

# Melihat antarmuka web yang di-host pada klaster Amazon EMR
<a name="emr-web-interfaces"></a>

**penting**  
Anda dapat mengonfigurasi grup keamanan kustom untuk mengizinkan akses masuk ke antarmuka web ini. Perlu diingat bahwa setiap port tempat Anda mengizinkan lalu lintas masuk merupakan potensi kelemahan keamanan. Cermatlah dalam meninjau grup keamanan kustom untuk memastikan bahwa Anda meminimalisir kelemahan. Untuk informasi selengkapnya, lihat [Kontrol lalu lintas jaringan dengan grup keamanan untuk klaster EMR Amazon Anda](emr-security-groups.md).

Hadoop dan aplikasi lain yang Anda instal di kluster EMR Anda mempublikasikan antarmuka pengguna sebagai situs web yang di-host di node utama. Untuk alasan keamanan, saat menggunakan Grup Keamanan Terkelola Amazon EMR, situs web ini hanya tersedia di server web lokal node utama. Untuk alasan itu, Anda perlu terhubung ke node utama untuk melihat antarmuka web. Untuk informasi selengkapnya, lihat [Connect ke node primer Amazon EMR cluster menggunakan SSH](emr-connect-master-node-ssh.md). Hadoop juga menerbitkan antarmuka pengguna sebagai situs web yang di-host pada simpul inti dan tugas. Situs web tersebut juga hanya tersedia di server web lokal pada simpul. 

Tabel berikut ini mencantumkan antarmuka web yang dapat Anda lihat pada instans klaster. Antarmuka Hadoop ini tersedia pada semua klaster. Untuk antarmuka instance master, ganti *master-public-dns-name* dengan **DNS publik Master** yang tercantum di tab **Ringkasan** cluster di konsol EMR Amazon. Untuk antarmuka inti dan instance tugas, ganti *coretask-public-dns-name* dengan **nama DNS Publik** yang terdaftar untuk instance. ****Untuk menemukan **nama DNS Publik** instans, di konsol EMR Amazon, pilih klaster Anda dari daftar, pilih tab Perangkat Keras, pilih ID grup instans yang berisi instance yang ingin Anda sambungkan, lalu catat nama **DNS Publik yang** terdaftar untuk instance tersebut.****


|  Nama antarmuka |   URI  | 
| --- | --- | 
| Server riwayat Flink (EMR versi 5.33 dan yang lebih baru) | http: //:8082/ master-public-dns-name | 
| Ganglia | http:///ganglia/master-public-dns-name | 
| Hadoop HDFS (versi NameNode EMR pra-6.x) | http: //:50070/ master-public-dns-name | 
| Hadoop HDFS (versi NameNode EMR pra-6.x) | https: //:50470/ master-public-dns-name | 
| Hadoop HDFS ( NameNode EMR versi 6.x) | http: //:9870/ master-public-dns-name | 
| Hadoop HDFS ( NameNode EMR versi 6.x) | https: //:9871/ master-public-dns-name | 
| Hadoop HDFS (versi DataNode EMR pra-6.x) | http: //:50075/ coretask-public-dns-name | 
| Hadoop HDFS (versi DataNode EMR pra-6.x) | https: //:50475/ coretask-public-dns-name | 
| Hadoop HDFS ( DataNodeEMR versi 6.x) | http: //:9864/ coretask-public-dns-name | 
| Hadoop HDFS ( DataNode EMR versi 6.x) | https: //:9865/ coretask-public-dns-name | 
| HBase | http: //:16010/ master-public-dns-name | 
| Hue | http: //:8888/ master-public-dns-name | 
| JupyterHub | https: //:9443/ master-public-dns-name | 
| Livy | http: //:8998/ master-public-dns-name | 
| Percikan HistoryServer | http: //:18080/ master-public-dns-name | 
| Tez | http: //:8080/tez-ui master-public-dns-name | 
| BENANG NodeManager | http: //:8042/ coretask-public-dns-name | 
| BENANG ResourceManager | http: //:8088/ master-public-dns-name | 
| Zeppelin | http: //:8890/ master-public-dns-name | 

Karena ada beberapa antarmuka khusus aplikasi yang tersedia di simpul utama yang tidak tersedia pada node inti dan tugas, instruksi dalam dokumen ini khusus untuk simpul primer Amazon EMR. Mengakses antarmuka web pada inti dan node tugas dapat dilakukan dengan cara yang sama seperti Anda akan mengakses antarmuka web pada node utama. 

Ada beberapa cara Anda dapat mengakses antarmuka web pada node utama. Metode termudah dan tercepat adalah menggunakan SSH untuk terhubung ke node utama dan menggunakan browser berbasis teks, Lynx, untuk melihat situs web di klien SSH Anda. Namun, Lynx adalah peramban berbasis teks dengan antarmuka pengguna terbatas yang tidak dapat menampilkan grafis. Contoh berikut menunjukkan cara membuka ResourceManager antarmuka Hadoop menggunakan Lynx (Lynx juga URLs disediakan ketika Anda masuk ke node utama menggunakan SSH). 

```
lynx http://ip-###-##-##-###.us-west-2.compute.internal:8088/
```

Ada dua opsi yang tersisa untuk mengakses antarmuka web pada node utama yang menyediakan fungsionalitas browser penuh. Pilih salah satu cara berikut: 
+ Opsi 1 (direkomendasikan untuk pengguna yang lebih teknis): Gunakan klien SSH untuk terhubung ke node utama, konfigurasikan tunneling SSH dengan penerusan port lokal, dan gunakan browser Internet untuk membuka antarmuka web yang dihosting di node utama. Metode ini memungkinkan Anda untuk mengonfigurasi akses antarmuka web tanpa menggunakan proksi SOCKS.
+ Opsi 2 (direkomendasikan untuk pengguna baru): Gunakan klien SSH untuk terhubung ke node utama, konfigurasikan tunneling SSH dengan penerusan port dinamis, dan konfigurasikan browser Internet Anda untuk menggunakan add-on seperti untuk Firefox atau Chrome FoxyProxy SwitchyOmega untuk mengelola pengaturan proxy SOCKS Anda. Metode ini memungkinkan Anda secara otomatis memfilter URLs berdasarkan pola teks dan membatasi pengaturan proxy ke domain yang cocok dengan bentuk nama DNS node utama. Untuk informasi selengkapnya tentang cara mengonfigurasi FoxyProxy Firefox dan Google Chrome, lihat[Opsi 2, bagian 2: Konfigurasikan pengaturan proxy untuk melihat situs web yang dihosting di simpul utama klaster EMR Amazon](emr-connect-master-node-proxy.md).

**catatan**  
Jika Anda memodifikasi port tempat aplikasi berjalan melalui konfigurasi cluster, hyperlink ke port tidak akan diperbarui di konsol EMR Amazon. Ini karena konsol tidak memiliki fungsi untuk membaca `server.port` konfigurasi.

Dengan Amazon EMR versi 5.25.0 atau yang lebih baru, Anda dapat mengakses UI server riwayat Spark dari konsol tanpa mengatur proksi web melalui koneksi SSH. Untuk informasi selengkapnya, lihat [Akses satu klik ke server riwayat Spark persisten](https://docs.aws.amazon.com/emr/latest/ManagementGuide/app-history-spark-UI.html).

**Topics**
+ [Opsi 1: Siapkan terowongan SSH ke simpul utama Amazon EMR menggunakan penerusan port lokal](emr-ssh-tunnel-local.md)
+ [Opsi 2, bagian 1: Siapkan terowongan SSH ke simpul utama menggunakan penerusan port dinamis](emr-ssh-tunnel.md)
+ [Opsi 2, bagian 2: Konfigurasikan pengaturan proxy untuk melihat situs web yang dihosting di simpul utama klaster EMR Amazon](emr-connect-master-node-proxy.md)

# Opsi 1: Siapkan terowongan SSH ke simpul utama Amazon EMR menggunakan penerusan port lokal
<a name="emr-ssh-tunnel-local"></a>

Untuk terhubung ke server web lokal pada node utama, Anda membuat terowongan SSH antara komputer Anda dan node utama. Ini juga dikenal sebagai *penerusan port*. Jika Anda tidak ingin menggunakan proxy SOCKS, Anda dapat mengatur terowongan SSH ke node utama menggunakan penerusan port lokal. Dengan penerusan port lokal, Anda menentukan port lokal yang tidak digunakan yang digunakan untuk meneruskan lalu lintas ke port jarak jauh tertentu di server web lokal node utama. 

Menyiapkan terowongan SSH menggunakan penerusan port lokal memerlukan nama DNS publik dari node utama dan file kunci pribadi key pair Anda. Untuk informasi tentang cara menemukan nama DNS publik utama, lihat [Mengambil nama DNS publik dari node utama](emr-connect-master-node-ssh.md#emr-connect-master-dns). Untuk informasi selengkapnya tentang mengakses key pair, lihat pasangan kunci [Amazon EC2 di Panduan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) Pengguna *Amazon EC2*. Untuk informasi selengkapnya tentang situs yang mungkin ingin Anda lihat di simpul utama, lihat[Melihat antarmuka web yang di-host pada klaster Amazon EMR](emr-web-interfaces.md).

## Siapkan terowongan SSH ke node utama menggunakan penerusan port lokal dengan OpenSSH
<a name="ssh-tunnel-local-linux"></a><a name="tunnel-local-linux"></a>

**Untuk mengatur sebuah terowongan SSH menggunakan penerusan port lokal di terminal**

1. Pastikan Anda telah mengizinkan lalu lintas SSH masuk. Untuk melihat instruksi, lihat [Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk](emr-connect-ssh-prereqs.md).

1. Buka jendela terminal. Pada Mac OS X, pilih **Aplikasi > Utilitas > Terminal**. Pada distribusi Linux lainnya, terminal biasanya ditemukan di **Aplikasi > Aksesori > Terminal**.

1. Ketik perintah berikut untuk membuka terowongan SSH pada mesin lokal Anda. Contoh perintah ini mengakses antarmuka ResourceManager web dengan meneruskan lalu lintas pada port lokal 8157 (port lokal yang tidak digunakan secara acak) ke port 8088 di server web lokal master node. 

   Dalam perintah, ganti *\$1/mykeypair.pem* dengan lokasi dan nama file `.pem` file Anda dan ganti *ec2-\$1\$1\$1-\$1\$1-\$1\$1-\$1\$1\$1.compute-1.amazonaws.com* dengan nama DNS publik master cluster Anda. Untuk mengakses antarmuka web yang berbeda, ganti `8088` dengan nomor port yang sesuai. Misalnya, ganti `8088` dengan antarmuka `8890` Zeppelin.

   ```
   ssh -i ~/mykeypair.pem -N -L 8157:ec2-###-##-##-###.compute-1.amazonaws.com:8088 hadoop@ec2-###-##-##-###.compute-1.amazonaws.com
   ```

   `-L` menandakan penggunaan penerusan port lokal yang memungkinkan Anda untuk menentukan port lokal yang digunakan untuk meneruskan data ke port jarak jauh yang teridentifikasi pada server web lokal simpul utama.

   Setelah Anda mengeluarkan perintah ini, terminal tetap terbuka dan tidak mengembalikan respons. 

1. Untuk membuka antarmuka ResourceManager web di browser Anda, `http://localhost:8157/` ketik bilah alamat. 

1. Ketika Anda selesai bekerja dengan antarmuka web pada node utama, tutup jendela terminal.

# Opsi 2, bagian 1: Siapkan terowongan SSH ke simpul utama menggunakan penerusan port dinamis
<a name="emr-ssh-tunnel"></a>

Untuk terhubung ke server web lokal pada node utama, Anda membuat terowongan SSH antara komputer Anda dan node utama. Ini juga dikenal sebagai *penerusan port*. Jika Anda membuat terowongan SSH menggunakan penerusan port dinamis, semua lalu lintas yang dirutekan ke port lokal yang tidak digunakan tertentu diteruskan ke server web lokal pada node utama. Hal ini menciptakan proksi SOCKS. Anda kemudian dapat mengonfigurasi browser Internet Anda untuk menggunakan add-on seperti FoxyProxy atau SwitchyOmega untuk mengelola pengaturan proxy SOCKS Anda. 

Menggunakan add-on manajemen proxy memungkinkan Anda untuk secara otomatis memfilter URLs berdasarkan pola teks dan membatasi pengaturan proxy ke domain yang cocok dengan bentuk nama DNS publik node utama. Add-on browser secara otomatis menangani menghidupkan dan mematikan proxy saat Anda beralih antara melihat situs web yang dihosting di node utama, dan yang ada di Internet. 

Sebelum memulai, Anda memerlukan nama DNS publik dari node utama dan file kunci pribadi key pair Anda. Untuk informasi tentang cara menemukan nama DNS publik utama, lihat[Mengambil nama DNS publik dari node utama](emr-connect-master-node-ssh.md#emr-connect-master-dns). Untuk informasi selengkapnya tentang mengakses key pair, lihat pasangan kunci [Amazon EC2 di Panduan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) Pengguna *Amazon EC2*. Untuk informasi selengkapnya tentang situs yang mungkin ingin Anda lihat di simpul utama, lihat[Melihat antarmuka web yang di-host pada klaster Amazon EMR](emr-web-interfaces.md).

## Siapkan terowongan SSH ke node utama menggunakan penerusan port dinamis dengan OpenSSH
<a name="emr-ssh-tunnel-linux"></a><a name="emr-ssh-tunnel-unix"></a>

**Untuk mengatur terowongan SSH menggunakan penerusan port dinamis dengan OpenSSH**

1. Pastikan Anda telah mengizinkan lalu lintas SSH masuk. Untuk melihat instruksi, lihat [Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk](emr-connect-ssh-prereqs.md).

1. Buka jendela terminal. Pada Mac OS X, pilih **Aplikasi > Utilitas > Terminal**. Pada distribusi Linux lainnya, terminal biasanya ditemukan di **Aplikasi > Aksesori > Terminal**.

1. Ketik perintah berikut untuk membuka terowongan SSH pada mesin lokal Anda. Ganti *\$1/mykeypair.pem* dengan lokasi dan nama file `.pem` file Anda, ganti *8157* dengan nomor port lokal yang tidak digunakan, dan ganti *ec2-\$1\$1\$1-\$1\$1-\$1\$1-\$1\$1\$1.compute-1.amazonaws.com* dengan nama DNS publik utama cluster Anda. 

   ```
   1. ssh -i ~/mykeypair.pem -N -D 8157 hadoop@ec2-###-##-##-###.compute-1.amazonaws.com
   ```

   Setelah Anda mengeluarkan perintah ini, terminal tetap terbuka dan tidak mengembalikan respons. 
**catatan**  
`-D`menandakan penggunaan penerusan port dinamis yang memungkinkan Anda menentukan port lokal yang digunakan untuk meneruskan data ke semua port jarak jauh di server web lokal node utama. Penerusan port dinamis membuat proksi SOCKS lokal yang mendengarkan port yang ditentukan dalam perintah.

1. Setelah terowongan aktif, konfigurasikan proksi SOCKS untuk peramban Anda. Untuk informasi selengkapnya, lihat [Opsi 2, bagian 2: Konfigurasikan pengaturan proxy untuk melihat situs web yang dihosting di simpul utama klaster EMR Amazon](emr-connect-master-node-proxy.md).

1. Ketika Anda selesai bekerja dengan antarmuka web pada node utama, tutup jendela terminal.

## Siapkan terowongan SSH menggunakan penerusan port dinamis dengan AWS CLI
<a name="emr-ssh-tunnel-cli"></a>

Anda dapat membuat koneksi SSH dengan node utama menggunakan AWS CLI pada Windows dan di Linux, Unix, dan Mac OS X. Jika Anda menggunakan AWS CLI di Linux, Unix, atau Mac OS X, Anda harus mengatur izin pada file seperti yang ditunjukkan pada`.pem`. [Untuk mengonfigurasi izin file kunci privat pasangan kunci](emr-connect-master-node-ssh.md#emr-keypair-file-permission-config) Jika Anda menggunakan AWS CLI pada Windows, Putty harus muncul di variabel lingkungan jalur atau Anda mungkin menerima kesalahan seperti OpenSSH atau Putty tidak tersedia.<a name="ssh-tunnel-cli"></a>

**Untuk mengatur terowongan SSH menggunakan penerusan port dinamis dengan AWS CLI**

1. Pastikan Anda telah mengizinkan lalu lintas SSH masuk. Untuk petunjuk, lihat [Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk](emr-connect-ssh-prereqs.md).

1. Buat koneksi SSH dengan node utama seperti yang ditunjukkan pada[Connect ke node utama menggunakan AWS CLI](emr-connect-master-node-ssh.md#emr-connect-cli). 

1. Untuk mengambil pengidentifikasi klaster, ketik:

   ```
   1. aws emr list-clusters
   ```

   Output mencantumkan cluster Anda termasuk cluster IDs. Perhatikan ID klaster untuk klaster yang Anda hubungkan.

   ```
   "Status": {
       "Timeline": {
           "ReadyDateTime": 1408040782.374,
           "CreationDateTime": 1408040501.213
       },
       "State": "WAITING",
       "StateChangeReason": {
           "Message": "Waiting after step completed"
       }
   },
   "NormalizedInstanceHours": 4,
   "Id": "j-2AL4XXXXXX5T9",
   "Name": "AWS CLI cluster"
   ```

1. Ketik perintah berikut untuk membuka terowongan SSH ke node utama menggunakan penerusan port dinamis. Dalam contoh berikut, ganti *j-2AL4XXXXXX5T9* dengan ID cluster dan ganti *\$1/mykeypair.key* dengan lokasi dan nama file `.pem` file Anda (untuk Linux, Unix, dan Mac OS X) atau `.ppk` file (untuk Windows).

   ```
   aws emr socks --cluster-id j-2AL4XXXXXX5T9 --key-pair-file ~/mykeypair.key						
   ```
**catatan**  
Perintah socks secara otomatis mengonfigurasi penerusan port dinamis pada port lokal 8157. Saat ini, pengaturan ini tidak dapat diubah.

1. Setelah terowongan aktif, konfigurasikan proksi SOCKS untuk peramban Anda. Untuk informasi selengkapnya, lihat [Opsi 2, bagian 2: Konfigurasikan pengaturan proxy untuk melihat situs web yang dihosting di simpul utama klaster EMR Amazon](emr-connect-master-node-proxy.md).

1. Ketika Anda selesai bekerja dengan antarmuka web pada node utama, tutup AWS CLI jendela. 

   Untuk informasi selengkapnya tentang penggunaan perintah EMR Amazon di AWS CLI, lihat. [https://docs.aws.amazon.com/cli/latest/reference/emr](https://docs.aws.amazon.com/cli/latest/reference/emr)

## Siapkan terowongan SSH ke simpul utama menggunakan PuTTY
<a name="emr-ssh-tunnel-win"></a>

Pengguna Windows dapat menggunakan klien SSH seperti PuTTY untuk membuat terowongan SSH ke node utama. Sebelum menghubungkan ke simpul utama Amazon EMR, Anda harus mengunduh dan menginstal PuTTY dan Pu. TTYgen Anda dapat mengunduh keduanya dari [halaman unduh PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/).

PuTTY tidak secara native mendukung format file kunci privat pasangan kunci (`.pem`) yang dihasilkan oleh Amazon EC2. Anda menggunakan Pu TTYgen untuk mengonversi file kunci Anda ke format PuTTY yang diperlukan ()`.ppk`. Anda harus mengonversi kunci Anda ke format ini (`.ppk`) sebelum mencoba terhubung ke node utama menggunakan PuTTY.

Untuk informasi selengkapnya tentang mengonversi kunci, lihat [Mengonversi kunci pribadi menggunakan Pu TTYgen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html) di Panduan Pengguna *Amazon EC2*.<a name="emr-ssh-tunnel-putty"></a>

**Untuk mengatur terowongan SSH menggunakan penerusan port dinamis menggunakan PuTTY**

1. Pastikan Anda telah mengizinkan lalu lintas SSH masuk. Untuk melihat instruksi, lihat [Sebelum Anda terhubung ke Amazon EMR: Otorisasi lalu lintas masuk](emr-connect-ssh-prereqs.md).

1. Klik dua kali `putty.exe` untuk memulai PuTTY. Anda juga dapat meluncurkan PuTTY dari daftar program Windows. 
**catatan**  
**Jika Anda sudah memiliki sesi SSH aktif dengan node utama, Anda dapat menambahkan terowongan dengan mengklik kanan bilah judul PuTTY dan memilih Ubah Pengaturan.** 

1. Jika perlu, di daftar **Kategori**, pilih **Sesi**.

1. Di bidang **Nama Host**, ketik **hadoop@***MasterPublicDNS*. Sebagai contoh: **hadoop@***ec2-\$1\$1\$1-\$1\$1-\$1\$1-\$1\$1\$1.compute-1.amazonaws.com*. 

1. Dalam daftar **Kategori**, perluas **Koneksi > SSH**, lalu pilih **Autentikasi**.

1. Untuk **File kunci privat untuk autentikasi**, pilih **Telusuri** dan pilih file `.ppk` yang Anda buat. 
**catatan**  
PuTTY tidak secara native mendukung format file kunci privat pasangan kunci (`.pem`) yang dihasilkan oleh Amazon EC2. Anda menggunakan Pu TTYgen untuk mengonversi file kunci Anda ke format PuTTY yang diperlukan ()`.ppk`. Anda harus mengonversi kunci Anda ke format ini (`.ppk`) sebelum mencoba terhubung ke node utama menggunakan PuTTY.

1. Dalam daftar **Kategori**, perluas **Koneksi > SSH**, lalu pilih **Terowongan**. 

1. Dalam bidang **Port sumber**, ketik `8157` (port lokal tidak terpakai), lalu pilih **Menambahkan**.

1. Biarkan bidang **Tujuan** kosong.

1. Pilih opsi **Dinamis** dan **Otomatis**.

1. Pilih **Buka**. 

1. Pilih **Ya** untuk menghilangkan pemberitahuan keamanan PuTTY.
**penting**  
Saat Anda masuk ke node utama, ketik `hadoop` jika Anda diminta untuk nama pengguna.

1. Setelah terowongan aktif, konfigurasikan proksi SOCKS untuk peramban Anda. Untuk informasi selengkapnya, lihat [Opsi 2, bagian 2: Konfigurasikan pengaturan proxy untuk melihat situs web yang dihosting di simpul utama klaster EMR Amazon](emr-connect-master-node-proxy.md).

1. Ketika Anda selesai bekerja dengan antarmuka web pada node utama, tutup jendela Putty. 

# Opsi 2, bagian 2: Konfigurasikan pengaturan proxy untuk melihat situs web yang dihosting di simpul utama klaster EMR Amazon
<a name="emr-connect-master-node-proxy"></a>

Jika Anda menggunakan terowongan SSH dengan penerusan port dinamis, Anda harus menggunakan add-on manajemen proksi SOCKS untuk mengendalikan pengaturan proksi di peramban Anda. Menggunakan alat manajemen proxy SOCKS memungkinkan Anda untuk secara otomatis memfilter URLs berdasarkan pola teks dan membatasi pengaturan proxy ke domain yang cocok dengan bentuk nama DNS publik node utama. Add-on browser secara otomatis menangani menghidupkan dan mematikan proxy ketika Anda beralih antara melihat situs web yang dihosting di node utama dan yang ada di Internet. Untuk mengelola pengaturan proxy Anda, konfigurasikan browser Anda untuk menggunakan add-on seperti FoxyProxy atau SwitchyOmega. 

Untuk informasi selengkapnya tentang cara membuat terowongan SSH, lihat [Opsi 2, bagian 1: Siapkan terowongan SSH ke simpul utama menggunakan penerusan port dinamis](emr-ssh-tunnel.md). Untuk informasi selengkapnya tentang antarmuka web yang tersedia, lihat [Melihat antarmuka web yang di-host pada klaster Amazon EMR](emr-web-interfaces.md). 



Sertakan pengaturan berikut saat Anda mengatur add-on proksi:
+ Gunakan **localhost** sebagai alamat host.
+ Gunakan nomor port lokal yang sama yang Anda pilih untuk membuat terowongan SSH dengan simpul utama. [Opsi 2, bagian 1: Siapkan terowongan SSH ke simpul utama menggunakan penerusan port dinamis](emr-ssh-tunnel.md) Misalnya, port*8157*. Port ini juga harus cocok dengan nomor port yang Anda gunakan di PuTTY atau emulator terminal lain yang Anda gunakan untuk menyambungkan.
+ Tentukan protokol **SOCKS v5**. SOCKS v5 memungkinkan Anda mengatur otorisasi pengguna secara opsional.
+ **Pola URL**

  Pola URL berikut harus diizinkan dan ditentukan dengan jenis pola wildcard:
  + **\$1ec2\$1. \$1compute\$1.amazonaws.com\$1 dan** **\$110\$1.amazonaws.com\$1 pola untuk mencocokkan nama DNS publik** cluster di wilayah AS.
  + Pola **\$1ec2\$1.compute\$1** dan **\$110\$1.compute\$1** untuk mencocokkan nama DNS publik klaster di seluruh wilayah lainnya.
  +  SEBUAH **10. **\$1 pola untuk menyediakan akses ke file JobTracker log di Hadoop. Ubah filter ini jika bertentangan dengan rencana akses jaringan Anda.
  + Pola **\$1.ec2.internal\$1** dan **\$1.compute.internal\$1** untuk mencocokkan nama DNS privat (internal) klaster di wilayah `us-east-1` dan seluruh wilayah lain, secara berurutan.

## Contoh: Konfigurasi FoxyProxy untuk Firefox
<a name="emr-connect-foxy-proxy-chrome"></a>

Contoh berikut menunjukkan konfigurasi FoxyProxy Standar (versi 7.5.1) untuk Mozilla Firefox.

FoxyProxy menyediakan satu set alat manajemen proxy. Ini memungkinkan Anda menggunakan server proksi untuk URL yang cocok dengan pola yang sesuai dengan domain yang digunakan oleh instans Amazon EC2 di klaster Amazon EMR Anda.<a name="foxy-proxy"></a>

**Untuk menginstal dan mengkonfigurasi FoxyProxy menggunakan Mozilla Firefox**

1. Di Firefox, buka [https://addons.mozilla.org/](https://addons.mozilla.org/), cari FoxyProxy Standar, dan ikuti petunjuk untuk menambahkan FoxyProxy ke Firefox.

1. Menggunakan editor teks, membuat file JSON bernama `foxyproxy-settings.json` dari konfigurasi contoh berikut.

   ```
   {
     "k20d21508277536715": {
       "active": true,
       "address": "localhost",
       "port": 8157,
       "username": "",
       "password": "",
       "type": 3,
       "proxyDNS": true,
       "title": "emr-socks-proxy",
       "color": "#0055E5",
       "index": 9007199254740991,
       "whitePatterns": [
         {
           "title": "*ec2*.*compute*.amazonaws.com*",
           "active": true,
           "pattern": "*ec2*.*compute*.amazonaws.com*",
           "importedPattern": "*ec2*.*compute*.amazonaws.com*",
           "type": 1,
           "protocols": 1
         },
         {
           "title": "*ec2*.compute*",
           "active": true,
           "pattern": "*ec2*.compute*",
           "importedPattern": "*ec2*.compute*",
           "type": 1,
           "protocols": 1
         },
         {
           "title": "10.*",
           "active": true,
           "pattern": "10.*",
           "importedPattern": "http://10.*",
           "type": 1,
           "protocols": 2
         },
         {
           "title": "*10*.amazonaws.com*",
           "active": true,
           "pattern": "*10*.amazonaws.com*",
           "importedPattern": "*10*.amazonaws.com*",
           "type": 1,
           "protocols": 1
         },
         {
           "title": "*10*.compute*",
           "active": true,
           "pattern": "*10*.compute*",
           "importedPattern": "*10*.compute*",
           "type": 1,
           "protocols": 1
         },
         {
           "title": "*.compute.internal*",
           "active": true,
           "pattern": "*.compute.internal*",
           "importedPattern": "*.compute.internal*",
           "type": 1,
           "protocols": 1
         },
         {
           "title": "*.ec2.internal* ",
           "active": true,
           "pattern": "*.ec2.internal*",
           "importedPattern": "*.ec2.internal*",
           "type": 1,
           "protocols": 1
         }
       ],
       "blackPatterns": []
     },
     "logging": {
       "size": 100,
       "active": false
     },
     "mode": "patterns",
     "browserVersion": "68.12.0",
     "foxyProxyVersion": "7.5.1",
     "foxyProxyEdition": "standard"
   }
   ```

1. Buka halaman **Kelola Ekstensi Anda** di Firefox (buka **about:addons**, lalu pilih **Ekstensi**).

1. Pilih **FoxyProxy Standar**, lalu pilih tombol opsi lainnya (tombol yang terlihat seperti elipsis).

1. Pilih **Opsi** dari menu drop-down.

1. Pilih **Pengaturan Impor** dari menu sebelah kiri.

1. **Pada halaman **Pengaturan Impor**, pilih **Pengaturan Impor** **di bawah Pengaturan Impor dari FoxyProxy 6.0\$1**, telusuri ke lokasi `foxyproxy-settings.json` file yang Anda buat, pilih file, dan pilih Buka.** 

1. Pilih **OKE** saat diminta untuk menimpa pengaturan yang ada dan menyimpan konfigurasi baru Anda.

## Contoh: Konfigurasi SwitchyOmega untuk chrome
<a name="switchyomega"></a>

Contoh berikut menunjukkan cara mengatur SwitchyOmega ekstensi untuk Google Chrome. SwitchyOmega memungkinkan Anda mengonfigurasi, mengelola, dan beralih di antara beberapa proxy.

**Untuk menginstal dan mengkonfigurasi SwitchyOmega menggunakan Google Chrome**

1. Buka [https://chrome.google.com/webstore/kategori/ekstensi](https://chrome.google.com/webstore/category/extensions), cari **Proxy SwitchyOmega**, dan tambahkan ke Chrome.

1. Pilih **Profil baru** dan masukkan `emr-socks-proxy` sebagai nama profil.

1. Pilih **Profil PAC** dan kemudian **Buat**. File [Konfigurasi Otomatis Proxy (PAC)](https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file) membantu Anda menentukan daftar izinkan untuk permintaan peramban yang harus diteruskan ke server proksi web.

1. Di bidang **Skrip PAC**, ganti konten dengan skrip berikut yang menentukan mana yang URLs harus diteruskan melalui server proxy web Anda. Jika Anda menentukan nomor port yang berbeda ketika Anda mengatur terowongan SSH Anda, ganti *8157* dengan nomor port Anda.

   ```
   function FindProxyForURL(url, host) {
       if (shExpMatch(url, "*ec2*.*compute*.amazonaws.com*")) return 'SOCKS5 localhost:8157';
       if (shExpMatch(url, "*ec2*.compute*")) return 'SOCKS5 localhost:8157';
       if (shExpMatch(url, "http://10.*")) return 'SOCKS5 localhost:8157';
       if (shExpMatch(url, "*10*.compute*")) return 'SOCKS5 localhost:8157';
       if (shExpMatch(url, "*10*.amazonaws.com*")) return 'SOCKS5 localhost:8157';
       if (shExpMatch(url, "*.compute.internal*")) return 'SOCKS5 localhost:8157';
       if (shExpMatch(url, "*ec2.internal*")) return 'SOCKS5 localhost:8157';
       return 'DIRECT';
   }
   ```

1. Di bawah **Tindakan**, pilih **Terapkan perubahan** untuk menyimpan setelan proxy Anda.

1. Pada bilah alat Chrome, pilih SwitchyOmega dan pilih `emr-socks-proxy` profil.

## Mengakses antarmuka web di peramban
<a name="connect-to-web-ui-browser"></a>

Untuk membuka antarmuka web, masukkan nama DNS publik dari node primer atau inti Anda diikuti dengan nomor port untuk antarmuka yang Anda pilih ke bilah alamat browser Anda. Contoh berikut menunjukkan URL yang akan Anda masukkan untuk terhubung ke Spark HistoryServer.

```
http://master-public-dns-name:18080/				
```

Untuk petunjuk tentang mengambil nama DNS publik simpul, lihat [Mengambil nama DNS publik dari node utama](emr-connect-master-node-ssh.md#emr-connect-master-dns). Untuk daftar lengkap antarmuka web URLs, lihat[Melihat antarmuka web yang di-host pada klaster Amazon EMR](emr-web-interfaces.md).

# Kirim pekerjaan ke kluster EMR Amazon
<a name="emr-work-with-steps"></a>

Bagian ini menjelaskan metode yang dapat Anda gunakan untuk mengirimkan karya ke klaster EMR Amazon. Untuk mengirimkan pekerjaan, Anda dapat menambahkan langkah-langkah, atau Anda dapat secara interaktif mengirimkan pekerjaan Hadoop ke node utama.

Pertimbangkan aturan perilaku langkah berikut saat Anda mengirimkan langkah ke klaster:
+ ID langkah dapat berisi hingga 256 karakter.
+ Anda dapat memiliki hingga 256 langkah PENDING dan RUNNING dalam sebuah cluster.
+ Bahkan jika Anda memiliki 256 langkah aktif yang berjalan di cluster, Anda dapat secara interaktif mengirimkan pekerjaan ke node utama. Anda dapat mengirimkan jumlah langkah yang tidak terbatas selama usia klaster yang berjalan lama, tetapi hanya 256 langkah dapat BERJALAN atau TERTUNDA pada satu waktu tertentu.
+ Dengan Amazon EMR versi 4.8.0 dan yang lebih baru, kecuali versi 5.0.0, Anda dapat membatalkan langkah-langkah yang tertunda. Untuk informasi selengkapnya, lihat [Batalkan langkah-langkah saat Anda mengirimkan pekerjaan ke klaster EMR Amazon](emr-cancel-steps.md).
+ Dengan Amazon EMR versi 5.28.0 dan yang lebih baru, Anda dapat membatalkan langkah-langkah tertunda dan berjalan. Anda juga dapat memilih untuk menjalankan beberapa langkah secara paralel untuk meningkatkan pemanfaatan klaster dan menghemat biaya. Untuk informasi selengkapnya, lihat [Pertimbangan untuk menjalankan beberapa langkah secara paralel saat Anda mengirimkan pekerjaan ke Amazon EMR](emr-concurrent-steps.md).

**catatan**  
Untuk kinerja terbaik, kami menyarankan Anda menyimpan tindakan bootstrap kustom, skrip, dan file lain yang ingin Anda gunakan dengan Amazon EMR di bucket Amazon S3 yang sama dengan cluster Anda. Wilayah AWS 

**Topics**
+ [Menambahkan langkah-langkah ke cluster dengan Amazon EMR Management Console](emr-add-steps-console.md)
+ [Menambahkan langkah-langkah ke cluster EMR Amazon dengan AWS CLI](add-step-cli.md)
+ [Pertimbangan untuk menjalankan beberapa langkah secara paralel saat Anda mengirimkan pekerjaan ke Amazon EMR](emr-concurrent-steps.md)
+ [Melihat langkah-langkah setelah mengirimkan pekerjaan ke klaster EMR Amazon](emr-view-steps.md)
+ [Batalkan langkah-langkah saat Anda mengirimkan pekerjaan ke klaster EMR Amazon](emr-cancel-steps.md)

# Menambahkan langkah-langkah ke cluster dengan Amazon EMR Management Console
<a name="emr-add-steps-console"></a>

Gunakan prosedur berikut untuk menambahkan langkah-langkah ke cluster dengan Konsol Manajemen AWS. Untuk informasi terperinci tentang cara mengirimkan langkah-langkah untuk aplikasi big data tertentu, lihat bagian berikut dari Panduan *[Rilis Amazon EMR](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-release-components.html)*:
+ [Kirim langkah JAR khusus](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-launch-custom-jar-cli.html) 
+ [Kirim langkah streaming Hadoop](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/CLI_CreateStreaming.html) 
+ [Kirim langkah Spark](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-spark-submit-step.html) 
+ [Kirim langkah Babi](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-pig-launch.html#ConsoleCreatingaPigJob) 
+ [Jalankan perintah atau skrip sebagai langkah](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-launch-custom-jar-cli.html) 
+ [Masukkan nilai ke dalam langkah-langkah untuk menjalankan skrip Hive](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hive-differences.html#emr-hive-additional-features) 

## Tambahkan langkah-langkah selama pembuatan cluster
<a name="emr-add-steps-console-cluster-creation"></a>

Dari Konsol Manajemen AWS, Anda dapat menambahkan langkah-langkah saat membuat cluster.

------
#### [ Console ]

**Untuk menambahkan langkah-langkah saat Anda membuat cluster dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. **Di bawah **EMR pada EC2** di panel navigasi kiri, pilih Clusters, lalu pilih **Create cluster**.**

1. Di bawah **Langkah**, pilih **Tambahkan langkah**. Masukkan nilai yang sesuai di bidang dalam dialog **Tambahkan langkah**. Untuk informasi tentang memformat argumen langkah Anda, lihat[Tambahkan argumen langkah](#emr-add-steps-console-arguments). Opsi akan berbeda tergantung pada tipe langkah. Untuk menambahkan langkah Anda dan keluar dari dialog, pilih **Tambah langkah**.

1. Pilih opsi lain yang berlaku untuk cluster Anda. 

1. Untuk meluncurkan klaster Anda, pilih **Buat klaster**.

------

## Tambahkan langkah-langkah ke cluster yang sedang berjalan
<a name="emr-add-steps-console-running-cluster"></a>

Dengan Konsol Manajemen AWS, Anda dapat menambahkan langkah-langkah ke cluster dengan opsi penghentian otomatis dinonaktifkan. 

------
#### [ Console ]

**Untuk menambahkan langkah-langkah ke cluster yang sedang berjalan dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Cluster**, dan pilih cluster yang ingin Anda perbarui.

1. Pada tab **Langkah** pada halaman detail cluster, pilih **Tambah langkah**. **Untuk mengkloning langkah yang ada, pilih menu dropdown **Actions** dan pilih Clone step.**

1. Masukkan nilai yang sesuai di bidang dalam dialog **Tambahkan langkah**. Opsi akan berbeda tergantung pada tipe langkah. Untuk menambahkan langkah Anda dan keluar dari dialog, pilih **Tambah langkah**.

------

## Ubah tingkat konkurensi langkah di cluster yang sedang berjalan
<a name="emr-add-steps-console-modify-concurrency"></a>

Dengan Konsol Manajemen AWS, Anda dapat memodifikasi level konkurensi langkah di cluster yang sedang berjalan. 

**catatan**  
Anda hanya dapat menjalankan beberapa langkah secara paralel dengan Amazon EMR versi 5.28.0 dan yang lebih baru. 

------
#### [ Console ]

**Untuk memodifikasi konkurensi langkah di cluster yang sedang berjalan dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Cluster**, dan pilih cluster yang ingin Anda perbarui. Cluster harus berjalan untuk mengubah atribut konkurensi.

1. Pada tab **Langkah** di halaman detail cluster, temukan bagian **Atribut**. Pilih **Edit** untuk mengubah konkurensi. Masukkan nilai antara 1 dan 256.

------

## Tambahkan argumen langkah
<a name="emr-add-steps-console-arguments"></a>

Saat Anda menggunakan Konsol Manajemen AWS untuk menambahkan langkah ke klaster Anda, Anda dapat menentukan argumen untuk langkah itu di bidang **Argumen**. Anda harus memisahkan argumen dengan spasi putih dan argumen string surround yang terdiri dari karakter *dan* spasi dengan tanda kutip.

**Example : Argumen yang benar**  
Contoh argumen berikut diformat dengan benar untuk Konsol Manajemen AWS, dengan tanda kutip di sekitar argumen string akhir.  

```
bash -c "aws s3 cp s3://amzn-s3-demo-bucket/my-script.sh ."
```
Anda juga dapat menempatkan setiap argumen pada baris terpisah untuk keterbacaan seperti yang ditunjukkan pada contoh berikut.  

```
bash 
-c 
"aws s3 cp s3://amzn-s3-demo-bucket/my-script.sh ."
```

**Example : Argumen salah**  
Contoh argumen berikut tidak diformat dengan benar untuk. Konsol Manajemen AWS Perhatikan bahwa argumen string akhir,`aws s3 cp s3://amzn-s3-demo-bucket/my-script.sh .`, berisi spasi dan tidak dikelilingi oleh tanda kutip.  

```
bash -c aws s3 cp s3://amzn-s3-demo-bucket/my-script.sh .
```

# Menambahkan langkah-langkah ke cluster EMR Amazon dengan AWS CLI
<a name="add-step-cli"></a>

Prosedur berikut menunjukkan cara menambahkan langkah-langkah ke cluster yang baru dibuat dan ke cluster yang sedang berjalan dengan AWS CLI. Kedua contoh menggunakan `--steps` subperintah untuk menambahkan langkah-langkah ke cluster. 

**Untuk menambahkan langkah-langkah selama pembuatan klaster**
+ Ketik perintah berikut untuk membuat klaster dan menambahkan langkah Apache Pig. Pastikan untuk mengganti *`myKey`* dengan nama key pair Amazon EC2 Anda.

  ```
  1. aws emr create-cluster --name "Test cluster" \
  2. --applications Name=Spark \
  3. --use-default-roles \
  4. --ec2-attributes KeyName=myKey \
  5. --instance-groups InstanceGroupType=PRIMARY,InstanceCount=1,InstanceType=m5.xlarge InstanceGroupType=CORE,InstanceCount=2,InstanceType=m5.xlarge \
  6. --steps '[{"Args":["spark-submit","--deploy-mode","cluster","--class","org.apache.spark.examples.SparkPi","/usr/lib/spark/examples/jars/spark-examples.jar","5"],"Type":"CUSTOM_JAR","ActionOnFailure":"CONTINUE","Jar":"command-runner.jar","Properties":"","Name":"Spark application"}]'
  ```
**catatan**  
Daftar argumen berubah tergantung pada jenis langkah.

  Secara default, tingkat konkurensi langkah adalah `1`. Anda dapat mengatur tingkat konkurensi langkah dengan `StepConcurrencyLevel` parameter saat Anda membuat cluster. 

  Outputnya adalah pengidentifikasi klaster yang serupa dengan berikut ini. 

  ```
  1. {
  2.     "ClusterId": "j-2AXXXXXXGAPLF"
  3. }
  ```

**Untuk menambahkan langkah ke klaster berjalan**
+ Ketik perintah berikut untuk menambahkan langkah ke klaster berjalan. Ganti `j-2AXXXXXXGAPLF` dengan ID cluster Anda sendiri.

  ```
  aws emr add-steps --cluster-id j-2AXXXXXXGAPLF \
  --steps '[{"Args":["spark-submit","--deploy-mode","cluster","--class","org.apache.spark.examples.SparkPi","/usr/lib/spark/examples/jars/spark-examples.jar","5"],"Type":"CUSTOM_JAR","ActionOnFailure":"CONTINUE","Jar":"command-runner.jar","Properties":"","Name":"Spark application"}]'
  ```

   Outputnya adalah pengidentifikasi langkah yang serupa dengan berikut ini.

  ```
  1. {
  2.     "StepIds": [
  3. 	"s-Y9XXXXXXAPMD"
  4.     ]
  5. }
  ```

**Untuk memodifikasi StepConcurrencyLevel dalam cluster yang sedang berjalan**

1. Di cluster yang sedang berjalan, Anda dapat memodifikasi `StepConcurrencyLevel` dengan `ModifyCluster` API. Misalnya, ketik perintah berikut untuk meningkatkan `StepConcurrencyLevel` ke`10`. Ganti `j-2AXXXXXXGAPLF` dengan ID cluster Anda.

   ```
   aws emr modify-cluster --cluster-id j-2AXXXXXXGAPLF --step-concurrency-level 10
   ```

1. Output Anda serupa dengan yang berikut ini.

   ```
   {
   "StepConcurrencyLevel": 10
   }
   ```

Untuk informasi selengkapnya tentang penggunaan perintah EMR Amazon di AWS CLI, lihat Referensi [AWS CLI Perintah](https://docs.aws.amazon.com/cli/latest/reference/emr).

# Pertimbangan untuk menjalankan beberapa langkah secara paralel saat Anda mengirimkan pekerjaan ke Amazon EMR
<a name="emr-concurrent-steps"></a>

Menjalankan beberapa langkah secara paralel saat Anda mengirimkan pekerjaan ke Amazon EMR memerlukan keputusan awal tentang perencanaan sumber daya dan ekspektasi terkait perilaku klaster. Ini dibahas secara rinci di sini.
+ Langkah-langkah yang berjalan secara paralel dapat diselesaikan dalam urutan apa pun, tetapi langkah-langkah tertunda dalam antrean akan bertransisi ke keadaan berjalan sesuai urutan dikirimkan.
+ Ketika Anda memilih tingkat konkurensi langkah untuk klaster Anda, Anda harus mempertimbangkan apakah jenis instance node utama memenuhi persyaratan memori beban kerja pengguna atau tidak. Proses eksekusi langkah utama berjalan pada node utama untuk setiap langkah. Menjalankan beberapa langkah secara paralel membutuhkan lebih banyak memori dan pemanfaatan CPU dari node utama daripada menjalankan satu langkah pada satu waktu. 
+ Untuk mencapai penjadwalan yang kompleks dan pengelolaan sumber daya dari langkah-langkah bersamaan, Anda dapat menggunakan fitur penjadwalan YARN seperti `FairScheduler` atau `CapacityScheduler`. Misalnya, Anda dapat menggunakan `FairScheduler` dengan `queueMaxAppsDefault` diatur untuk mencegah lebih dari sejumlah pekerjaan berjalan pada satu waktu. 
+ Tingkat konkurensi langkah tunduk pada konfigurasi pengelola sumber daya. Sebagai contoh, jika YARN dikonfigurasi dengan hanya paralelisme `5`, maka Anda hanya dapat memiliki lima aplikasi YARN yang berjalan secara paralel bahkan jika `StepConcurrencyLevel` diatur ke `10`. Untuk informasi selengkapnya tentang mengonfigurasi pengelola sumber daya, lihat [Mengonfigurasi aplikasi](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html) di Panduan Rilis *EMR Amazon*.
+ Anda tidak dapat menambahkan langkah dengan `ActionOnFailure` selain LANJUTKAN jika tingkat konkurensi langkah klaster lebih besar dari 1.
+ Jika tingkat konkurensi langkah klaster lebih besar dari satu, fitur langkah `ActionOnFailure` tidak akan teraktivasi.
+ Jika sebuah klaster memiliki tingkat konkurensi langkah `1` tetapi memiliki beberapa langkah berjalan, `TERMINATE_CLUSTER ActionOnFailure` dapat teraktivasi, tetapi `CANCEL_AND_WAIT ActionOnFailure` tidak. Kasus edge ini muncul ketika tingkat konkurensi langkah klaster lebih besar dari satu, tapi akan turun jika ada beberapa langkah berjalan.
+ Anda dapat menggunakan penskalaan otomatis EMR untuk menaikkan skala dan menurunkan skala berdasarkan sumber daya YARN guna mencegah perebutan sumber daya. Untuk informasi selengkapnya, lihat [Menggunakan penskalaan otomatis dengan kebijakan khusus untuk grup instans](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-automatic-scaling.html) di Panduan *Manajemen EMR Amazon*.
+ Ketika Anda menurunkan tingkat konkurensi langkah, EMR mengizinkan langkah-langkah berjalan untuk diselesaikan sebelum mengurangi jumlah langkah. Jika sumber daya habis karena klaster menjalankan terlalu banyak langkah secara bersamaan, kami merekomendasikan untuk secara manual membatalkan langkah-langkah berjalan untuk mengosongkan sumber daya.

# Melihat langkah-langkah setelah mengirimkan pekerjaan ke klaster EMR Amazon
<a name="emr-view-steps"></a>

Anda dapat melihat hingga 10.000 langkah yang diselesaikan Amazon EMR dalam tujuh hari terakhir. Anda juga dapat melihat 1.000 langkah yang diselesaikan Amazon EMR kapan saja. Total ini mencakup langkah-langkah yang dikirim pengguna dan sistem.

Jika Anda mengirimkan langkah baru setelah klaster mencapai batas catatan 1.000 langkah, Amazon EMR akan menghapus langkah-langkah tidak aktif yang dikirimkan pengguna yang statusnya telah SELESAI, DIBATALKAN, atau GAGAL selama lebih dari tujuh hari. Jika Anda mengirimkan langkah di luar batas catatan 10.000 langkah, Amazon EMR akan menghapus catatan langkah yang dikirimkan pengguna yang tidak aktif terlepas dari durasi tidak aktifnya. Amazon EMR tidak menghapus catatan ini dari file log. Amazon EMR menghapusnya dari AWS konsol, dan tidak dikembalikan saat Anda menggunakan AWS CLI atau API untuk mengambil informasi klaster. Catatan langkah sistem tidak pernah dihapus.

Informasi langkah yang dapat Anda lihat tergantung pada mekanisme yang digunakan untuk mengambil informasi klaster. Tabel berikut menunjukkan informasi langkah yang dikembalikan oleh masing-masing pilihan yang tersedia. 

 


| Opsi | DescribeJobFlow atau --describe --jobflow | ListSteps atau daftar-langkah | 
| --- | --- | --- | 
| SDK | 256 langkah | Hingga 10.000 langkah | 
| CLI Amazon EMR | 256 langkah | NA | 
| AWS CLI | TA | Hingga 10.000 langkah | 
| API | 256 langkah | Hingga 10.000 langkah | 

# Batalkan langkah-langkah saat Anda mengirimkan pekerjaan ke klaster EMR Amazon
<a name="emr-cancel-steps"></a>

Anda dapat membatalkan langkah-langkah yang tertunda dan berjalan dari AWS CLI, EMR, atau Amazon, saat Anda mengirimkan pekerjaan ke klaster Anda. Konsol Manajemen AWS API.

------
#### [ Console ]

**Untuk membatalkan langkah-langkah dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Cluster**, lalu pilih cluster yang ingin Anda perbarui.

1. Pada tab **Langkah** pada halaman detail klaster, pilih kotak centang di sebelah langkah yang ingin Anda batalkan. Pilih menu tarik-turun **Tindakan** dan kemudian pilih **Batalkan** langkah.

1. Dalam dialog **Batalkan langkah**, pilih untuk membatalkan langkah dan tunggu sampai keluar, atau batalkan langkah dan paksa untuk keluar. Kemudian pilih **Konfirmasi**.

1. Status langkah-langkah dalam tabel **Langkah** berubah menjadi`CANCELLED`. 

------
#### [ CLI ]

**Untuk membatalkan dengan menggunakan AWS CLI**
+ Gunakan perintah `aws emr cancel-steps`, tentukan klaster dan langkah-langkah untuk dibatalkan. Contoh berikut menunjukkan perintah AWS CLI untuk membatalkan dua langkah.

  ```
  aws emr cancel-steps --cluster-id j-2QUAXXXXXXXXX \
  --step-ids s-3M8DXXXXXXXXX s-3M8DXXXXXXXXX \
  --step-cancellation-option SEND_INTERRUPT
  ```

Dengan Amazon EMR versi 5.28.0, Anda dapat memilih salah satu dari dua opsi pembatalan berikut untuk parameter `StepCancellationOption` saat membatalkan langkah. 
+ `SEND_INTERRUPT`— Ini adalah pilihan default. Saat permintaan pembatalan langkah diterima, EMR akan mengirimkan sinyal `SIGTERM` ke langkah tersebut. Tambahkan penangan sinyal `SIGTERM` ke logika langkah Anda untuk menangkap sinyal ini dan mengakhiri proses langkah turunan atau menunggu mereka selesai.
+ `TERMINATE_PROCESS` — Ketika opsi ini dipilih, EMR mengirimkan sinyal `SIGKILL` ke langkah dan semua proses turunannya guna mengakhiri mereka segera.

------

**Pertimbangan untuk membatalkan langkah-langkah**
+ Membatalkan langkah yang berjalan atau tertunda akan menghapus langkah tersebut dari jumlah langkah aktif.
+ Membatalkan langkah berjalan tidak akan mengizinkan langkah tertunda untuk mulai berjalan, dengan asumsi tidak ada perubahan ke `stepConcurrencyLevel`.
+ Membatalkan langkah berjalan tidak memicu langkah `ActionOnFailure`.
+ Untuk EMR 5.32.0 dan yang lebih baru, `SEND_INTERRUPT StepCancellationOption` mengirimkan sinyal `SIGTERM` untuk proses anak langkah tersebut. Anda harus memperhatikan sinyal ini dan melakukan pembersihan dan shutdown secara perlahan. `TERMINATE_PROCESS StepCancellationOption` mengirimkan sinyal `SIGKILL` untuk proses anak langkah dan semua proses turunannya; Namun, proses asinkron tidak terpengaruh.

# Lihat dan pantau klaster EMR Amazon saat melakukan pekerjaan
<a name="emr-manage-view"></a>

Amazon EMR menyediakan beberapa alat yang dapat Anda gunakan untuk mengumpulkan informasi tentang klaster Anda. Anda dapat mengakses informasi tentang klaster dari konsol, CLI atau secara terprogram. Antarmuka web Hadoop standar dan file log tersedia di simpul utama. Anda juga dapat menggunakan layanan pemantauan seperti CloudWatch dan Ganglia untuk melacak kinerja cluster Anda. 

Riwayat aplikasi juga tersedia dari konsol menggunakan aplikasi “persisten” UIs untuk Spark History Server dimulai dengan Amazon EMR 5.25.0. Dengan Amazon EMR 6.x, server timeline YARN persisten, dan antarmuka pengguna Tez juga tersedia. Layanan ini di-host di luar klaster, sehingga Anda dapat mengakses riwayat aplikasi selama 30 hari setelah klaster berakhir, tanpa perlu untuk koneksi SSH atau proksi web. Lihat [Melihat riwayat aplikasi](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-cluster-application-history.html).

**Topics**
+ [Lihat status dan detail klaster EMR Amazon](emr-manage-view-clusters.md)
+ [Langkah debugging yang disempurnakan dengan Amazon EMR](emr-enhanced-step-debugging.md)
+ [Lihat riwayat aplikasi Amazon EMR](emr-cluster-application-history.md)
+ [Lihat file log EMR Amazon](emr-manage-view-web-log-files.md)
+ [Melihat instans klaster di Amazon EC2](UsingEMR_Tagging.md)
+ [CloudWatch peristiwa dan metrik dari Amazon EMR](emr-manage-cluster-cloudwatch.md)
+ [Lihat metrik aplikasi cluster menggunakan Ganglia dengan Amazon EMR](ViewingGangliaMetrics.md)
+ [Pencatatan AWS panggilan EMR API menggunakan AWS CloudTrail](logging-using-cloudtrail.md)
+ [Praktik Terbaik Observabilitas EMR](emr-metrics-observability.md)

# Lihat status dan detail klaster EMR Amazon
<a name="emr-manage-view-clusters"></a>

Setelah Anda membuat sebuah klaster, Anda dapat memantau statusnya dan mendapatkan informasi detail tentang eksekusi dan kesalahan yang mungkin terjadi, bahkan setelah klaster tersebut diakhiri. Amazon EMR menyimpan metadata tentang klaster yang diakhiri untuk referensi Anda selama dua bulan, setelah metadata dihapus. Anda tidak dapat menghapus klaster dari riwayat klaster, tetapi menggunakan Konsol Manajemen AWS, Anda dapat menggunakan **Filter**, dan menggunakan AWS CLI, Anda dapat menggunakan opsi dengan perintah `list-clusters` untuk fokus pada klaster yang Anda pedulikan.

Anda dapat mengakses riwayat aplikasi yang disimpan di klaster selama satu minggu dari waktu riwayat tersebut dicatat, terlepas dari apakah klaster tersebut berjalan atau diakhiri. Selain itu, antarmuka pengguna aplikasi persisten menyimpan riwayat aplikasi di luar klaster selama 30 hari setelah klaster berakhir. Lihat [Melihat riwayat aplikasi](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-cluster-application-history.html).

Untuk informasi selengkapnya tentang status klaster, seperti Menunggu dan Berjalan, lihat [Memahami siklus hidup klaster](emr-overview.md#emr-overview-cluster-lifecycle).

## Lihat detail klaster menggunakan Konsol Manajemen AWS
<a name="emr-view-cluster-console"></a>

Daftar **Clusters https://console.aws.amazon.com** [di/emr](https://console.aws.amazon.com/emr) mencantumkan semua cluster di akun dan AWS Region Anda, termasuk cluster yang dihentikan. Daftar ini menunjukkan hal berikut untuk setiap cluster: **Nama** dan **ID**, **detail **Status** dan Status**, waktu **Pembuatan, waktu** Berlalu **saat** cluster berjalan, dan **jam instans Normalisasi yang telah diperoleh untuk semua instans** EC2 di cluster. Daftar ini adalah titik mulai untuk memantau status klaster Anda. Ini dirancang agar Anda dapat menelusuri detail setiap klaster untuk analisis dan pemecahan masalah.

------
#### [ Console ]

**Untuk melihat informasi cluster dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Clusters**, dan pilih cluster yang ingin Anda lihat.

1. Gunakan panel **Ringkasan** untuk melihat dasar-dasar konfigurasi klaster Anda, seperti status klaster, aplikasi sumber terbuka yang diinstal Amazon EMR di klaster, dan versi Amazon EMR yang Anda gunakan untuk membuat klaster. Gunakan setiap tab di bawah Ringkasan untuk melihat informasi seperti yang dijelaskan dalam tabel berikut.

------

## Lihat detail klaster menggunakan AWS CLI
<a name="view-cluser-cli"></a>

Contoh-contoh berikut ini mendemonstrasikan cara mengambil detail klaster menggunakan AWS CLI. Untuk informasi selengkapnya tentang perintah yang tersedia, lihat [AWS CLI Referensi Perintah untuk Amazon EMR](https://docs.aws.amazon.com/cli/latest/reference/emr). Anda dapat menggunakan perintah [describe-cluster](https://docs.aws.amazon.com/cli/latest/reference/emr/describe-cluster.html) untuk melihat detail tingkat klaster termasuk status, konfigurasi perangkat keras dan perangkat lunak, pengaturan VPC, tindakan bootstrap, grup instans, dan sebagainya. Untuk informasi selengkapnyua tentang status klaster, lihat [Memahami siklus hidup klaster](emr-overview.md#emr-overview-cluster-lifecycle). Contoh berikut menunjukkan menggunakan perintah `describe-cluster`, diikuti oleh contoh-contoh perintah [list-clusters](https://docs.aws.amazon.com/cli/latest/reference/emr/describe-cluster.html).

**Example Melihat status klaster**  
Untuk menggunakan perintah `describe-cluster`, Anda memerlukan ID klaster. Contoh ini menunjukkan penggunaan untuk mendapatkan daftar cluster yang dibuat dalam rentang tanggal tertentu, dan kemudian menggunakan salah satu cluster yang IDs dikembalikan untuk mencantumkan informasi lebih lanjut tentang status cluster individu.  
Perintah berikut menjelaskan cluster*j-1K48XXXXXXHCB*, yang Anda ganti dengan ID cluster Anda.  

```
aws emr describe-cluster --cluster-id j-1K48XXXXXXHCB
```
Output perintah Anda serupa dengan yang berikut ini:  

```
{
    "Cluster": {
        "Status": {
            "Timeline": {
                "ReadyDateTime": 1438281058.061, 
                "CreationDateTime": 1438280702.498
            }, 
            "State": "WAITING", 
            "StateChangeReason": {
                "Message": "Waiting for steps to run"
            }
        }, 
        "Ec2InstanceAttributes": {
            "EmrManagedMasterSecurityGroup": "sg-cXXXXX0", 
            "IamInstanceProfile": "EMR_EC2_DefaultRole", 
            "Ec2KeyName": "myKey", 
            "Ec2AvailabilityZone": "us-east-1c", 
            "EmrManagedSlaveSecurityGroup": "sg-example"
        }, 
        "Name": "Development Cluster", 
        "ServiceRole": "EMR_DefaultRole", 
        "Tags": [], 
        "TerminationProtected": false, 
        "ReleaseLabel": "emr-4.0.0", 
        "NormalizedInstanceHours": 16, 
        "InstanceGroups": [
            {
                "RequestedInstanceCount": 1, 
                "Status": {
                    "Timeline": {
                        "ReadyDateTime": 1438281058.101, 
                        "CreationDateTime": 1438280702.499
                    }, 
                    "State": "RUNNING", 
                    "StateChangeReason": {
                        "Message": ""
                    }
                }, 
                "Name": "CORE", 
                "InstanceGroupType": "CORE", 
                "Id": "ig-2EEXAMPLEXXP", 
                "Configurations": [], 
                "InstanceType": "m5.xlarge", 
                "Market": "ON_DEMAND", 
                "RunningInstanceCount": 1
            }, 
            {
                "RequestedInstanceCount": 1, 
                "Status": {
                    "Timeline": {
                        "ReadyDateTime": 1438281023.879, 
                        "CreationDateTime": 1438280702.499
                    }, 
                    "State": "RUNNING", 
                    "StateChangeReason": {
                        "Message": ""
                    }
                }, 
                "Name": "MASTER", 
                "InstanceGroupType": "MASTER", 
                "Id": "ig-2A1234567XP", 
                "Configurations": [], 
                "InstanceType": "m5.xlarge", 
                "Market": "ON_DEMAND", 
                "RunningInstanceCount": 1
            }
        ], 
        "Applications": [
            {
                "Version": "1.0.0", 
                "Name": "Hive"
            }, 
            {
                "Version": "2.6.0", 
                "Name": "Hadoop"
            }, 
            {
                "Version": "0.14.0", 
                "Name": "Pig"
            }, 
            {
                "Version": "1.4.1", 
                "Name": "Spark"
            }
        ], 
        "BootstrapActions": [], 
        "MasterPublicDnsName": "ec2-X-X-X-X.compute-1.amazonaws.com", 
        "AutoTerminate": false, 
        "Id": "j-jobFlowID", 
        "Configurations": [
            {
                "Properties": {
                    "hadoop.security.groups.cache.secs": "250"
                }, 
                "Classification": "core-site"
            }, 
            {
                "Properties": {
                    "mapreduce.tasktracker.reduce.tasks.maximum": "5", 
                    "mapred.tasktracker.map.tasks.maximum": "2", 
                    "mapreduce.map.sort.spill.percent": "90"
                }, 
                "Classification": "mapred-site"
            }, 
            {
                "Properties": {
                    "hive.join.emit.interval": "1000", 
                    "hive.merge.mapfiles": "true"
                }, 
                "Classification": "hive-site"
            }
        ]
    }
}
```

**Example Mencantumkan klaster berdasarkan tanggal pembuatan**  
Untuk mengambil klaster yang dibuat dalam kisaran data tertentu, gunakan perintah `list-clusters` dengan parameter `--created-after` dan `--created-before`.  
Perintah berikut mencantumkan semua klaster yang dibuat antara 09 Oktober 2019 dan 12 Oktober 2019.  

```
aws emr list-clusters --created-after 2019-10-09T00:12:00 --created-before 2019-10-12T00:12:00
```

**Example Mencantumkan klaster berdasarkan status**  
Untuk mencantumkan klaster berdasarkan status, gunakan perintah `list-clusters` dengan parameter `--cluster-states`. Status klaster yang valid meliputi: MULAI, BOOTSTRAPPING, BERJALAN, MENUNGGU, MENGAKHIRI, DIAKHIRI, dan DIAKHIRI\$1DENGAN\$1KESALAHAN.   

```
aws emr list-clusters --cluster-states TERMINATED
```
Anda juga dapat menggunakan parameter jalan pintas berikut untuk mencantumkan semua klaster dalam status yang ditentukan. :  
+ `--active` mem-filter klaster dalam status MULAI, BOOTSTRAPPING, BERJALAN, MENUNGGU, atau MENGAKHIRI.
+ `--terminated` mem-filter klaster dalam status DIAKHIRI.
+ Parameter `--failed` mem-filter klaster dalam status DIAKHIRI\$1DENGAN\$1KESALAHAN.
Perintah berikut mengembalikan hasil yang sama.  

```
aws emr list-clusters --cluster-states TERMINATED
```

```
aws emr list-clusters --terminated
```
Untuk informasi selengkapnyua tentang status klaster, lihat [Memahami siklus hidup klaster](emr-overview.md#emr-overview-cluster-lifecycle).

# Langkah debugging yang disempurnakan dengan Amazon EMR
<a name="emr-enhanced-step-debugging"></a>

Jika langkah Amazon EMR gagal dan Anda mengirimkan pekerjaan Anda menggunakan operasi API langkah dengan AMI versi 5.x atau yang lebih baru, Amazon EMR dapat mengidentifikasi dan mengembalikan akar masalah kegagalan langkah dalam beberapa kasus, bersama dengan nama berkas log yang relevan dan sebagian dari jejak tumpukan aplikasi melalui API. Misalnya, kegagalan berikut dapat diidentifikasi: 
+ Kesalahan Hadoop umum seperti direktori output sudah ada, direktori input tidak ada, atau aplikasi kehabisan memori.
+ Kesalahan Java seperti aplikasi yang dikompilasi dengan versi Java yang tidak kompatibel atau dijalankan dengan kelas utama yang tidak ditemukan.
+ Masalah mengakses objek yang disimpan di Amazon S3.

Informasi ini tersedia menggunakan operasi [DescribeStep](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_DescribeStep.html)dan [ListSteps](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_ListSteps.html)API. [FailureDetails](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_FailureDetails.html)Bidang yang [StepSummary](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_StepSummary.html)dikembalikan oleh operasi tersebut. Untuk mengakses FailureDetails informasi, gunakan AWS CLI, konsol, atau AWS SDK.

------
#### [ Console ]

Konsol EMR Amazon baru tidak menawarkan langkah debugging. Namun, Anda dapat melihat detail terminasi cluster dengan langkah-langkah berikut.

**Untuk melihat detail kegagalan dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Clusters**, lalu pilih cluster yang ingin Anda lihat.

1. Perhatikan nilai **Status** di bagian **Ringkasan** halaman detail cluster. Jika status **Diakhiri dengan kesalahan**, arahkan kursor ke teks untuk melihat detail kegagalan klaster.

------
#### [ CLI ]

**Untuk melihat detail kegagalan dengan AWS CLI**
+ Untuk mendapatkan detail kegagalan untuk langkah dengan AWS CLI, gunakan `describe-step` perintah.

  ```
  aws emr describe-step --cluster-id j-1K48XXXXXHCB --step-id s-3QM0XXXXXM1W
  ```

  Output akan terlihat serupa dengan yang berikut ini:

  ```
  {
    "Step": {
      "Status": {
        "FailureDetails": {
          "LogFile": "s3://amzn-s3-demo-bucket/logs/j-1K48XXXXXHCB/steps/s-3QM0XXXXXM1W/stderr.gz",
          "Message": "org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory s3://amzn-s3-demo-bucket/logs/beta already exists",
          "Reason": "Output directory already exists."
        },
        "Timeline": {
          "EndDateTime": 1469034209.143,
          "CreationDateTime": 1469033847.105,
          "StartDateTime": 1469034202.881
        },
        "State": "FAILED",
        "StateChangeReason": {}
      },
      "Config": {
        "Args": [
          "wordcount",
          "s3://amzn-s3-demo-bucket/input/input.txt",
          "s3://amzn-s3-demo-bucket/logs/beta"
        ],
        "Jar": "s3://amzn-s3-demo-bucket/jars/hadoop-mapreduce-examples-2.7.2-amzn-1.jar",
        "Properties": {}
      },
      "Id": "s-3QM0XXXXXM1W",
      "ActionOnFailure": "CONTINUE",
      "Name": "ExampleJob"
    }
  }
  ```

------

# Lihat riwayat aplikasi Amazon EMR
<a name="emr-cluster-application-history"></a>

Anda dapat melihat detail aplikasi layanan layanan timeline Spark History Server dan YARN dengan halaman detail cluster di konsol. Riwayat aplikasi Amazon EMR mamudahkan Anda untuk memecahkan masalah dan menganalisis pekerjaan aktif dan riwayat pekerjaan. 

**catatan**  
Untuk meningkatkan keamanan aplikasi off-console yang mungkin Anda gunakan dengan Amazon EMR, domain hosting aplikasi terdaftar di Daftar Akhiran Publik (PSL). Contoh domain hosting ini meliputi:`emrstudio-prod.us-east-1.amazonaws.com`,`emrnotebooks-prod.us-east-1.amazonaws.com`,`emrappui-prod.us-east-1.amazonaws.com`. Untuk keamanan lebih lanjut, jika Anda perlu mengatur cookie sensitif di nama domain default, kami sarankan Anda menggunakan cookie dengan `__Host-` awalan. Ini membantu mempertahankan domain Anda dari upaya pemalsuan permintaan lintas situs (CSRF). Untuk informasi selengkapnya, lihat [https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#cookie_prefixes](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#cookie_prefixes)halaman di *Jaringan Pengembang Mozilla*. 

Bagian **antarmuka pengguna Aplikasi** pada tab **Aplikasi** menyediakan beberapa opsi tampilan, tergantung pada status klaster dan aplikasi yang Anda instal di cluster.
+ [Akses off-cluster ke antarmuka pengguna aplikasi persisten](https://docs.aws.amazon.com/emr/latest/ManagementGuide/app-history-spark-UI.html) - Dimulai dengan Amazon EMR versi 5.25.0, tautan antarmuka pengguna aplikasi persisten tersedia untuk Spark UI dan Spark History Service. Dengan Amazon EMR versi 5.30.1 dan yang lebih baru, Tez UI dan server timeline YARN juga memiliki antarmuka pengguna aplikasi yang persisten. Server timeline YARN dan Tez UI adalah aplikasi sumber terbuka yang menyediakan metrik untuk klaster aktif dan diakhiri. Antarmuka pengguna Spark memberikan detail tentang tahapan penjadwal dan tugas, ukuran RDD dan penggunaan memori, informasi lingkungan, dan informasi tentang pelaksana yang sedang berjalan. Aplikasi persisten UIs dijalankan di luar cluster, sehingga informasi cluster dan log tersedia selama 30 hari setelah aplikasi berakhir. Tidak seperti antarmuka pengguna aplikasi on-cluster, aplikasi persisten UIs tidak mengharuskan Anda untuk mengatur proxy web melalui koneksi SSH.
+ [Antarmuka pengguna aplikasi di klaster](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-web-interfaces.html) — Ada berbagai antarmuka pengguna riwayat aplikasi yang dapat dijalankan pada sebuah klaster. Antarmuka pengguna di klaster di-host pada simpul utama dan mengharuskan Anda untuk mengatur koneksi SSH ke server web. Antarmuka pengguna aplikasi di klaster menyimpan riwayat aplikasi selama satu minggu setelah aplikasi berakhir. Untuk informasi selengkapnya dan petunjuk tentang pengaturan terowongan SSH, lihat [Melihat antarmuka web yang di-host pada klaster Amazon EMR](emr-web-interfaces.md).

  Dengan pengecualian dari Server Riwayat Spark, server timeline YARN, dan aplikasi Hive, riwayat aplikasi di klaster hanya dapat dilihat saat klaster berjalan.

# Lihat antarmuka pengguna aplikasi persisten di Amazon EMR
<a name="app-history-spark-UI"></a>

Dimulai dengan Amazon EMR versi 5.25.0, Anda dapat terhubung ke detail aplikasi Server Riwayat Spark persisten yang di-host di luar klaster menggunakan halaman **Ringkasan** klaster atau tab **Antarmuka pengguna aplikasi** di konsol tersebut. Tez UI dan antarmuka aplikasi persisten server timeline YARN tersedia mulai dari Amazon EMR versi 5.30.1. Akses tautan satu klik ke riwayat aplikasi persisten memberikan manfaat berikut: 
+ Anda dapat dengan cepat menganalisis dan memecahkan masalah pekerjaan yang aktif dan riwayat pekerjaan tanpa mengatur proksi web melalui koneksi SSH.
+ Anda dapat mengakses riwayat aplikasi dan berkas log yang relevan untuk klaster yang aktif dan diakhiri. Log tersedia selama 30 hari setelah aplikasi berakhir. 

Arahkan ke detail klaster Anda di konsol, dan pilih tab **Aplikasi**. Pilih UI aplikasi yang Anda inginkan setelah cluster Anda diluncurkan. UI aplikasi terbuka di tab browser baru. Untuk informasi selengkapnya, lihat [Pemantauan dan instrumentasi](https://spark.apache.org/docs/latest/monitoring.html).

Anda dapat melihat log kontainer YARN melalui tautan pada server riwayat Spark, server timeline YARN, dan Tez UI. 

**catatan**  
Untuk mengakses log kontainer YARN dari server riwayat Spark, server timeline YARN, dan Tez UI, Anda harus mengaktifkan logging ke Amazon S3 untuk klaster Anda. Jika Anda tidak mengaktifkan logging, tautan ke log kontainer YARN tidak akan berfungsi. 

## Pengumpulan log
<a name="app-history-spark-UI-event-logs"></a>

Untuk mengaktifkan akses satu klik ke antarmuka pengguna aplikasi persisten, Amazon EMR mengumpulkan dua jenis log: 
+ **Log peristiwa aplikasi** dikumpulkan ke dalam bucket sistem EMR. Log peristiwa dienkripsi saat istirahat menggunakan Enkripsi Sisi Server dengan Kunci Terkelola Amazon S3 (SSE-S3). Jika Anda menggunakan subnet pribadi untuk klaster Anda, pastikan untuk menyertakan bucket sistem yang benar ARNs dalam daftar sumber daya kebijakan Amazon S3 untuk subnet pribadi. Untuk informasi selengkapnya, lihat [Kebijakan Amazon S3 minimum untuk subnet privat](https://docs.aws.amazon.com/emr/latest/ManagementGuide/private-subnet-iampolicy.html).
+ **Log kontainer YARN** dikumpulkan ke dalam bucket Amazon S3 yang Anda miliki. Anda harus mengaktifkan logging untuk klaster Anda untuk mengakses log kontainer YARN. Untuk informasi selengkapnya, lihat [Mengkonfigurasi logging dan debug klaster](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-debugging.html).

Jika Anda perlu untuk menonaktifkan fitur ini untuk alasan privasi, Anda dapat menghentikan daemon dengan menggunakan skrip bootstrap ketika Anda membuat sebuah klaster, seperti yang ditunjukkan contoh berikut.

```
aws emr create-cluster --name "Stop Application UI Support" --release-label emr-7.12.0 \
--applications Name=Hadoop Name=Spark --ec2-attributes KeyName=<myEMRKeyPairName> \
--instance-groups InstanceGroupType=MASTER,InstanceCount=1,InstanceType=m3.xlarge InstanceGroupType=CORE,InstanceCount=1,InstanceType=m3.xlarge InstanceGroupType=TASK,InstanceCount=1,InstanceType=m3.xlarge \
--use-default-roles --bootstrap-actions Path=s3://region.elasticmapreduce/bootstrap-actions/run-if,Args=["instance.isMaster=true","echo Stop Application UI | sudo tee /etc/apppusher/run-apppusher; sudo systemctl stop apppusher || exit 0"]
```

Setelah Anda menjalankan skrip bootstrap ini, Amazon EMR tidak akan mengumpulkan log peristiwa Server Riwayat Spark atau server timeline YARN ke bucket sistem EMR. Tidak ada informasi riwayat aplikasi yang akan tersedia di tab **Antarmuka pengguna aplikasi**, dan Anda akan kehilangan akses ke semua antarmuka pengguna aplikasi dari konsol tersebut.

## File log peristiwa Spark besar
<a name="app-history-spark-UI-large-event-logs"></a>

Dalam beberapa kasus, pekerjaan Spark yang berjalan lama, seperti streaming Spark, dan pekerjaan besar, seperti kueri Spark SQL, dapat menghasilkan log peristiwa besar. Dengan log peristiwa besar, Anda dapat dengan cepat menggunakan ruang disk pada instance komputasi dan mengalami `OutOfMemory` kesalahan saat memuat Persistent. UIs Untuk menghindari masalah ini, kami sarankan Anda mengaktifkan fitur penggulungan dan pemadatan log peristiwa Spark. Fitur ini tersedia di Amazon EMR versi emr-6.1.0 dan yang lebih baru. Untuk detail selengkapnya tentang rolling dan compaction, lihat [Menerapkan pemadatan pada file log peristiwa bergulir](https://spark.apache.org/docs/latest/monitoring.html#applying-compaction-on-rolling-event-log-files) dalam dokumentasi Spark.

Untuk mengaktifkan fitur penggulungan dan pemadatan log peristiwa Spark, aktifkan pengaturan konfigurasi Spark berikut.
+ `spark.eventLog.rolling.enabled`— Menghidupkan log acara bergulir berdasarkan ukuran. Pengaturan ini dinonaktifkan secara default.
+ `spark.eventLog.rolling.maxFileSize`— Saat penggulungan diaktifkan, tentukan ukuran maksimum file log peristiwa sebelum berguling. Defaultnya adalah 128 MB.
+ `spark.history.fs.eventLog.rolling.maxFilesToRetain`- Menentukan jumlah maksimum file log peristiwa non-dipadatkan untuk mempertahankan. Secara default, semua file log peristiwa dipertahankan. Setel ke angka yang lebih rendah untuk memadatkan log peristiwa lama. Nilai terendah adalah 1.

Perhatikan bahwa pemadatan mencoba untuk mengecualikan peristiwa dengan file log peristiwa yang sudah ketinggalan zaman, seperti berikut ini. Jika tidak membuang peristiwa, Anda tidak lagi melihatnya di UI Server Riwayat Spark.
+ Acara untuk pekerjaan jadi dan acara panggung atau tugas terkait.
+ Acara untuk pelaksana yang dihentikan.
+ Acara untuk menyelesaikan pertanyaan SQL, dan acara pekerjaan, panggung, dan tugas terkait.

**Untuk meluncurkan cluster dengan penggulungan dan pemadatan diaktifkan**

1. Buat `spark-configuration.json` file dengan konfigurasi berikut.

   ```
   [
      {
        "Classification": "spark-defaults",
           "Properties": {
              "spark.eventLog.rolling.enabled": true,
              "spark.history.fs.eventLog.rolling.maxFilesToRetain": 1
           }
      }
   ]
   ```

1. Buat cluster Anda dengan konfigurasi pemadatan bergulir Spark sebagai berikut.

   ```
   aws emr create-cluster \
   --release-label emr-6.6.0 \
   --instance-type m4.large \
   --instance-count 2 \
   --use-default-roles \
   --configurations file://spark-configuration.json
   ```

## Izin untuk melihat antarmuka pengguna aplikasi persisten
<a name="app-history-spark-UI-permissions"></a>

Contoh berikut menunjukkan izin peran yang diperlukan untuk akses ke antarmuka pengguna aplikasi persisten. Untuk cluster dengan peran runtime diaktifkan, ini hanya akan memungkinkan pengguna untuk mengakses aplikasi yang dikirimkan oleh identitas pengguna dan peran runtime yang sama.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:CreatePersistentAppUI",
        "elasticmapreduce:DescribePersistentAppUI"
      ],
      "Resource": [
        "arn:aws:elasticmapreduce:*:123456789012:cluster/clusterId"
      ],
      "Sid": "AllowELASTICMAPREDUCECreatepersistentappui"
    },
    {
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:GetPersistentAppUIPresignedURL"
      ],
      "Resource": [
        "arn:aws:elasticmapreduce:*:123456789012:cluster/clusterId",
        "arn:aws:elasticmapreduce:*:123456789012:persistent-app-ui/*"
      ],
      "Condition": {
        "StringEqualsIfExists": {
          "elasticmapreduce:ExecutionRoleArn": [
            "arn:aws:iam::123456789012:role/executionRoleArn"
          ]
        }
      },
      "Sid": "AllowELASTICMAPREDUCEGetpersistentappuipresignedurl"
    }
  ]
}
```

------

Contoh berikut menunjukkan izin peran yang diperlukan untuk menghapus pembatasan tampilan aplikasi di antarmuka pengguna aplikasi persisten untuk klaster yang diaktifkan peran runtime.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:CreatePersistentAppUI",
        "elasticmapreduce:DescribePersistentAppUI",
        "elasticmapreduce:AccessAllEventLogs"
      ],
      "Resource": [
        "arn:aws:elasticmapreduce:us-east-1:123456789012:cluster/j-XXXXXXXXXXXXX"
      ],
      "Sid": "AllowELASTICMAPREDUCECreatepersistentappui"
    },
    {
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:GetPersistentAppUIPresignedURL"
      ],
      "Resource": [
        "arn:aws:elasticmapreduce:us-east-1:123456789012:cluster/j-XXXXXXXXXXXXX",
        "arn:aws:elasticmapreduce:us-east-1:123456789012:persistent-app-ui/*"
      ],
      "Condition": {
        "StringEqualsIfExists": {
          "elasticmapreduce:ExecutionRoleArn": [
            "arn:aws:iam::123456789012:role/YourExecutionRoleName"
          ]
        }
      },
      "Sid": "AllowELASTICMAPREDUCEGetpersistentappuipresignedurl"
    }
  ]
}
```

------

## Pertimbangan dan batasan
<a name="app-history-spark-UI-limitations"></a>

Akses sekali klik ke antarmuka pengguna aplikasi persisten saat ini memiliki batasan berikut.
+ Akan ada setidaknya dua menit penundaan ketika detail aplikasi muncul pada UI Server Riwayat Spark.
+ Fitur ini bekerja hanya ketika direktori log peristiwa untuk aplikasi berada dalam HDFS. Secara default, Amazon EMR menyimpan log peristiwa di dalam direktori HDFS. Jika Anda mengubah direktori default ke sistem file yang berbeda, seperti Amazon S3, fitur ini tidak akan bekerja. 
+ Fitur ini saat ini tidak tersedia untuk klaster EMR dengan beberapa simpul utama atau untuk klaster EMR yang terintegrasi dengan AWS Lake Formation. 
+ Untuk mengaktifkan akses sekali klik ke antarmuka pengguna aplikasi persisten, Anda harus memiliki izin untuk`CreatePersistentAppUI`, `DescribePersistentAppUI` dan `GetPersistentAppUIPresignedURL` tindakan untuk Amazon EMR. Jika Anda menolak izin kepala IAM untuk tindakan ini, dibutuhkan sekitar lima menit agar perubahan izin menyebar.
+ Jika klaster adalah klaster yang diaktifkan peran runtime, saat mengakses Server Riwayat Spark dari UI Aplikasi Persisten, pengguna hanya akan dapat mengakses pekerjaan Spark jika pekerjaan Spark dikirimkan oleh peran runtime.
+ Jika klaster adalah klaster yang diaktifkan peran runtime, setiap pengguna hanya dapat mengakses aplikasi yang dikirimkan oleh identitas pengguna dan peran runtime yang sama.
+  `AccessAllEventLogs`Tindakan untuk Amazon EMR diperlukan untuk melihat semua aplikasi dalam antarmuka pengguna aplikasi persisten untuk klaster yang diaktifkan peran runtime. 
+ Jika Anda mengkonfigurasi ulang aplikasi dalam sebuah klaster berjalan, riwayat aplikasi akan tidak tersedia melalui UI aplikasi. 
+ Untuk masing-masing Akun AWS, batas default untuk aplikasi aktif UIs adalah 200.
+ Berikut ini Wilayah AWS, Anda dapat mengakses aplikasi UIs dari konsol dengan Amazon EMR 6.14.0 dan yang lebih tinggi: 
  + Asia Pasifik (Jakarta) (ap-southeast-3)
  + Eropa (Spanyol) (eu-south-2)
  + Asia Pasifik (Melbourne) (ap-southeast-4)
  + Israel (Tel Aviv) (il-central-1)
  + Timur Tengah (UEA) (me-central-1)
+ Berikut ini Wilayah AWS, Anda dapat mengakses aplikasi UIs dari konsol dengan Amazon EMR 5.25.0 dan yang lebih tinggi: 
  + US East (N. Virginia) (us-east-1)
  + US West (Oregon) (us-west-2)
  + Asia Pacific (Mumbai) (ap-south-1)
  + Asia Pacific (Seoul) (ap-northeast-2)
  + Asia Pasifik (Singapura) (ap-southeast-1)
  + Asia Pacific (Sydney) (ap-southeast-2)
  + Asia Pacific (Tokyo) (ap-northeast-1)
  + Kanada (Pusat) (ca-central-1)
  + Amerika Selatan (Sao Paulo) (sa-east-1)
  + Eropa (Frankfurt) (eu-central-1)
  + Eropa (Irlandia) (eu-west-1)
  + Eropa (London) (eu-west-2)
  + Eropa (Paris) (eu-west-3)
  + Eropa (Stockholm) (eu-north-1)
  + Tiongkok (Beijing) (cn-utara-1)
  + Tiongkok (Ningxia) (cn-barat laut-1)

# Lihat riwayat aplikasi tingkat tinggi di Amazon EMR
<a name="app-history-summary"></a>

**catatan**  
Sebaiknya gunakan antarmuka aplikasi persisten untuk meningkatkan pengalaman pengguna yang mempertahankan riwayat aplikasi hingga 30 hari. Riwayat aplikasi tingkat tinggi yang dijelaskan di halaman ini tidak tersedia di konsol EMR Amazon baru [https://console.aws.amazon.com(](https://console.aws.amazon.com/emr)/emr). Untuk informasi selengkapnya, lihat [Lihat antarmuka pengguna aplikasi persisten di Amazon EMR](app-history-spark-UI.md).

**Dengan Amazon EMR merilis 5.8.0 hingga 5.36.0 dan 6.x rilis hingga 6.8.0, Anda dapat melihat riwayat aplikasi tingkat tinggi dari tab antarmuka pengguna Aplikasi di konsol EMR Amazon lama.** **Antarmuka pengguna Aplikasi** Amazon EMR menyimpan ringkasan riwayat aplikasi selama 7 hari setelah aplikasi selesai. 

## Pertimbangan dan batasan
<a name="app-history-limitations"></a>

Pertimbangkan batasan berikut saat Anda menggunakan tab **Antarmuka pengguna Aplikasi** di konsol EMR Amazon lama.
+ Anda hanya dapat mengakses fitur riwayat aplikasi tingkat tinggi saat menggunakan Amazon EMR rilis 5.8.0 hingga 5.36.0 dan 6.x rilis hingga 6.8.0. Efektif 23 Januari 2023, Amazon EMR akan menghentikan riwayat aplikasi tingkat tinggi untuk semua versi. Jika Anda menggunakan Amazon EMR versi 5.25.0 atau lebih tinggi, kami sarankan Anda menggunakan antarmuka pengguna aplikasi persisten sebagai gantinya.
+ Fitur riwayat aplikasi tingkat tinggi tidak mendukung aplikasi Spark Streaming.
+ Akses sekali klik ke antarmuka pengguna aplikasi persisten saat ini tidak tersedia untuk kluster EMR Amazon dengan beberapa node master atau untuk kluster EMR Amazon yang terintegrasi dengannya. AWS Lake Formation

## Contoh: Melihat riwayat aplikasi tingkat tinggi
<a name="app-history-example"></a>

Urutan berikut menunjukkan penelusuran melalui aplikasi Spark atau YARN ke detail pekerjaan menggunakan tab **antarmuka pengguna Aplikasi** pada halaman detail cluster konsol lama. 

Untuk melihat detail klaster, pilih **Nama** klaster dari daftar **Klaster**. Untuk melihat informasi tentang log kontainer YARN, Anda harus mengaktifkan logging untuk klaster Anda. Untuk informasi selengkapnya, lihat [Mengkonfigurasi logging dan debug klaster](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-debugging.html). Untuk riwayat aplikasi Spark, informasi yang diberikan dalam tabel ringkasan hanya merupakan bagian dari informasi yang tersedia melalui UI server riwayat Spark.

Di tab **Antarmuka pengguna aplikasi** di bawah **Riwayat aplikasi tingkat tinggi**, Anda dapat memperluas baris untuk menampilkan ringkasan diagnostik untuk aplikasi Spark atau memilih tautan **ID Aplikasi** untuk melihat detail tentang aplikasi yang berbeda.

![\[Application user interfaces tab showing persistent and on-klaster UIs, with YARN application history.\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/app-history-app.png)


Bila Anda memilih tautan **ID Aplikasi**, UI berubah untuk menampilkan detail **Aplikasi YARN** untuk aplikasi tersebut. Di tab **Pekerjaan** pada detail **Aplikasi YARN**, Anda dapat memilih tautan **Deskripsi** agar pekerjaan menampilkan detail untuk pekerjaan tersebut.

![\[YARN application details showing job history with completed Spark tasks and their statuses.\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/app-history-job-1.png)


Pada halaman detail pekerjaan, Anda dapat memperluas informasi tentang tahapan pekerjaan individu, dan kemudian pilih tautan **Deskripsi** untuk melihat detail tahapan.

![\[EMR klaster interface showing persistent and on-klaster application UIs, with job details and stages.\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/app-history-job-2.png)


Pada halaman detail tahapan, Anda dapat melihat metrik kunci untuk tugas dan pelaksana tahapan. Anda juga dapat melihat log tugas dan pelaksana menggunakan tautan **Lihat log**.

![\[Application history page showing task metrics, executor details, and log access links for a Spark job.\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/app-history-job-3.png)


# Lihat file log EMR Amazon
<a name="emr-manage-view-web-log-files"></a>

 Amazon EMR dan Hadoop menghasilkan berkas log yang melaporkan status pada klaster. Secara default, ini ditulis ke simpul utama dalam `/mnt/var/log/` direktori. Tergantung pada cara Anda mengkonfigurasi klaster Anda ketika Anda meluncurkannya, log ini juga dapat diarsipkan ke Amazon S3 dan dapat dilihat melalui alat debugging grafis. 

 Ada banyak jenis log yang ditulis ke simpul utama. Amazon EMR menulis log langkah, tindakan bootstrap, dan status instans. Apache Hadoop menulis log untuk melaporkan pengolahan pekerjaan, tugas, dan upaya tugas. Hadoop juga mencatat log dari daemon nya. [Untuk informasi lebih lanjut tentang log yang ditulis oleh Hadoop, kunjungi http://hadoop.apache. org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html](http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html). 

## Lihat file log pada simpul utama
<a name="emr-manage-view-web-log-files-master-node"></a>

Tabel berikut mencantumkan beberapa file log yang akan Anda temukan di simpul utama.


| Lokasi | Deskripsi | 
| --- | --- | 
|  /emr/instance-controller/log/bootstrap-tindakan  | Log ditulis selama pemrosesan tindakan bootstrap. | 
|  /mnt/var/log/hadoop-pendorong negara  | Log ditulis oleh proses pendorong status Hadoop. | 
|  /emr/instance-controller/log  | Log pengendali instans. | 
|  /emr/instance-state  | Log status instans. Ini berisi informasi tentang CPU, status memori, dan utas pengumpul sampah dari simpul tersebut. | 
|  /emr/layanan-pengasuh  | Log ditulis oleh proses pengasuh layanan. | 
|  /mnt/var/log/*application*  | Log khusus untuk aplikasi seperti Hadoop, Spark, atau Hive. | 
|  /mnt/var/log/hadoop/steps/*N*  | Log langkah yang berisi informasi tentang pengolahan langkah. Nilai *N* menunjukkan StepID yang ditetapkan oleh Amazon EMR. Sebagai contoh, sebuah klaster memiliki dua langkah: `s-1234ABCDEFGH` dan `s-5678IJKLMNOP`. Langkah pertama terletak di `/mnt/var/log/hadoop/steps/s-1234ABCDEFGH/` dan langkah kedua di `/mnt/var/log/hadoop/steps/s-5678IJKLMNOP/`.  Log langkah yang ditulis oleh Amazon EMR adalah sebagai berikut.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/emr-manage-view-web-log-files.html)  | 

**Untuk melihat file log pada node utama dengan file AWS CLI.**

1.  Gunakan SSH untuk terhubung ke node utama seperti yang dijelaskan dalam[Connect ke node primer Amazon EMR cluster menggunakan SSH](emr-connect-master-node-ssh.md). 

1.  Buka direktori yang berisi informasi berkas log yang ingin Anda lihat. Tabel sebelumnya memberikan daftar jenis berkas log yang tersedia dan tempat Anda dapat menemukannya. Contoh berikut menunjukkan perintah untuk membuka log langkah dengan sebuah ID, `s-1234ABCDEFGH`. 

   ```
   cd /mnt/var/log/hadoop/steps/s-1234ABCDEFGH/
   ```

1. Gunakan penampil file pilihan Anda untuk melihat berkas log. Contoh berikut menggunakan perintah `less` Linux untuk melihat berkas log `controller`.

   ```
   less controller
   ```

## Melihat berkas log yang diarsipkan ke Amazon S3
<a name="emr-manage-view-web-log-files-s3"></a>

Secara default, klaster Amazon EMR yang diluncurkan menggunakan konsol secara otomatis mengarsipkan berkas log ke Amazon S3. Anda dapat menentukan jalur log Anda sendiri, atau Anda dapat mengizinkan konsol untuk secara otomatis membuat jalur log untuk Anda. Untuk klaster yang diluncurkan menggunakan CLI atau API, Anda harus mengkonfigurasi log pengarsipan Amazon S3 secara manual. 

 Ketika Amazon EMR dikonfigurasi untuk mengarsipkan file log ke Amazon S3, ia menyimpan file di lokasi S3 yang Anda tentukan, di folder*cluster-id*//, di *cluster-id* mana ID cluster. 

Tabel berikut mencantumkan beberapa berkas log yang akan Anda temukan pada Amazon S3.


| Lokasi | Deskripsi | 
| --- | --- | 
|  /*cluster-id*/simpul/  | Log simpul, termasuk tindakan bootstrap, status instans, dan log aplikasi untuk simpul. Log untuk setiap simpul disimpan dalam folder berlabel dengan pengenal instans EC2 dari simpul tersebut. | 
|  /*cluster-id**instance-id*/node//*application*  | Log yang dibuat oleh setiap aplikasi atau daemon terkait dengan suatu aplikasi. Sebagai contoh, log server Hive terletak di `cluster-id/node/instance-id/hive/hive-server.log`. | 
|  //*cluster-id*langkah/*step-id*/  | Log langkah yang berisi informasi tentang pengolahan langkah. Nilai *step-id* menunjukkan ID langkah yang ditetapkan oleh Amazon EMR. Sebagai contoh, sebuah klaster memiliki dua langkah: `s-1234ABCDEFGH` dan `s-5678IJKLMNOP`. Langkah pertama terletak di `/mnt/var/log/hadoop/steps/s-1234ABCDEFGH/` dan langkah kedua di `/mnt/var/log/hadoop/steps/s-5678IJKLMNOP/`.  Log langkah yang ditulis oleh Amazon EMR adalah sebagai berikut.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/emr-manage-view-web-log-files.html)  | 
|  /*cluster-id*/kontainer  |  Log kontainer aplikasi. Log untuk setiap aplikasi YARN disimpan di lokasi ini.  | 
|  //*cluster-id*hadoop-mapreduce/  | Log yang berisi informasi tentang detail konfigurasi dan riwayat pekerjaan MapReduce pekerjaan.  | 

**Untuk melihat file log yang diarsipkan ke Amazon S3 dengan konsol Amazon S3**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon S3 di. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Buka bucket S3 yang ditentukan ketika Anda mengkonfigurasi klaster untuk mengarsipkan berkas log di Amazon S3. 

1. Buka berkas log yang berisi informasi yang ingin ditampilkan. Tabel sebelumnya memberikan daftar jenis berkas log yang tersedia dan tempat Anda dapat menemukannya. 

1. Download objek berkas log untuk melihatnya. Untuk melihat instruksi, lihat [Mengunduh objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/download-objects.html).

# Melihat instans klaster di Amazon EC2
<a name="UsingEMR_Tagging"></a>

 Untuk membantu Anda mengelola sumber daya Anda, Amazon EC2 memungkinkan Anda untuk menetapkan metadata ke sumber daya dalam bentuk tanda. Setiap tanda Amazon EC2 terdiri dari kunci dan nilai. Tanda mengizinkan Anda untuk mengategorikan sumber daya Amazon EC2 Anda dengan berbagai cara, misalnya, berdasarkan tujuan, pemilik, atau lingkungan. 

 Anda dapat mencari dan mem-filter sumber daya berdasarkan tanda. Tag yang Anda tetapkan ke sumber daya melalui AWS akun Anda hanya tersedia untuk Anda. Akun lain yang berbagi sumber daya yang sama tidak dapat melihat tag Anda. 

Amazon EMR secara otomatis menandai setiap instans EC2 yang diluncurkan dengan pasangan nilai kunci. Kunci mengidentifikasi cluster dan grup instance yang menjadi milik instance. Ini memudahkan untuk memfilter instans EC2 Anda untuk ditampilkan, misalnya, hanya instance yang termasuk dalam cluster tertentu, atau untuk menampilkan semua instance yang sedang berjalan di grup instans untuk tugas tersebut. Ini sangat berguna jika Anda menjalankan beberapa cluster secara bersamaan atau mengelola sejumlah besar instans EC2.

Berikut ini adalah pasangan nilai kunci yang telah ditetapkan Amazon EMR:


| Kunci | Nilai | Definisi nilai | 
| --- | --- | --- | 
| aws:elasticmapreduce:job-flow-id |  `job-flow-identifier`  | ID cluster tempat instance disediakan untuk. Itu muncul dalam format `j-XXXXXXXXXXXXX` dan bisa mencapai 256 karakter. | 
| aws:elasticmapreduce:instance-group-role |  `group-role`  | Jenis grup contoh, dimasukkan sebagai salah satu nilai berikut:`master`,`core`, atau`task`. | 

 Anda dapat melihat dan mem-filter pada tanda yang ditambahkan oleh Amazon EMR. Untuk informasi selengkapnya, lihat [Menggunakan tag](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) di *Panduan Pengguna Amazon EC2*. Karena tanda yang ditetapkan oleh Amazon EMR adalah tanda sistem dan tidak dapat diedit atau dihapus, bagian pada menampilkan dan mem-filter tag adalah yang paling relevan. 

**catatan**  
 **Amazon EMR menambahkan tag ke instans EC2 saat statusnya diperbarui ke Running.** Jika latensi terjadi antara waktu instans EC2 disediakan dan waktu statusnya disetel ke **Running**, tag yang disetel Amazon EMR akan muncul setelah instance dimulai. Jika Anda tidak melihat tanda, tunggu beberapa menit dan segarkan tampilan.

# CloudWatch peristiwa dan metrik dari Amazon EMR
<a name="emr-manage-cluster-cloudwatch"></a>

Gunakan peristiwa dan metrik untuk melacak aktivitas dan kesehatan klaster Amazon EMR. Peristiwa berguna untuk memantau kejadian tertentu dalam sebuah klaster - misalnya, ketika sebuah klaster berubah status dari mulai menjadi sedang berjalan. Metrik berguna untuk memantau nilai tertentu - misalnya, persentase ruang disk yang tersedia yang digunakan HDFS dalam sebuah cluster.

Untuk informasi selengkapnya tentang CloudWatch Acara, lihat [Panduan Pengguna CloudWatch Acara Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/). Untuk informasi selengkapnya tentang CloudWatch metrik, lihat [Menggunakan CloudWatch metrik](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) [Amazon dan Membuat CloudWatch alarm Amazon di Panduan](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) Pengguna *Amazon CloudWatch *.

**Topics**
+ [Memantau metrik Amazon EMR dengan CloudWatch](UsingEMR_ViewingMetrics.md)
+ [Memantau peristiwa EMR Amazon dengan CloudWatch](emr-manage-cloudwatch-events.md)
+ [Menanggapi CloudWatch peristiwa dari Amazon EMR](emr-events-response.md)

# Memantau metrik Amazon EMR dengan CloudWatch
<a name="UsingEMR_ViewingMetrics"></a>

Metrik diperbarui setiap lima menit dan secara otomatis dikumpulkan dan didorong ke setiap CloudWatch klaster EMR Amazon. Interval ini tidak dapat dikonfigurasi. Tidak ada biaya untuk metrik EMR Amazon yang dilaporkan. CloudWatch Metrik titik data lima menit ini diarsipkan selama 63 hari, dan setelahnya data tersebut dibuang. 

## Bagaimana cara menggunakan metrik Amazon EMR?
<a name="UsingEMR_ViewingMetrics_HowDoI"></a>

Tabel berikut menunjukkan penggunaan umum untuk metrik yang dilaporkan oleh Amazon EMR. Berikut ini adalah saran agar Anda dapat mulai, bukan daftar komprehensif. Untuk daftar lengkap metrik yang dilaporkan oleh Amazon EMR, lihat [Metrik dilaporkan oleh Amazon EMR di CloudWatch](#UsingEMR_ViewingMetrics_MetricsReported). 


****  

| Bagaimana cara saya? | Metrik Terkait | 
| --- | --- | 
| Melacak kemajuan klaster saya | Melihat metrik RunningMapTasks, RemainingMapTasks, RunningReduceTasks, dan RemainingReduceTasks.  | 
| Mendeteksi klaster yang menganggur | Metrik IsIdle melacak apakah klaster sedang siaga, namun bukan merupakan tugas yang sedang berjalan. Anda dapat mengatur alarm untuk berbunyi ketika klaster telah menganggur selama jangka waktu tertentu, seperti tiga puluh menit.  | 
| Mendeteksi ketika sebuah simpul kehabisan penyimpanan | MRUnhealthyNodesMetrik melacak ketika satu atau lebih node inti atau tugas kehabisan penyimpanan disk lokal dan transisi ke status UNHEALTHY YARN. Misalnya, node inti atau tugas kehabisan ruang disk dan tidak akan dapat menjalankan tugas. | 
| Mendeteksi ketika cluster kehabisan penyimpanan | HDFSUtilizationMetrik memantau kapasitas HDFS gabungan cluster, dan dapat memerlukan pengubahan ukuran cluster untuk menambahkan lebih banyak node inti. Misalnya, pemanfaatan HDFS tinggi, yang dapat mempengaruhi pekerjaan dan kesehatan cluster.  | 
| Mendeteksi saat cluster berjalan pada kapasitas yang berkurang | MRLostNodesMetrik melacak ketika satu atau lebih inti atau node tugas tidak dapat berkomunikasi dengan node master. Misalnya, inti atau node tugas tidak dapat dijangkau oleh node master. | 

Untuk informasi selengkapnya, lihat [Cluster EMR Amazon berakhir dengan NO\$1SLAVE\$1LEFT dan node inti FAILED\$1BY\$1MASTER](emr-cluster-NO_SLAVE_LEFT-FAILED_BY_MASTER.md) dan [AWSSupport-AnalyzeEMRLogs](https://docs.aws.amazon.com//systems-manager-automation-runbooks/latest/userguide/automation-awssupport-analyzeemrlogs.html). 

## Akses CloudWatch metrik untuk Amazon EMR
<a name="UsingEMR_ViewingMetrics_Access"></a>

Anda dapat melihat metrik yang dilaporkan Amazon EMR menggunakan CloudWatch konsol Amazon EMR atau konsol. CloudWatch Anda juga dapat mengambil metrik menggunakan perintah CloudWatch `[mon-get-stats](https://docs.aws.amazon.com/AmazonCloudWatch/latest/cli/cli-mon-get-stats.html)` CLI atau API. CloudWatch `[GetMetricStatistics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_GetMetricStatistics.html)` [Untuk informasi selengkapnya tentang melihat atau mengambil metrik untuk Amazon EMR menggunakan, CloudWatch lihat Panduan Pengguna Amazon. CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/)

------
#### [ Console ]

**Untuk melihat metrik dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih Cluster, lalu pilih **cluster** yang ingin Anda lihat metriknya. Ini membuka halaman detail cluster.

1. Pilih tab **Monitoring** pada halaman detail cluster. Pilih salah satu **status Cluster, status** **Node**, atau opsi **Input dan output** untuk memuat laporan tentang kemajuan dan kesehatan cluster. 

1. Setelah Anda memilih metrik untuk dilihat, Anda dapat memperbesar setiap grafik. Untuk memfilter kerangka waktu grafik Anda, pilih opsi yang telah diisi sebelumnya atau pilih **Kustom**.

------

## Metrik dilaporkan oleh Amazon EMR di CloudWatch
<a name="UsingEMR_ViewingMetrics_MetricsReported"></a>

Tabel berikut mencantumkan metrik yang dilaporkan Amazon EMR di konsol dan mendorong ke. CloudWatch

### Metrik Amazon EMR
<a name="emr-metrics-reported"></a>

Amazon EMR mengirimkan data untuk beberapa metrik ke. CloudWatch Semua klaster Amazon EMR secara otomatis mengirim metrik dalam interval lima menit. Metrik diarsipkan selama dua minggu; setelah periode itu, data akan dibuang. 

Namespace `AWS/ElasticMapReduce` mencakup metrik berikut.

**catatan**  
Amazon EMR menarik metrik dari klaster. Jika klaster menjadi tidak terjangkau, tidak ada metrik yang dilaporkan sampai klaster tersebut tersedia kembali.

Metrik berikut tersedia untuk klaster yang menjalankan versi Hadoop 2.x.


| Metrik | Deskripsi | 
| --- | --- | 
| Status Cluster | 
| IsIdle  | Menunjukkan bahwa klaster tidak lagi melakukan pekerjaan, tetapi masih hidup dan menimbulkan biaya. Diatur ke 1 jika tidak ada tugas yang berjalan dan tidak ada pekerjaan yang berjalan, dan diatur ke 0 jika sebaliknya. Nilai ini diperiksa pada interval lima menit dan nilai 1 hanya menunjukkan bahwa klaster tersebut menganggur ketika diperiksa, bukan bahwa klaster tersebut menganggur selama lima menit tersebut. Untuk menghindari positif yang salah, Anda harus menyalakan alarm ketika nilai ini 1 selama lebih dari satu pemeriksaan 5 menit berturut-turut. Misalnya, Anda mungkin menyalakan alarm pada nilai ini jika telah 1 selama tiga puluh menit atau lebih. Kasus penggunaan: Memantau performa klaster Unit: *Boolean*  | 
| ContainerAllocated  | Jumlah wadah sumber daya yang dialokasikan oleh. ResourceManager Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| ContainerReserved  | Jumlah kontainer yang disimpan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| ContainerPending  | Jumlah kontainer dalam antrean yang belum dialokasikan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| ContainerPendingRatio  | Rasio kontainer yang tertunda dengan kontainer yang dialokasikan (ContainerPendingRatio = ContainerPending / ContainerAllocated). Jika ContainerAllocated = 0, maka ContainerPendingRatio =ContainerPending. Nilai ContainerPendingRatio mewakili angka, bukan persentase. Nilai ini berguna untuk menskalakan sumber daya klaster berdasarkan perilaku alokasi kontainer. Unit: *Jumlah*  | 
| AppsCompleted  | Jumlah aplikasi yang dikirimkan ke YARN yang telah selesai. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| AppsFailed  | Jumlah aplikasi yang dikirimkan ke YARN yang gagal diselesaikan. Kasus penggunaan: Memantau kemajuan klaster, Memantau kesehatan klaster Unit: *Jumlah*  | 
| AppsKilled  | Jumlah aplikasi yang dikirimkan ke YARN yang telah dimatikan. Kasus penggunaan: Memantau kemajuan klaster, Memantau kesehatan klaster Unit: *Jumlah*  | 
| AppsPending  | Jumlah aplikasi yang dikirimkan ke YARN yang berada dalam status tertunda. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| AppsRunning  | Jumlah aplikasi yang dikirimkan ke YARN yang sedang berjalan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| AppsSubmitted  | Jumlah aplikasi yang dikirimkan ke YARN. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| Status Node | 
| CoreNodesRunning  | Jumlah simpul inti yang bekerja. Titik data untuk metrik ini hanya dilaporkan apabila grup instans yang sesuai tersedia. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| CoreNodesPending  | Jumlah simpul inti yang menunggu untuk ditugaskan. Semua simpul inti yang diminta mungkin tidak segera tersedia; metrik ini melaporkan permintaan yang tertunda. Titik data untuk metrik ini hanya dilaporkan apabila grup instans yang sesuai tersedia. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| LiveDataNodes  | Persentase simpul data yang menerima pekerjaan dari Hadoop. Kasus penggunaan: Memantau kesehatan klaster Unit: *Persen*  | 
| MRTotalNode  | Jumlah node yang saat ini tersedia untuk MapReduce pekerjaan. Setara dengan metrik YARN `mapred.resourcemanager.TotalNodes`. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah* Catatan: MRTotal Node hanya menghitung node yang saat ini aktif dalam sistem. YARN secara otomatis menghapus node yang dihentikan dari hitungan ini dan berhenti melacaknya, sehingga tidak dipertimbangkan dalam metrik MRTotal Node.  | 
| MRActiveNode  | Jumlah node yang saat ini menjalankan MapReduce tugas atau pekerjaan. Setara dengan metrik YARN `mapred.resourcemanager.NoOfActiveNodes`. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| MRLostNode  | Jumlah node yang dialokasikan untuk MapReduce yang telah ditandai dalam keadaan LOST. Setara dengan metrik YARN `mapred.resourcemanager.NoOfLostNodes`. Kasus penggunaan: Memantau kesehatan klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| MRUnhealthyNode  | Jumlah node yang tersedia untuk MapReduce pekerjaan yang ditandai dalam keadaan TIDAK SEHAT. Setara dengan metrik YARN `mapred.resourcemanager.NoOfUnhealthyNodes`. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| MRDecommissionedNode  | Jumlah node yang dialokasikan untuk MapReduce aplikasi yang telah ditandai dalam keadaan DECOMMISSIONED. Setara dengan metrik YARN `mapred.resourcemanager.NoOfDecommissionedNodes`. Kasus penggunaan: Memantau kesehatan klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| MRRebootedNode  | Jumlah node yang tersedia untuk MapReduce yang telah di-reboot dan ditandai dalam status REBOOTED. Setara dengan metrik YARN `mapred.resourcemanager.NoOfRebootedNodes`. Kasus penggunaan: Memantau kesehatan klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| MultiMasterInstanceGroupNodesRunning  | Jumlah simpul utama yang sedang berjalan. Kasus penggunaan: Memantau kegagalan dan penggantian simpul utama Unit: *Jumlah*  | 
| MultiMasterInstanceGroupNodesRunningPercentage  | Persentase simpul utama yang berjalan dibandingkan jumlah instans simpul utama yang diminta.  Kasus penggunaan: Memantau kegagalan dan penggantian simpul utama Unit: *Persen*  | 
| MultiMasterInstanceGroupNodesRequested  | Jumlah simpul utama yang diminta.  Kasus penggunaan: Memantau kegagalan dan penggantian simpul utama Unit: *Jumlah*  | 
| IO | 
| S3 BytesWritten  | Jumlah byte yang ditulis ke Amazon S3. Metrik ini hanya mengumpulkan MapReduce pekerjaan, dan tidak berlaku untuk beban kerja lain di Amazon EMR.  Kasus penggunaan: Menganalisis performa klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| S3 BytesRead  | Jumlah byte yang dibaca dari Amazon S3. Metrik ini hanya mengumpulkan MapReduce pekerjaan, dan tidak berlaku untuk beban kerja lain di Amazon EMR.  Kasus penggunaan: Menganalisis performa klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| HDFSUtilization  | Persentase penyimpanan HDFS yang saat ini digunakan. Kasus penggunaan: Menganalisis performa klaster Unit: *Persen*  | 
| HDFSBytesBaca  | Jumlah byte yang dibaca dari HDFS. Metrik ini hanya mengumpulkan MapReduce pekerjaan, dan tidak berlaku untuk beban kerja lain di Amazon EMR. Kasus penggunaan: Menganalisis performa klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| HDFSBytesDitulis  | Jumlah byte yang ditulis ke HDFS. Metrik ini hanya mengumpulkan MapReduce pekerjaan, dan tidak berlaku untuk beban kerja lain di Amazon EMR. Kasus penggunaan: Menganalisis performa klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| MissingBlocks  | Jumlah blok yang tidak ada replika HDFS. Ini mungkin blok rusak. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| CorruptBlocks  | Jumlah blok yang HDFS laporkan sebagai rusak. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| TotalLoad  | Jumlah total transfer data secara bersamaan. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| MemoryTotalMB  | Total jumlah memori dalam klaster. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| MemoryReservedMB  | Jumlah memori yang direservasi. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| MemoryAvailableMB  | Jumlah memori yang tersedia untuk dialokasikan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| YARNMemoryAvailablePercentage  | Persentase sisa memori yang tersedia untuk YARN (YARNMemoryAvailablePercentage = MemoryAvailable MB/MemoryTotalMB). Nilai ini berguna untuk menskalakan sumber daya klaster berdasarkan penggunaan memori YARN. Unit: *Persen*  | 
| MemoryAllocatedMB  | Jumlah memori yang dialokasikan ke klaster. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| PendingDeletionBlocks  | Jumlah blok yang ditandai untuk dihapus. Kasus penggunaan: Memantau kemajuan klaster, Memantau kesehatan klaster Unit: *Jumlah*  | 
| UnderReplicatedBlocks  | Jumlah blok yang perlu direplikasi satu kali atau lebih. Kasus penggunaan: Memantau kemajuan klaster, Memantau kesehatan klaster Unit: *Jumlah*  | 
| DfsPendingReplicationBlocks  | Status replikasi blok: blok direplikasi, umur permintaan replikasi, dan permintaan replikasi yang tidak berhasil. Kasus penggunaan: Memantau kemajuan klaster, Memantau kesehatan klaster Unit: *Jumlah*  | 
| CapacityRemainingGB  | Jumlah sisa kapasitas disk HDFS.  Kasus penggunaan: Memantau kemajuan klaster, Memantau kesehatan klaster Unit: *Jumlah*  | 

Berikut ini adalah metrik Hadoop 1:


| Metrik | Deskripsi | 
| --- | --- | 
| Status Cluster | 
| IsIdle  | Menunjukkan bahwa klaster tidak lagi melakukan pekerjaan, tetapi masih hidup dan menimbulkan biaya. Diatur ke 1 jika tidak ada tugas yang berjalan dan tidak ada pekerjaan yang berjalan, dan diatur ke 0 jika sebaliknya. Nilai ini diperiksa pada interval lima menit dan nilai 1 hanya menunjukkan bahwa klaster tersebut menganggur ketika diperiksa, bukan bahwa klaster tersebut menganggur selama lima menit tersebut. Untuk menghindari positif yang salah, Anda harus menyalakan alarm ketika nilai ini 1 selama lebih dari satu pemeriksaan 5 menit berturut-turut. Misalnya, Anda mungkin menyalakan alarm pada nilai ini jika telah 1 selama tiga puluh menit atau lebih. Kasus penggunaan: Memantau performa klaster Unit: *Boolean*  | 
| JobsRunning  | Jumlah pekerjaan di klaster yang sedang berjalan. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| JobsFailed  | Jumlah pekerjaan di klaster yang telah gagal. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| Peta/Kurangi | 
| MapTasksRunning  | Jumlah tugas pemetaan yang berjalan untuk setiap pekerjaan. Jika Anda memiliki penjadwal terpasang dan beberapa pekerjaan yang sedang berjalan, beberapa grafik akan dihasilkan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| MapTasksRemaining  | Jumlah sisa tugas pemetaan untuk setiap pekerjaan. Jika Anda memiliki penjadwal terpasang dan beberapa pekerjaan yang sedang berjalan, beberapa grafik akan dihasilkan. Tugas pemetaan yang tersisa adalah tugas yang tidak berada dalam salah satu status berikut: Berjalan, Dimatikan, atau Selesai. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| MapSlotsOpen  | Kapasitas tugas pemetaan yang tidak terpakai. Ini dihitung sebagai jumlah maksimum tugas pemetaan untuk klaster tertentu, dikurangi jumlah total tugas pemetaan yang saat ini berjalan di klaster tersebut. Kasus penggunaan: Menganalisis performa klaster Unit: *Count (Jumlah)*  | 
| RemainingMapTasksPerSlot  | Rasio total tugas pemetaan yang tersisa untuk total slot peta yang tersedia di klaster. Kasus penggunaan: Menganalisis performa klaster Unit: *Rasio*  | 
| ReduceTasksRunning  | Jumlah tugas peredaman yang berjalan untuk setiap pekerjaan. Jika Anda memiliki penjadwal terpasang dan beberapa pekerjaan yang sedang berjalan, beberapa grafik akan dihasilkan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| ReduceTasksRemaining  | Jumlah tugas peredaman yang tersisa untuk setiap pekerjaan. Jika Anda memiliki penjadwal terpasang dan beberapa pekerjaan yang sedang berjalan, beberapa grafik akan dihasilkan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| ReduceSlotsOpen  | Kapasitas tugas peredaman yang tidak terpakai. Ini dihitung sebagai kapasitas tugas peredaman maksimal untuk klaster tertentu, dikurangi jumlah tugas peredaman yang saat ini berjalan di klaster tersebut. Kasus penggunaan: Menganalisis performa klaster Unit: *Jumlah*  | 
| Status Node | 
| CoreNodesRunning  | Jumlah simpul inti yang bekerja. Titik data untuk metrik ini hanya dilaporkan apabila grup instans yang sesuai tersedia. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| CoreNodesPending  | Jumlah simpul inti yang menunggu untuk ditugaskan. Semua simpul inti yang diminta mungkin tidak segera tersedia; metrik ini melaporkan permintaan yang tertunda. Titik data untuk metrik ini hanya dilaporkan apabila grup instans yang sesuai tersedia. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| LiveDataNodes  | Persentase simpul data yang menerima pekerjaan dari Hadoop. Kasus penggunaan: Memantau kesehatan klaster Unit: *Persen*  | 
| TaskNodesRunning  | Jumlah simpul tugas yang bekerja. Titik data untuk metrik ini hanya dilaporkan apabila grup instans yang sesuai tersedia. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| TaskNodesPending  | Jumlah simpul tugas yang menunggu untuk ditugaskan. Semua simpul tugas yang diminta mungkin tidak segera tersedia; metrik ini melaporkan permintaan yang tertunda. Titik data untuk metrik ini hanya dilaporkan apabila grup instans yang sesuai tersedia. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| LiveTaskTrackers  | Persentase pelacak tugas yang fungsional. Kasus penggunaan: Memantau kesehatan klaster Unit: *Persen*  | 
| IO | 
| S3 BytesWritten  | Jumlah byte yang ditulis ke Amazon S3. Metrik ini hanya mengumpulkan MapReduce pekerjaan, dan tidak berlaku untuk beban kerja lain di Amazon EMR. Kasus penggunaan: Menganalisis performa klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| S3 BytesRead  | Jumlah byte yang dibaca dari Amazon S3. Metrik ini hanya mengumpulkan MapReduce pekerjaan, dan tidak berlaku untuk beban kerja lain di Amazon EMR. Kasus penggunaan: Menganalisis performa klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| HDFSUtilization  | Persentase penyimpanan HDFS yang saat ini digunakan. Kasus penggunaan: Menganalisis performa klaster Unit: *Persen*  | 
| HDFSBytesBaca  | Jumlah byte yang dibaca dari HDFS. Kasus penggunaan: Menganalisis performa klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| HDFSBytesDitulis  | Jumlah byte yang ditulis ke HDFS. Kasus penggunaan: Menganalisis performa klaster, Memantau kemajuan klaster Unit: *Jumlah*  | 
| MissingBlocks  | Jumlah blok yang tidak ada replika HDFS. Ini mungkin blok rusak. Kasus penggunaan: Memantau kesehatan klaster Unit: *Jumlah*  | 
| TotalLoad  | Saat ini, jumlah total pembaca dan penulis yang dilaporkan oleh semua DataNodes dalam satu cluster. Kasus penggunaan: Mendiagnosis sejauh mana tinggi I/O mungkin berkontribusi pada kinerja pelaksanaan pekerjaan yang buruk. Node pekerja yang menjalankan DataNode daemon juga harus melakukan peta dan mengurangi tugas. TotalLoad Nilai tinggi yang terus-menerus dari waktu ke waktu dapat menunjukkan bahwa tinggi I/O mungkin menjadi faktor yang berkontribusi terhadap kinerja yang buruk. Lonjakan sesekali dalam nilai ini biasa terjadi dan biasanya tidak menunjukkan adanya masalah. Unit: *Jumlah*  | 

#### Metrik kapasitas klaster
<a name="emr-metrics-managed-scaling"></a>

Metrik berikut menunjukkan kapasitas saat ini atau kapasitas target suatu klaster. Metrik ini hanya tersedia saat penskalaan terkelola atau penghentian otomatis diaktifkan. 

Untuk klaster yang terdiri dari armada instans, metrik kapasitas klaster diukur dalam `Units`. Untuk klaster yang terdiri dari grup instans, metrik kapasitas klaster diukur dalam `Nodes` atau `VCPU` berdasarkan jenis unit yang digunakan dalam kebijakan penskalaan terkelola. Untuk informasi selengkapnya, lihat [Menggunakan penskalaan terkelola EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-scaling.html) dalam *Panduan Pengelolaan Amazon EMR*.


| Metrik | Deskripsi | 
| --- | --- | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/UsingEMR_ViewingMetrics.html) | Jumlah total target units/nodes/vCPUs dalam sebuah cluster sebagaimana ditentukan oleh scaling terkelola. Unit: *Count (Jumlah)*  | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/UsingEMR_ViewingMetrics.html)  | Jumlah total saat ini yang units/nodes/vCPUs tersedia di cluster yang sedang berjalan. Ketika ada permintaan perubahan ukuran klaster, metrik ini akan diperbarui setelah instans baru ditambahkan atau dihapus dari klaster. Unit: *Jumlah*  | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/UsingEMR_ViewingMetrics.html)  | Jumlah target CORE units/nodes/vCPUs dalam sebuah cluster ditentukan oleh scaling terkelola. Unit: *Count (Jumlah)*  | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/UsingEMR_ViewingMetrics.html)  | Jumlah CORE saat ini units/nodes/vCPUs berjalan dalam sebuah cluster. Unit: *Count (Jumlah)*  | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/UsingEMR_ViewingMetrics.html)  | Jumlah target TASK units/nodes/vCPUs dalam klaster yang ditentukan oleh penskalaan terkelola. Unit: *Count (Jumlah)*  | 
| [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/UsingEMR_ViewingMetrics.html)  | Jumlah TASK saat ini units/nodes/vCPUs berjalan dalam sebuah cluster. Unit: *Count (Jumlah)*  | 

Amazon EMR memancarkan metrik berikut dengan perincian satu menit saat Anda mengaktifkan penghentian otomatis menggunakan kebijakan penghentian otomatis. Beberapa metrik hanya tersedia untuk Amazon EMR versi 6.4.0 dan yang lebih baru. Untuk mempelajari lebih lanjut tentang penghentian otomatis, lihat[Menggunakan kebijakan penghentian otomatis untuk pembersihan klaster EMR Amazon](emr-auto-termination-policy.md).


****  

| Metrik | Deskripsi | 
| --- | --- | 
| TotalNotebookKernels | Jumlah total kernel notebook yang berjalan dan idle di cluster. Metrik ini hanya tersedia untuk Amazon EMR versi 6.4.0 dan yang lebih baru. | 
| AutoTerminationIsClusterIdle | Menunjukkan apakah cluster sedang digunakan.Nilai **0** menunjukkan bahwa cluster digunakan secara aktif oleh salah satu komponen berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/UsingEMR_ViewingMetrics.html) Nilai **1** menunjukkan bahwa cluster menganggur. Amazon EMR memeriksa kemalasan cluster berkelanjutan (`AutoTerminationIsClusterIdle`= 1). Jika waktu idle klaster sama dengan `IdleTimeout` nilai dalam kebijakan penghentian otomatis, Amazon EMR akan menghentikan klaster.  | 

### Dimensi untuk metrik Amazon EMR
<a name="emr-metrics-dimensions"></a>

Data Amazon EMR dapat difilter menggunakan salah satu dimensi dalam tabel berikut. 


| Dimensi  | Deskripsi  | 
| --- | --- | 
| JobFlowId | Sama seperti ID klaster, yang merupakan pengidentifikasi unik klaster dalam bentuk j-XXXXXXXXXXXXX. Temukan nilai ini dengan mengklik klaster yang dimaksud dalam konsol Amazon EMR.  | 

# Memantau peristiwa EMR Amazon dengan CloudWatch
<a name="emr-manage-cloudwatch-events"></a>

Amazon EMR melacak peristiwa dan menyimpan informasi tentangnya hingga tujuh hari di konsol EMR Amazon. Amazon EMR merekam peristiwa ketika ada perubahan dalam status klaster, grup instans, armada instance, kebijakan penskalaan otomatis, atau langkah. Peristiwa menangkap tanggal dan waktu peristiwa terjadi, detail tentang elemen yang terpengaruh, dan titik data penting lainnya.

Tabel berikut mencantumkan peristiwa EMR Amazon, bersama dengan perubahan status atau status yang ditunjukkan peristiwa, tingkat keparahan peristiwa, jenis peristiwa, kode peristiwa, dan pesan peristiwa. Amazon EMR mewakili peristiwa sebagai objek JSON dan secara otomatis mengirimkannya ke aliran acara. Objek JSON penting ketika Anda mengatur aturan untuk pemrosesan acara menggunakan CloudWatch Acara karena aturan berusaha untuk mencocokkan pola dalam objek JSON. Untuk informasi selengkapnya, lihat [Pola acara dan peristiwa](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/CloudWatchEventsandEventPatterns.html) serta [peristiwa EMR](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#emr_event_type) Amazon di *Panduan Pengguna CloudWatch Acara Amazon*.

**catatan**  
EMR secara berkala memancarkan peristiwa dengan **penyediaan kode acara EC2** - Kapasitas Instans Tidak Cukup. Peristiwa ini terjadi ketika klaster EMR Amazon Anda mengalami kesalahan kapasitas yang tidak mencukupi dari Amazon EMR untuk armada instans atau grup instans Anda selama operasi pembuatan atau pengubahan ukuran klaster. Suatu peristiwa mungkin tidak menyertakan semua jenis instans dan yang telah AZs Anda berikan, karena EMR hanya menyertakan jenis instans dan AZs berusaha menyediakan kapasitas sejak peristiwa kapasitas Tidak Cukup terakhir dipancarkan. Untuk informasi tentang cara menanggapi peristiwa ini, lihat [Menanggapi peristiwa kapasitas instans tidak mencukupi klaster Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-events-response-insuff-capacity.html).

## Acara awal cluster
<a name="emr-cloudwatch-cluster-events"></a>


| Status atau perubahan status | Kepelikan | Tipe peristiwa | Kode acara | Pesan | 
| --- | --- | --- | --- | --- | 
| CREATING | WARN | Penyediaan armada instans EMR | Penyediaan EC2 - Kapasitas Instans Tidak Cukup | Kami tidak dapat membuat klaster EMR Amazon Anda untuk Armada Instans Amazon InstanceFleetID EC2 memiliki kapasitas Spot yang tidak mencukupi ClusterId (ClusterName) untuk jenis Instans dan kapasitas Sesuai Permintaan yang tidak mencukupi untuk [Instancetype1, Instancetype2] jenis Instans di Availability Zone. [Instancetype3, Instancetype4] [AvailabilityZone1, AvaliabilityZone2] Lihat [dokumentasi](emr-EC2_INSUFFICIENT_CAPACITY-error.md) di sini untuk informasi lebih lanjut tentang cara menanggapi acara ini. | 
| CREATING | WARN | Penyediaan grup instans EMR | Penyediaan EC2 - Kapasitas Instans Tidak Cukup | Kami tidak dapat membuat klaster EMR Amazon Anda untuk Grup Instans Amazon InstanceGroupID EC2 memiliki kapasitas Spot yang tidak mencukupi ClusterId (ClusterName) untuk jenis Instans dan kapasitas Sesuai Permintaan yang tidak mencukupi untuk [Instancetype1, Instancetype2] jenis Instans di Availability Zone. [Instancetype3, Instancetype4] [AvailabilityZone1, AvaliabilityZone2] Lihat [dokumentasi](emr-EC2_INSUFFICIENT_CAPACITY-error.md) di sini untuk informasi lebih lanjut tentang cara menanggapi acara ini. | 
| CREATING | WARN | Penyediaan armada instans EMR | Penyediaan EC2 - Alamat Gratis Tidak Cukup Di Subnet | Kami tidak dapat membuat klaster EMR Amazon ClusterId (ClusterName) yang Anda minta untuk armada instance InstanceFleetID karena subnet yang ditentukan [Subnet1, Subnet2] tidak berisi cukup alamat IP pribadi gratis untuk memenuhi permintaan Anda. Gunakan DescribeSubnets operasi untuk melihat berapa banyak alamat IP yang tersedia (tidak digunakan) di subnet Anda. Untuk informasi tentang cara menanggapi peristiwa ini, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html) | 
| CREATING | WARN | Penyediaan grup instans EMR | Penyediaan EC2 - Alamat Gratis Tidak Cukup Di Subnet | Kami tidak dapat membuat klaster EMR Amazon ClusterId (ClusterName) yang Anda minta untuk grup instans InstanceGroupID karena subnet yang ditentukan [Subnet1, Subnet2] tidak berisi cukup alamat IP pribadi gratis untuk memenuhi permintaan Anda. Gunakan DescribeSubnets operasi untuk melihat berapa banyak alamat IP yang tersedia (tidak digunakan) di subnet Anda. Untuk informasi tentang cara menanggapi peristiwa ini, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html) | 
| CREATING  | WARN  | Penyediaan armada instans EMR  | Penyediaan EC2 - Batas vCPU Terlampaui  | Penyediaan InstanceFleetID di kluster EMR Amazon ClusterId (ClusterName) tertunda karena Anda telah mencapai batas jumlah v CPUs (unit pemrosesan virtual) yang ditetapkan ke instance yang sedang berjalan di Anda. account (accountId) Untuk informasi selengkapnya, [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html)  | 
| CREATING  | WARN  | Penyediaan grup instans EMR  | Penyediaan EC2 - Batas vCPU Terlampaui  | Penyediaan grup instans InstanceGroupID di klaster EMR Amazon ClusterId tertunda karena Anda telah mencapai batas jumlah v CPUs (unit pemrosesan virtual) yang ditetapkan ke instans yang sedang berjalan di akun Anda. (accountId) Untuk informasi selengkapnya, [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html)  | 
| CREATING  | WARN  | Penyediaan armada instans EMR  | Penyediaan EC2 - Batas Hitungan Instans Spot Terlampaui  | Penyediaan armada instans InstanceFleetID di klaster EMR Amazon ClusterID (ClusterName) tertunda karena Anda telah mencapai batas jumlah Instans Spot yang dapat Anda luncurkan. account (accountId) Untuk informasi selengkapnya, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).  | 
| CREATING  | WARN  | Penyediaan grup instans EMR  | Penyediaan EC2 - Batas Hitungan Instans Spot Terlampaui  | Penyediaan grup instans InstanceGroupID di klaster EMR Amazon ClusterID (ClusterName) tertunda karena Anda telah mencapai batas jumlah Instans Spot yang dapat Anda luncurkan. account (accountId) Untuk informasi selengkapnya, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).  | 
| CREATING  | WARN  | Penyediaan armada instans EMR  | Penyediaan EC2 - Batas Instans Terlampaui  | Penyediaan armada instans InstanceFleetID di kluster EMR Amazon ClusterId (ClusterName) tertunda karena Anda telah mencapai batas jumlah instans yang dapat dijalankan secara bersamaan di. account (accountID) Untuk informasi selengkapnya tentang batas layanan Amazon EC2, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).  | 
| CREATING  | WARN  | Penyediaan grup instans EMR  | Penyediaan EC2 - Batas Instans Terlampaui  | Penyediaan grup instans InstanceGroupID di kluster EMR Amazon ClusterId (ClusterName) tertunda karena Anda telah mencapai batas jumlah instans yang dapat dijalankan secara bersamaan. account (accountID) Untuk informasi selengkapnya tentang batas layanan Amazon EC2, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).  | 
| CREATING | WARN | Penyediaan grup instans EMR | *tidak ada* | Cluster Amazon EMR `ClusterId (ClusterName)` dibuat di `Time` dan siap digunakan. - atau -  Cluster Amazon EMR `ClusterId (ClusterName)` selesai menjalankan semua langkah yang tertunda di. `Time`  Sebuah cluster di `WAITING` negara bagian mungkin masih memproses pekerjaan.   | 
| STARTING  | INFO  | Perubahan status cluster EMR  | *tidak ada*  | Cluster Amazon EMR `ClusterId (ClusterName)` diminta `Time` dan sedang dibuat.  | 
| STARTING  | INFO  | Perubahan status cluster EMR  | *tidak ada*  |  Hanya berlaku untuk cluster dengan konfigurasi armada instans dan beberapa Availability Zone yang dipilih dalam Amazon EC2.  Cluster EMR Amazon `ClusterId (ClusterName)` sedang dibuat di zone (`AvailabilityZoneID`), yang dipilih dari opsi Availability Zone yang ditentukan.  | 
| STARTING  | INFO  | Perubahan status cluster EMR  | *tidak ada*  | Cluster Amazon EMR `ClusterId (ClusterName)` mulai menjalankan langkah-langkah di. `Time`  | 
| WAITING  | INFO  | Perubahan status cluster EMR  | *tidak ada*  | Cluster Amazon EMR `ClusterId (ClusterName)` dibuat di `Time` dan siap digunakan. - atau -  Cluster Amazon EMR `ClusterId (ClusterName)` selesai menjalankan semua langkah yang tertunda di. `Time`  Sebuah cluster di `WAITING` negara bagian mungkin masih memproses pekerjaan.   | 

**catatan**  
Peristiwa dengan kode peristiwa muncul `EC2 provisioning - Insufficient Instance Capacity` secara berkala saat klaster EMR Anda mengalami kesalahan kapasitas yang tidak mencukupi dari Amazon EC2 untuk armada instans atau grup instans Anda selama operasi pembuatan atau pengubahan ukuran klaster. Untuk informasi tentang cara menanggapi peristiwa ini, lihat[Menanggapi peristiwa kapasitas instans Amazon EMR cluster yang tidak mencukupi](emr-events-response-insuff-capacity.md).

## Peristiwa penghentian klaster
<a name="emr-cloudwatch-cluster-termination-events"></a>


| Status atau perubahan status | Kepelikan | Tipe peristiwa | Kode acara | Pesan | 
| --- | --- | --- | --- | --- | 
| TERMINATED  | Tingkat kepelikan tergantung pada alasan perubahan status, seperti yang ditunjukkan pada hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/emr-manage-cloudwatch-events.html)  | Perubahan status cluster EMR  | *tidak ada*  | Amazon EMR Cluster `ClusterId (ClusterName)` telah dihentikan pada `Time` dengan alasan. `StateChangeReason:Code`  | 
| TERMINATED\$1WITH\$1ERRORS  | CRITICAL  | Perubahan status cluster EMR  | *tidak ada*  | Amazon EMR Cluster `ClusterId (ClusterName)` telah diakhiri dengan kesalahan di `Time` dengan alasan. `StateChangeReason:Code`  | 
| TERMINATED\$1WITH\$1ERRORS  | CRITICAL  | Perubahan status cluster EMR  | *tidak ada*  | Amazon EMR Cluster `ClusterId (ClusterName)` telah diakhiri dengan kesalahan di `Time` dengan alasan. `StateChangeReason:Code`  | 

## Instance peristiwa perubahan negara armada
<a name="emr-cloudwatch-instance-fleet-events"></a>

**catatan**  
Konfigurasi armada instance hanya tersedia di Amazon EMR rilis 4.8.0 dan yang lebih baru, tidak termasuk 5.0.0 dan 5.0.3.


****  

| Status atau perubahan status | Kepelikan | Tipe peristiwa | Kode acara | Pesan | 
| --- | --- | --- | --- | --- | 
| Dari `PROVISIONING` ke `WAITING`  | INFO  |  | tidak ada | Penyediaan misalnya armada di `InstanceFleetID` klaster EMR Amazon selesai. `ClusterId (ClusterName)` Penyediaan dimulai pada `Time` dan memakan `Num` waktu beberapa menit. Armada instans sekarang memiliki kapasitas On-Demand `Num` dan kapasitas Spot. `Num` Kapasitas Target On-Demand adalah`Num`, dan kapasitas Spot target adalah`Num`.  | 
| Dari `WAITING` ke `RESIZING`  | INFO  |  | tidak ada | Pengubahan ukuran armada misalnya `InstanceFleetID` di `ClusterId (ClusterName)` cluster EMR Amazon dimulai pada. `Time` Armada instans mengubah ukuran dari kapasitas On-Demand `Num` ke target`Num`, dan dari kapasitas Spot `Num` ke target. `Num`  | 
| Dari `RESIZING` ke `WAITING`  | INFO  |  | tidak ada | Operasi pengubahan ukuran untuk armada misalnya `InstanceFleetID` di `ClusterId (ClusterName)` cluster EMR Amazon selesai. Pengubahan ukuran dimulai pada `Time` dan memakan waktu `Num` beberapa menit. Armada instans sekarang memiliki kapasitas On-Demand `Num` dan kapasitas Spot. `Num` Kapasitas Target On-Demand adalah `Num` dan kapasitas Spot target adalah`Num`.  | 
| Dari `RESIZING` ke `WAITING`  | INFO  |  | tidak ada | Operasi pengubahan ukuran misalnya armada `InstanceFleetID` di `ClusterId (ClusterName)` cluster EMR Amazon telah mencapai batas waktu dan berhenti. Pengubahan ukuran dimulai pada `Time` dan berhenti setelah `Num` beberapa menit. Armada instans sekarang memiliki kapasitas On-Demand `Num` dan kapasitas Spot. `Num` Kapasitas Target On-Demand adalah `Num` dan kapasitas Spot target adalah`Num`.  | 
| SUSPENDED  | ERROR  |  | tidak ada | Armada instans `InstanceFleetID` di cluster EMR Amazon `ClusterId (ClusterName)` ditangkap karena `Time` alasan berikut:. `ReasonDesc`  | 
| RESIZING  | WARNING  |  | tidak ada | Operasi pengubahan ukuran untuk armada misalnya `InstanceFleetID` di `ClusterId (ClusterName)` cluster EMR Amazon macet karena alasan berikut:. `ReasonDesc`  | 
| `WAITING` atau `Running`  | INFO  |  | tidak ada | Operasi pengubahan ukuran misalnya armada `InstanceFleetID` di `ClusterId (ClusterName)` klaster EMR Amazon tidak dapat diselesaikan sementara Amazon EMR menambahkan kapasitas Spot di zona ketersediaan. `AvailabilityZone` Kami telah membatalkan permintaan Anda untuk menyediakan kapasitas Spot tambahan. Untuk tindakan yang disarankan, periksa [Fleksibilitas Availability Zone untuk klaster EMR Amazon](emr-flexibility.md) dan coba lagi.  | 
| `WAITING` atau `Running`  | INFO  |  | tidak ada | Operasi pengubahan ukuran untuk armada misalnya `InstanceFleetID` di `ClusterId (ClusterName)` cluster EMR Amazon dimulai `Entity` oleh at. `Time`  | 

## Acara konfigurasi ulang armada instance
<a name="emr-cloudwatch-instance-fleet-events-reconfig"></a>


****  

| Status atau perubahan status | Kepelikan | Pesan | 
| --- | --- | --- | 
| Konfigurasi Ulang Armada Instance Diminta  | INFO  | Pengguna telah meminta untuk mengkonfigurasi ulang armada instans `InstanceFleetID` di Amazon EMR `ClusterId` cluster `ClusterName` ().  | 
| Konfigurasi Ulang Armada Instance Mulai  | INFO  | Amazon EMR telah memulai konfigurasi ulang armada instans di cluster EMR Amazon () `InstanceFleetID` di. `ClusterId` `ClusterName` `Time`  | 
| Konfigurasi Ulang Armada Instance Selesai  | INFO  | Amazon EMR telah selesai mengonfigurasi ulang armada instans di klaster EMR `InstanceFleetID` Amazon (). `ClusterId` `ClusterName`  | 
| Konfigurasi Ulang Armada Instance Gagal  | WARNING  | Amazon EMR gagal mengonfigurasi ulang armada `InstanceFleetID` instans di cluster EMR Amazon () di. `ClusterId` `ClusterName` `Time` Konfigurasi ulang gagal karena`Reason`.  | 
| Mulai Pengembalian Konfigurasi Ulang Armada Instance  | INFO  | Amazon EMR mengembalikan armada `InstanceFleetID` instans di cluster EMR Amazon `ClusterId` (`ClusterName`) ke konfigurasi yang berhasil sebelumnya.  | 
| Pengembalian Konfigurasi Ulang Armada Instance Selesai  | INFO  | Amazon EMR selesai mengembalikan armada `InstanceFleetID` instans di cluster EMR Amazon `ClusterId` (`ClusterName`) ke konfigurasi yang berhasil sebelumnya.  | 
| Pengembalian Konfigurasi Ulang Armada Instance Gagal  | CRITICAL  | Amazon EMR tidak dapat mengembalikan armada `InstanceFleetID` instans di cluster EMR Amazon `ClusterId` (`ClusterName`) ke konfigurasi yang sebelumnya berhasil di. `Time` Pengembalian konfigurasi ulang gagal karena. `Reason`  | 
| Pengembalian Konfigurasi Ulang Armada Instance Diblokir  | INFO  | Amazon EMR biasanya memblokir armada instans di cluster EMR `InstanceFleetID` Amazon `ClusterId` (`ClusterName`) di `Time` karena armada instans berada di negara bagian. `State`  | 

## Acara mengubah ukuran armada instance
<a name="emr-cloudwatch-instance-fleet-resize-events"></a>


****  

| Tipe peristiwa | Kepelikan | Kode acara | Pesan | 
| --- | --- | --- | --- | 
| Pengubahan ukuran armada instans EMR   | ERROR | Batas Waktu Penyediaan Spot  | Operasi Resize untuk Instance Fleet `InstanceFleetID` di Amazon EMR `ClusterId (ClusterName)` cluster tidak dapat diselesaikan saat memperoleh kapasitas Spot di AZ. `AvailabilityZone` Kami sekarang telah membatalkan permintaan Anda dan berhenti mencoba menyediakan kapasitas Spot tambahan dan Armada Instance telah menyediakan kapasitas Spot sebesar. `num` Kapasitas Spot Target adalah`num`. Untuk informasi lebih lanjut dan tindakan yang disarankan, silakan periksa halaman dokumentasi [di sini](emr-flexibility.md) dan coba lagi.  | 
| Pengubahan ukuran armada instans EMR   | ERROR | Batas Waktu Penyediaan Sesuai Permintaan  | Operasi Resize untuk Instance Fleet `InstanceFleetID` di Amazon EMR `ClusterId (ClusterName)` cluster tidak dapat diselesaikan saat memperoleh kapasitas On-Demand di AZ. `AvailabilityZone` Kami sekarang telah membatalkan permintaan Anda dan berhenti mencoba menyediakan kapasitas On-Demand tambahan dan Armada Instance telah menyediakan kapasitas On-Demand sebesar. `num` Kapasitas Target On-Demand adalah`num`. Untuk informasi lebih lanjut dan tindakan yang disarankan, silakan periksa halaman dokumentasi [di sini](emr-flexibility.md) dan coba lagi.  | 
| Pengubahan ukuran armada instans EMR   | WARNING | Penyediaan EC2 - Kapasitas Instans Tidak Cukup | Kami tidak dapat menyelesaikan operasi pengubahan ukuran untuk Armada Instance `InstanceFleetID` di `ClusterId (ClusterName)` klaster EMR karena Amazon EC2 memiliki kapasitas Spot yang tidak mencukupi untuk jenis Instans dan kapasitas Sesuai Permintaan yang tidak mencukupi untuk `[Instancetype1, Instancetype2]` tipe Instans di Availability Zone. `[Instancetype3, Instancetype4]` `[AvailabilityZone1]` Sejauh ini, armada instans telah menyediakan kapasitas On-Demand `num` dan target kapasitas On-Demand adalah. `num` Kapasitas Spot yang disediakan adalah `num` dan kapasitas Spot target adalah. `num` Lihat [dokumentasi](emr-EC2_INSUFFICIENT_CAPACITY-error.md) di sini untuk informasi lebih lanjut tentang cara menanggapi acara ini.  | 
| Pengubahan ukuran armada instans EMR   | WARNING | Batas Waktu Penyediaan Spot - Mengubah Ukuran Terus  | Kami masih menyediakan kapasitas Spot untuk operasi pengubahan ukuran Armada Instance yang dimulai pada `time` misalnya ID armada di cluster EMR `InstanceFleetID` Amazon untuk di AZ. `ClusterId (ClusterName)` `[Instancetype1, Instancetype2]` `AvailabilityZone` Untuk operasi pengubahan ukuran sebelumnya yang dimulai pada`time`, periode batas waktu berakhir, sehingga Amazon EMR menghentikan penyediaan kapasitas Spot setelah menambahkan `num` instans yang diminta ke armada instans Anda. `num` Untuk informasi lebih lanjut, silakan periksa halaman dokumentasi [di sini](emr-flexibility.md). | 
| Pengubahan ukuran armada instans EMR   | WARNING | Batas Waktu Penyediaan Sesuai Permintaan - Mengubah Ukuran Terus  | Kami masih menyediakan kapasitas Sesuai Permintaan untuk operasi pengubahan ukuran Armada Instance yang dimulai pada misalnya ID armada di `time` klaster EMR `InstanceFleetID` Amazon untuk di AZ. `ClusterId (ClusterName)` `[Instancetype1, Instancetype2]` `AvailabilityZone` Untuk operasi pengubahan ukuran sebelumnya yang dimulai pada`time`, periode batas waktu berakhir, sehingga Amazon EMR berhenti menyediakan kapasitas Sesuai Permintaan setelah menambahkan `num` instans yang diminta ke armada instans Anda. `num` Untuk informasi lebih lanjut, silakan periksa halaman dokumentasi [di sini](emr-flexibility.md). | 
| Pengubahan ukuran armada instans EMR   | WARNING | Penyediaan EC2 - Alamat Gratis Tidak Cukup di Subnet  | Kami tidak dapat menyelesaikan operasi pengubahan ukuran untuk armada instance InstanceFleetID di ClusterId (ClusterName) klaster EMR Amazon karena subnet yang ditentukan [Subnet1, Subnet2] tidak berisi cukup alamat IP pribadi gratis untuk memenuhi permintaan Anda. Gunakan DescribeSubnets operasi untuk melihat berapa banyak alamat IP yang tersedia (tidak digunakan) di subnet Anda. Untuk informasi tentang cara merespons peristiwa ini, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html). | 
| Pengubahan ukuran armada instans EMR   | WARNING | Penyediaan EC2 - Batas vCPU Terlampaui  | Pengubahan ukuran armada instans InstanceFleetID di ClusterName klaster EMR Amazon tertunda karena Anda telah mencapai batas jumlah CPUs v (unit pemrosesan virtual) yang ditetapkan ke instans yang sedang berjalan di instans Anda. account (accountId) Untuk informasi selengkapnya, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html). | 
| Pengubahan ukuran armada instans EMR  | WARNING | Penyediaan EC2 - Batas Hitungan Instans Spot Terlampaui  | Penyediaan armada instans InstanceFleetID di klaster EMR Amazon ClusterID (ClusterName) tertunda karena Anda telah mencapai batas jumlah Instans Spot yang dapat Anda luncurkan. account (accountId) Untuk informasi selengkapnya, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).  | 
| Pengubahan ukuran armada instans EMR   | WARNING | Penyediaan EC2 - Batas Instans Terlampaui  | Penyediaan armada instans InstanceFleetID di klaster EMR Amazon ClusterID (ClusterName) tertunda karena Anda telah mencapai batas jumlah instans sesuai permintaan yang dapat Anda jalankan. account (accountId) Untuk informasi selengkapnya tentang [kode Kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).  | 

**catatan**  
Peristiwa batas waktu penyediaan dipancarkan saat Amazon EMR berhenti menyediakan kapasitas Spot atau On-Demand untuk armada setelah batas waktu berakhir. Untuk informasi tentang cara menanggapi peristiwa ini, lihat[Menanggapi peristiwa batas waktu tunggu armada instans cluster EMR Amazon](emr-events-response-timeout-events.md).

## Peristiwa grup instans
<a name="emr-cloudwatch-instance-group-events"></a>


****  

| Tipe peristiwa | Kepelikan | Kode acara | Pesan | 
| --- | --- | --- | --- | 
| Dari `RESIZING` ke `Running`  | INFO  | tidak ada | Operasi pengubahan ukuran untuk grup instans `InstanceGroupID` di `ClusterId (ClusterName)` klaster EMR Amazon selesai. Sekarang memiliki hitungan instance`Num`. Pengubahan ukuran dimulai pada `Time` dan membutuhkan waktu `Num` beberapa menit untuk menyelesaikannya.  | 
| Dari `RUNNING` ke `RESIZING`  | INFO  | tidak ada | Pengubahan ukuran untuk grup instans `InstanceGroupID` di `ClusterId (ClusterName)` klaster EMR Amazon dimulai pada. `Time` Ini mengubah ukuran dari hitungan instance `Num` ke`Num`.  | 
| SUSPENDED  | ERROR  | tidak ada | Grup instans `InstanceGroupID` di cluster EMR Amazon `ClusterId (ClusterName)` ditangkap karena `Time` alasan berikut:. `ReasonDesc`  | 
| RESIZING  | WARNING  | tidak ada | Operasi pengubahan ukuran untuk grup instans `InstanceGroupID` di `ClusterId (ClusterName)` klaster EMR Amazon macet karena alasan berikut:. `ReasonDesc`  | 
| Pengubahan ukuran grup instans EMR   | WARNING | Penyediaan EC2 - Kapasitas Instans Tidak Cukup | Kami tidak dapat menyelesaikan operasi pengubahan ukuran yang dimulai pada Grup Instance di `ClusterId (ClusterName)` klaster EMR `time` karena Amazon EC2 `Spot/On Demand` tidak memiliki kapasitas yang cukup untuk jenis Instans `InstanceGroupID` `[Instancetype]` di Availability Zone. `[AvailabilityZone1]` Sejauh ini, grup instance memiliki jumlah instance yang berjalan `num` dan jumlah instance yang diminta adalah`num`. Lihat [dokumentasi](emr-EC2_INSUFFICIENT_CAPACITY-error.md) di sini untuk informasi lebih lanjut tentang cara menanggapi acara ini.  | 
| Pengubahan ukuran grup instans EMR   | WARNING | Penyediaan EC2 - Alamat Gratis Tidak Cukup di Subnet  | Kami tidak dapat menyelesaikan operasi pengubahan ukuran untuk grup instans InstanceGroupID di ClusterId (ClusterName) klaster EMR Amazon karena subnet yang ditentukan [Subnet1, Subnet2] tidak berisi alamat IP pribadi gratis yang cukup untuk memenuhi permintaan Anda. Gunakan DescribeSubnets operasi untuk melihat berapa banyak alamat IP yang tersedia (tidak digunakan) di subnet Anda. Untuk informasi tentang cara merespons peristiwa ini, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html). | 
| Pengubahan ukuran grup instans EMR   | WARNING | Penyediaan EC2 - Batas vCPU Terlampaui  | Pengubahan ukuran grup instans InstanceGroupID di ClusterName klaster EMR Amazon tertunda karena Anda telah mencapai batas jumlah CPUs v (unit pemrosesan virtual) yang ditetapkan ke instans yang sedang berjalan di instans Anda. account (accountId) Untuk informasi selengkapnya, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html). | 
| Pengubahan ukuran grup instans EMR   | WARNING | Penyediaan EC2 - Batas Hitungan Instans Spot Terlampaui  | Penyediaan grup instans InstanceGroupID di klaster EMR Amazon ClusterID (ClusterName) tertunda karena Anda telah mencapai batas jumlah Instans Spot yang dapat Anda luncurkan. account (accountId) Untuk informasi selengkapnya, lihat [Kode kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).  | 
| Pengubahan ukuran grup instans EMR   | WARNING | Penyediaan EC2 - Batas Instans Terlampaui  | Penyediaan grup instans InstanceGroupID di klaster EMR Amazon ClusterID (ClusterName) tertunda karena Anda telah mencapai batas jumlah instans sesuai permintaan yang dapat Anda jalankan. account (accountId) Untuk informasi selengkapnya tentang [kode Kesalahan untuk Amazon EC2 API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).  | 
| Dari `RUNNING` ke `RESIZING`  | INFO  | tidak ada | Pengubahan ukuran untuk grup instans `InstanceGroupID` di `ClusterId (ClusterName)` klaster EMR Amazon dimulai `Entity` oleh at. `Time`  | 

**catatan**  
Dengan Amazon EMR versi 5.21.0 dan yang lebih baru, Anda dapat mengganti konfigurasi klaster dan menentukan klasifikasi konfigurasi tambahan untuk setiap grup instans dalam klaster berjalan. Anda melakukan ini dengan menggunakan konsol Amazon EMR, the AWS Command Line Interface (AWS CLI), atau SDK AWS . Untuk informasi lebih lanjut, lihat [Menyediakan Konfigurasi untuk Grup Instans dalam Klaster Berjalan](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps-running-cluster.html).

Tabel berikut mencantumkan peristiwa Amazon EMR, untuk operasi konfigurasi ulang, bersama dengan status atau perubahan status yang ditunjukkan oleh peristiwa tersebut, kepelikan peristiwa, dan pesan peristiwa. 


****  

| Status atau perubahan status | Kepelikan | Pesan | 
| --- | --- | --- | 
| RUNNING  | INFO  | Konfigurasi ulang untuk grup instans `InstanceGroupID` di `ClusterId (ClusterName)` kluster EMR Amazon dimulai oleh pengguna di. `Time` Versi konfigurasi yang diminta adalah`Num`.  | 
| Dari `RECONFIGURING` ke `Running` | INFO  | Operasi konfigurasi ulang untuk grup instans `InstanceGroupID` di `ClusterId (ClusterName)` kluster EMR Amazon selesai. Konfigurasi ulang dimulai pada `Time` dan membutuhkan waktu `Num` beberapa menit untuk menyelesaikannya. Versi konfigurasi saat ini adalah`Num`.  | 
| Dari `RUNNING` ke `RECONFIGURING` in  | INFO  | Konfigurasi ulang untuk grup instans `InstanceGroupID` di `ClusterId (ClusterName)` klaster EMR Amazon dimulai pada. `Time` Ini mengkonfigurasi dari nomor versi `Num` ke nomor `Num` versi.  | 
| RESIZING  | INFO  | Mengkonfigurasi ulang operasi ke versi konfigurasi `Num` untuk grup instans `InstanceGroupID` di kluster `ClusterId (ClusterName)` EMR Amazon diblokir sementara `Time` karena grup instans masuk. `State`  | 
| RECONFIGURING  | INFO  | Mengubah ukuran operasi menuju jumlah instans Num untuk grup instans InstanceGroupID di ClusterId (ClusterName) klaster EMR Amazon diblokir Time sementara karena grup instans masuk. State | 
| RECONFIGURING  | WARNING  | Operasi konfigurasi ulang untuk grup instans `InstanceGroupID` di `ClusterId (ClusterName)` kluster EMR Amazon gagal `Time` dan `Num` membutuhkan waktu beberapa menit untuk gagal. Versi konfigurasi yang gagal adalah`Num`.   | 
| RECONFIGURING  | INFO  | Konfigurasi kembali ke nomor versi sukses sebelumnya `Num` untuk grup instans `InstanceGroupID` di cluster EMR Amazon di. `ClusterId (ClusterName)` `Time` Versi konfigurasi baru adalah`Num`.   | 
| Dari `RECONFIGURING` ke `Running` | INFO  | Konfigurasi berhasil dikembalikan ke versi sukses sebelumnya `Num` untuk grup instans `InstanceGroupID` di cluster EMR Amazon di. `ClusterId (ClusterName)` `Time` Versi konfigurasi baru adalah`Num`.  | 
| Dari `RECONFIGURING` ke `SUSPENDED`  | CRITICAL  | Gagal mengembalikan ke versi sukses sebelumnya `Num` untuk grup Instans `InstanceGroupID` di klaster EMR `ClusterId (ClusterName)` Amazon di. `Time`  | 

## Peristiwa kebijakan penskalaan otomatis
<a name="emr-cloudwatch-autoscale-events"></a>


****  

| Status atau perubahan status | Kepelikan | Pesan | 
| --- | --- | --- | 
| PENDING  | INFO  | Kebijakan Auto Scaling ditambahkan ke grup instans di klaster EMR `InstanceGroupID` Amazon di. `ClusterId (ClusterName)` `Time` Kebijakan ini lampiran tertunda. - atau -  Kebijakan Auto Scaling untuk grup instans di klaster `ClusterId (ClusterName)` EMR `InstanceGroupID` Amazon telah diperbarui di. `Time` Kebijakan ini lampiran tertunda.  | 
| ATTACHED  | INFO  | Kebijakan Auto Scaling untuk grup instans di klaster `ClusterId (ClusterName)` EMR `InstanceGroupID` Amazon dilampirkan pada. `Time`  | 
| `DETACHED`  | INFO  | Kebijakan Auto Scaling untuk grup instans di kluster `ClusterId (ClusterName)` EMR `InstanceGroupID` Amazon terlepas di. `Time`  | 
| FAILED  | ERROR  | Kebijakan Auto Scaling untuk grup instans di klaster EMR `InstanceGroupID` Amazon tidak `ClusterId (ClusterName)` dapat dilampirkan dan gagal di. `Time` - atau -  Kebijakan Auto Scaling untuk grup instans di klaster EMR `InstanceGroupID` Amazon tidak `ClusterId (ClusterName)` dapat dilepas dan gagal. `Time`  | 

## Peristiwa langkah
<a name="emr-cloudwatch-step-events"></a>


****  

| Status atau perubahan status | Kepelikan | Pesan | 
| --- | --- | --- | 
| PENDING  | INFO  | Langkah `StepID (StepName)` telah ditambahkan ke Amazon EMR cluster `ClusterId (ClusterName)` di `Time` dan sedang menunggu eksekusi.   | 
| CANCEL\$1PENDING  | WARN  | Langkah `StepID (StepName)` di Amazon EMR cluster dibatalkan pada `Time` dan `ClusterId (ClusterName)` sedang menunggu pembatalan.   | 
| RUNNING  | INFO  | Langkah `StepID (StepName)` di Amazon EMR cluster `ClusterId (ClusterName)` mulai berjalan di. `Time`   | 
| COMPLETED  | INFO  | Langkah `StepID (StepName)` di Amazon EMR cluster `ClusterId (ClusterName)` menyelesaikan eksekusi di. `Time` Langkah mulai berjalan `Time` dan membutuhkan waktu `Num` beberapa menit untuk menyelesaikannya.  | 
| CANCELLED  | WARN  | Permintaan pembatalan telah berhasil untuk langkah klaster di klaster EMR `StepID (StepName)` Amazon `ClusterId (ClusterName)` di`Time`, dan langkahnya sekarang dibatalkan.   | 
| FAILED  | ERROR  | Langkah `StepID (StepName)` di Amazon EMR cluster `ClusterId (ClusterName)` gagal di. `Time`  | 

## Peristiwa penggantian simpul yang tidak sehat
<a name="emr-cloudwatch-unhealthy-node-replacement-events"></a>


| Tipe peristiwa | Kepelikan | Kode acara | Pesan | 
| --- | --- | --- | --- | 
| Amazon EMR penggantian simpul yang tidak sehat | INFO | Node inti yang tidak sehat terdeteksi | Amazon EMR telah mengidentifikasi bahwa instance inti `[instanceID (InstanceName)]` `InstanceGroup/Fleet` dalam cluster EMR Amazon adalah. `clusterID (ClusterName)` `UNHEALTHY` Amazon EMR akan mencoba memulihkan atau mengganti instance dengan anggun. `UNHEALTHY`  | 
| Amazon EMR penggantian simpul yang tidak sehat | INFO | Node inti tidak sehat - penggantian dinonaktifkan | Amazon EMR telah mengidentifikasi bahwa instance inti `[instanceID (InstanceName)]` `InstanceGroup/Fleet` dalam cluster EMR Amazon adalah. `(clusterID) (ClusterName)` `UNHEALTHY` Aktifkan penggantian node inti yang tidak sehat dan anggun di klaster Anda untuk memungkinkan Amazon EMR mengganti `UNHEALTHY` instans dengan baik jika instans tidak dapat dipulihkan.  | 
| Amazon EMR penggantian simpul yang tidak sehat | WARN | Node inti yang tidak sehat tidak diganti | *Amazon EMR tidak dapat mengganti instans `UNHEALTHY` inti Anda `[instanceID (InstanceName)]` `InstanceGroup/Fleet` di klaster `clusterID (ClusterName)` EMR Amazon karena alasan.* Alasan mengapa Amazon EMR tidak dapat menggantikan node inti Anda berbeda tergantung pada skenario Anda. Misalnya, salah satu alasan mengapa Amazon EMR tidak dapat menghapus node adalah karena cluster tidak akan memiliki node inti yang tersisa.  | 
| Amazon EMR penggantian simpul yang tidak sehat | INFO | Node inti yang tidak sehat pulih | Amazon EMR telah memulihkan instans `UNHEALTHY` inti Anda `[instanceID (InstanceName)]` di `InstanceGroup/Fleet` klaster EMR Amazon `clusterID (ClusterName)`  | 

Untuk informasi selengkapnya tentang penggantian node yang tidak sehat, lihat [Mengganti node yang tidak sehat](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-node-replacement.html).

## Melihat acara dengan konsol EMR Amazon
<a name="emr-events-console"></a>

Untuk setiap klaster, Anda dapat melihat daftar sederhana dari peristiwa di panel detail, yang berisi daftar peristiwa dalam urutan kejadian. Anda juga dapat melihat semua peristiwa untuk semua klaster dalam suatu wilayah dalam urutan kejadian.

Jika Anda tidak ingin pengguna melihat semua peristiwa klaster untuk suatu wilayah, tambahkan pernyataan yang menolak izin (`"Effect": "Deny"`) untuk tindakan `elasticmapreduce:ViewEventsFromAllClustersInConsole` ke kebijakan yang melekat pada pengguna tersebut. 

**Untuk melihat peristiwa untuk semua cluster di Wilayah dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. **Di bawah **EMR pada EC2** di panel navigasi kiri, pilih Acara.**

**Untuk melihat peristiwa untuk klaster tertentu dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Clusters, lalu pilih cluster**.

1. Untuk melihat semua acara Anda, pilih tab **Acara** di halaman detail klaster.

# Menanggapi CloudWatch peristiwa dari Amazon EMR
<a name="emr-events-response"></a>

[Bagian ini menjelaskan berbagai cara agar Anda dapat menanggapi peristiwa yang dapat ditindaklanjuti yang dipancarkan Amazon EMR sebagai pesan acara. CloudWatch ](emr-manage-cloudwatch-events.md) Cara Anda dapat menanggapi peristiwa termasuk membuat aturan, mengatur alarm, dan respons lainnya. Bagian-bagian berikut mencakup tautan ke prosedur dan tanggapan yang diberikan ulang ke genap umum.

**Topics**
+ [Membuat aturan untuk acara EMR Amazon dengan CloudWatch](emr-events-cloudwatch-console.md)
+ [Menyetel alarm pada CloudWatch metrik dari Amazon EMR](UsingEMR_ViewingMetrics_Alarm.md)
+ [Menanggapi peristiwa kapasitas instans Amazon EMR cluster yang tidak mencukupi](emr-events-response-insuff-capacity.md)
+ [Menanggapi peristiwa batas waktu tunggu armada instans cluster EMR Amazon](emr-events-response-timeout-events.md)

# Membuat aturan untuk acara EMR Amazon dengan CloudWatch
<a name="emr-events-cloudwatch-console"></a>

Amazon EMR secara otomatis mengirimkan acara ke aliran CloudWatch acara. Anda dapat membuat aturan yang mencocokan peristiwa ke pola tertentu, dan merutekan peristiwa ke target untuk mengambil tindakan, seperti mengirim notifikasi email. Pola dicocokkan terhadap peristiwa objek JSON. Untuk informasi selengkapnya tentang detail acara EMR Amazon, lihat peristiwa [EMR Amazon di Panduan Pengguna](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#emr_event_type) Acara *Amazon CloudWatch *.

Untuk informasi tentang menyiapkan aturan CloudWatch acara, lihat [Membuat CloudWatch aturan yang memicu peristiwa](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-Rule.html).

# Menyetel alarm pada CloudWatch metrik dari Amazon EMR
<a name="UsingEMR_ViewingMetrics_Alarm"></a>

Amazon EMR mendorong metrik ke Amazon. CloudWatch Sebagai tanggapan, Anda dapat menggunakan CloudWatch untuk menyetel alarm pada metrik Amazon EMR Anda. Misalnya, Anda dapat mengonfigurasi alarm CloudWatch untuk mengirimi Anda email kapan saja penggunaan HDFS naik di atas 80%. Untuk petunjuk terperinci, lihat [Membuat atau mengedit CloudWatch alarm](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html) di *Panduan CloudWatch Pengguna Amazon*. 

# Menanggapi peristiwa kapasitas instans Amazon EMR cluster yang tidak mencukupi
<a name="emr-events-response-insuff-capacity"></a>

## Ikhtisar
<a name="emr-events-response-insuff-capacity-overview"></a>

Cluster EMR Amazon mengembalikan kode peristiwa `EC2 provisioning - Insufficient Instance Capacity` ketika Availability Zone yang dipilih tidak memiliki kapasitas yang cukup untuk memenuhi permintaan awal atau pengubahan ukuran klaster Anda. Peristiwa akan muncul secara berkala dengan grup instans dan armada instans jika EMR Amazon berulang kali menemukan pengecualian kapasitas yang tidak mencukupi dan tidak dapat memenuhi permintaan penyediaan Anda untuk operasi pengaktifan klaster atau pengubahan ukuran klaster.

Halaman ini menjelaskan cara terbaik Anda merespons jenis peristiwa ini saat terjadi untuk klaster EMR Anda.

## Respons yang disarankan untuk acara kapasitas yang tidak mencukupi
<a name="emr-events-response-insuff-capacity-rec"></a>

Kami menyarankan Anda menanggapi peristiwa kapasitas yang tidak memadai dengan salah satu cara berikut:
+ Tunggu kapasitas untuk pulih. Kapasitas sering bergeser, sehingga pengecualian kapasitas yang tidak mencukupi dapat pulih dengan sendirinya. Cluster Anda akan mulai atau selesai mengubah ukuran segera setelah kapasitas Amazon EC2 tersedia.
+ Atau, Anda dapat menghentikan klaster, memodifikasi konfigurasi tipe instans, dan membuat klaster baru dengan permintaan konfigurasi klaster yang diperbarui. Untuk informasi selengkapnya, lihat [Fleksibilitas Availability Zone untuk klaster EMR Amazon](emr-flexibility.md).

Anda juga dapat mengatur aturan atau respons otomatis terhadap peristiwa kapasitas yang tidak mencukupi, seperti yang dijelaskan di bagian berikutnya.

## Pemulihan otomatis dari peristiwa kapasitas yang tidak mencukupi
<a name="emr-events-response-insuff-capacity-ex"></a>

Anda dapat membangun otomatisasi dalam menanggapi peristiwa EMR Amazon seperti yang memiliki kode acara. `EC2 provisioning - Insufficient Instance Capacity` Misalnya, AWS Lambda fungsi berikut mengakhiri klaster EMR dengan grup instans yang menggunakan instance On-Demand, dan kemudian membuat klaster EMR baru dengan grup instans yang berisi tipe instans yang berbeda dari permintaan asli.

Kondisi berikut memicu proses otomatis terjadi:
+ Peristiwa kapasitas yang tidak mencukupi telah dipancarkan untuk node primer atau inti selama lebih dari 20 menit.
+ Cluster tidak dalam keadaan **SIAP** atau **MENUNGGU**. Untuk informasi lebih lanjut tentang status klaster EMR, lihat. [Memahami siklus hidup klaster](emr-overview.md#emr-overview-cluster-lifecycle)

**catatan**  
Ketika Anda membangun proses otomatis untuk pengecualian kapasitas yang tidak mencukupi, Anda harus mempertimbangkan bahwa peristiwa kapasitas yang tidak mencukupi dapat dipulihkan. Kapasitas sering bergeser dan cluster Anda akan melanjutkan pengubahan ukuran atau mulai beroperasi segera setelah kapasitas Amazon EC2 tersedia.

**Example berfungsi untuk menanggapi peristiwa kapasitas yang tidak mencukupi**  

```
// Lambda code with Python 3.10 and handler is lambda_function.lambda_handler
// Note: related IAM role requires permission to use Amazon EMR

import json
import boto3
import datetime
from datetime import timezone

INSUFFICIENT_CAPACITY_EXCEPTION_DETAIL_TYPE = "EMR Instance Group Provisioning"
INSUFFICIENT_CAPACITY_EXCEPTION_EVENT_CODE = (
    "EC2 provisioning - Insufficient Instance Capacity"
)
ALLOWED_INSTANCE_TYPES_TO_USE = [
    "m5.xlarge",
    "c5.xlarge",
    "m5.4xlarge",
    "m5.2xlarge",
    "t3.xlarge",
]
CLUSTER_START_ACCEPTABLE_STATES = ["WAITING", "RUNNING"]
CLUSTER_START_SLA = 20

CLIENT = boto3.client("emr", region_name="us-east-1")

# checks if the incoming event is 'EMR Instance Fleet Provisioning' with eventCode 'EC2 provisioning - Insufficient Instance Capacity'
def is_insufficient_capacity_event(event):
    if not event["detail"]:
        return False
    else:
        return (
            event["detail-type"] == INSUFFICIENT_CAPACITY_EXCEPTION_DETAIL_TYPE
            and event["detail"]["eventCode"]
            == INSUFFICIENT_CAPACITY_EXCEPTION_EVENT_CODE
        )


# checks if the cluster is eligible for termination
def is_cluster_eligible_for_termination(event, describeClusterResponse):
    # instanceGroupType could be CORE, MASTER OR TASK
    instanceGroupType = event["detail"]["instanceGroupType"]
    clusterCreationTime = describeClusterResponse["Cluster"]["Status"]["Timeline"][
        "CreationDateTime"
    ]
    clusterState = describeClusterResponse["Cluster"]["Status"]["State"]

    now = datetime.datetime.now()
    now = now.replace(tzinfo=timezone.utc)
    isClusterStartSlaBreached = clusterCreationTime < now - datetime.timedelta(
        minutes=CLUSTER_START_SLA
    )

    # Check if instance group receiving Insufficient capacity exception is CORE or PRIMARY (MASTER),
    # and it's been more than 20 minutes since cluster was created but the cluster state and the cluster state is not updated to RUNNING or WAITING
    if (
        (instanceGroupType == "CORE" or instanceGroupType == "MASTER")
        and isClusterStartSlaBreached
        and clusterState not in CLUSTER_START_ACCEPTABLE_STATES
    ):
        return True
    else:
        return False


# Choose item from the list except the exempt value
def choice_excluding(exempt):
    for i in ALLOWED_INSTANCE_TYPES_TO_USE:
        if i != exempt:
            return i


# Create a new cluster by choosing different InstanceType.
def create_cluster(event):
    # instanceGroupType cloud be CORE, MASTER OR TASK
    instanceGroupType = event["detail"]["instanceGroupType"]

    # Following two lines assumes that the customer that created the cluster already knows which instance types they use in original request
    instanceTypesFromOriginalRequestMaster = "m5.xlarge"
    instanceTypesFromOriginalRequestCore = "m5.xlarge"

    # Select new instance types to include in the new createCluster request
    instanceTypeForMaster = (
        instanceTypesFromOriginalRequestMaster
        if instanceGroupType != "MASTER"
        else choice_excluding(instanceTypesFromOriginalRequestMaster)
    )
    instanceTypeForCore = (
        instanceTypesFromOriginalRequestCore
        if instanceGroupType != "CORE"
        else choice_excluding(instanceTypesFromOriginalRequestCore)
    )

    print("Starting to create cluster...")
    instances = {
        "InstanceGroups": [
            {
                "InstanceRole": "MASTER",
                "InstanceCount": 1,
                "InstanceType": instanceTypeForMaster,
                "Market": "ON_DEMAND",
                "Name": "Master",
            },
            {
                "InstanceRole": "CORE",
                "InstanceCount": 1,
                "InstanceType": instanceTypeForCore,
                "Market": "ON_DEMAND",
                "Name": "Core",
            },
        ]
    }
    response = CLIENT.run_job_flow(
        Name="Test Cluster",
        Instances=instances,
        VisibleToAllUsers=True,
        JobFlowRole="EMR_EC2_DefaultRole",
        ServiceRole="EMR_DefaultRole",
        ReleaseLabel="emr-6.10.0",
    )

    return response["JobFlowId"]


# Terminated the cluster using clusterId received in an event
def terminate_cluster(event):
    print("Trying to terminate cluster, clusterId: " + event["detail"]["clusterId"])
    response = CLIENT.terminate_job_flows(JobFlowIds=[event["detail"]["clusterId"]])
    print(f"Terminate cluster response: {response}")


def describe_cluster(event):
    response = CLIENT.describe_cluster(ClusterId=event["detail"]["clusterId"])
    return response


def lambda_handler(event, context):
    if is_insufficient_capacity_event(event):
        print(
            "Received insufficient capacity event for instanceGroup, clusterId: "
            + event["detail"]["clusterId"]
        )

        describeClusterResponse = describe_cluster(event)

        shouldTerminateCluster = is_cluster_eligible_for_termination(
            event, describeClusterResponse
        )
        if shouldTerminateCluster:
            terminate_cluster(event)

            clusterId = create_cluster(event)
            print("Created a new cluster, clusterId: " + clusterId)
        else:
            print(
                "Cluster is not eligible for termination, clusterId: "
                + event["detail"]["clusterId"]
            )

    else:
        print("Received event is not insufficient capacity event, skipping")
```

# Menanggapi peristiwa batas waktu tunggu armada instans cluster EMR Amazon
<a name="emr-events-response-timeout-events"></a>

## Ikhtisar
<a name="emr-events-response-timeout-events-overview"></a>

Cluster EMR Amazon memancarkan [peristiwa](emr-manage-cloudwatch-events.md#emr-cloudwatch-instance-fleet-resize-events) saat menjalankan operasi pengubahan ukuran untuk cluster armada misalnya. Peristiwa batas waktu penyediaan dipancarkan saat Amazon EMR berhenti menyediakan kapasitas Spot atau On-Demand untuk armada setelah batas waktu berakhir. Durasi batas waktu dapat dikonfigurasi oleh pengguna sebagai bagian dari [spesifikasi pengubahan ukuran untuk armada](https://docs.aws.amazon.com/emr/latest/APIReference/API_InstanceFleetResizingSpecifications.html) instance. Dalam skenario pengubahan ukuran berturut-turut untuk armada instans yang sama, Amazon EMR memancarkan `Spot provisioning timeout - continuing resize` atau `On-Demand provisioning timeout - continuing resize` peristiwa saat batas waktu untuk operasi pengubahan ukuran saat ini kedaluwarsa. Kemudian mulai menyediakan kapasitas untuk operasi pengubahan ukuran armada berikutnya.

## Menanggapi peristiwa timeout pengubahan ukuran armada instance
<a name="emr-events-response-timeout-events-rec"></a>

Kami menyarankan Anda menanggapi peristiwa batas waktu penyediaan dengan salah satu cara berikut:
+ Kunjungi kembali [spesifikasi pengubahan ukuran](https://docs.aws.amazon.com/emr/latest/APIReference/API_InstanceFleetResizingSpecifications.html) dan coba lagi operasi pengubahan ukuran. Karena kapasitas sering bergeser, cluster Anda akan berhasil mengubah ukuran segera setelah kapasitas Amazon EC2 tersedia. Kami menyarankan pelanggan untuk mengonfigurasi nilai yang lebih rendah untuk durasi waktu tunggu untuk pekerjaan yang membutuhkan lebih ketatSLAs.
+ Atau, Anda dapat:
  + Luncurkan klaster baru dengan beragam jenis instans berdasarkan [praktik terbaik misalnya dan fleksibilitas Availability Zone](emr-flexibility.md#emr-flexibility-types) atau
  + Luncurkan cluster dengan kapasitas On-Demand
+ Untuk waktu tunggu penyediaan - melanjutkan acara pengubahan ukuran, Anda juga dapat menunggu operasi pengubahan ukuran diproses. Amazon EMR akan terus memproses secara berurutan operasi pengubahan ukuran yang dipicu untuk armada, dengan menghormati spesifikasi pengubahan ukuran yang dikonfigurasi.

Anda juga dapat mengatur aturan atau tanggapan otomatis untuk acara ini seperti yang dijelaskan di bagian berikutnya.

## Pemulihan otomatis dari peristiwa batas waktu penyediaan
<a name="emr-events-response-timeout-events-ex"></a>

Anda dapat membangun otomatisasi dalam menanggapi peristiwa EMR Amazon dengan kode `Spot Provisioning timeout` acara. Misalnya, AWS Lambda fungsi berikut mematikan kluster EMR dengan armada instance yang menggunakan instance Spot untuk node Tugas, dan kemudian membuat klaster EMR baru dengan armada instance yang berisi tipe instans yang lebih beragam daripada permintaan asli. Dalam contoh ini, `Spot Provisioning timeout` peristiwa yang dipancarkan untuk node tugas akan memicu eksekusi fungsi Lambda.

**Example Contoh fungsi untuk menanggapi `Spot Provisioning timeout` peristiwa**  

```
// Lambda code with Python 3.10 and handler is lambda_function.lambda_handler
// Note: related IAM role requires permission to use Amazon EMR
 
import json
import boto3
import datetime
from datetime import timezone
 
SPOT_PROVISIONING_TIMEOUT_EXCEPTION_DETAIL_TYPE = "EMR Instance Fleet Resize"
SPOT_PROVISIONING_TIMEOUT_EXCEPTION_EVENT_CODE = (
    "Spot Provisioning timeout"
)
 
CLIENT = boto3.client("emr", region_name="us-east-1")
 
# checks if the incoming event is 'EMR Instance Fleet Resize' with eventCode 'Spot provisioning timeout'
def is_spot_provisioning_timeout_event(event):
    if not event["detail"]:
        return False
    else:
        return (
            event["detail-type"] == SPOT_PROVISIONING_TIMEOUT_EXCEPTION_DETAIL_TYPE
            and event["detail"]["eventCode"]
            == SPOT_PROVISIONING_TIMEOUT_EXCEPTION_EVENT_CODE
        )
 
 
# checks if the cluster is eligible for termination
def is_cluster_eligible_for_termination(event, describeClusterResponse):
    # instanceFleetType could be CORE, MASTER OR TASK
    instanceFleetType = event["detail"]["instanceFleetType"]
 
    # Check if instance fleet receiving Spot provisioning timeout event is TASK
    if (instanceFleetType == "TASK"):
        return True
    else:
        return False
 
 
# create a new cluster by choosing different InstanceType.
def create_cluster(event):
    # instanceFleetType cloud be CORE, MASTER OR TASK
    instanceFleetType = event["detail"]["instanceFleetType"]
 
    # the following two lines assumes that the customer that created the cluster already knows which instance types they use in original request
    instanceTypesFromOriginalRequestMaster = "m5.xlarge"
    instanceTypesFromOriginalRequestCore = "m5.xlarge"
   
    # select new instance types to include in the new createCluster request
    instanceTypesForTask = [
        "m5.xlarge",
        "m5.2xlarge",
        "m5.4xlarge",
        "m5.8xlarge",
        "m5.12xlarge"
    ]
    
    print("Starting to create cluster...")
    instances = {
        "InstanceFleets": [
            {
                "InstanceFleetType":"MASTER",
                "TargetOnDemandCapacity":1,
                "TargetSpotCapacity":0,
                "InstanceTypeConfigs":[
                    {
                        'InstanceType': instanceTypesFromOriginalRequestMaster,
                        "WeightedCapacity":1,
                    }
                ]
            },
            {
                "InstanceFleetType":"CORE",
                "TargetOnDemandCapacity":1,
                "TargetSpotCapacity":0,
                "InstanceTypeConfigs":[
                    {
                        'InstanceType': instanceTypesFromOriginalRequestCore,
                        "WeightedCapacity":1,
                    }
                ]
            },
            {
                "InstanceFleetType":"TASK",
                "TargetOnDemandCapacity":0,
                "TargetSpotCapacity":100,
                "LaunchSpecifications":{},
                "InstanceTypeConfigs":[
                    {
                        'InstanceType': instanceTypesForTask[0],
                        "WeightedCapacity":1,
                    },
                    {
                        'InstanceType': instanceTypesForTask[1],
                        "WeightedCapacity":2,
                    },
                    {
                        'InstanceType': instanceTypesForTask[2],
                        "WeightedCapacity":4,
                    },
                    {
                        'InstanceType': instanceTypesForTask[3],
                        "WeightedCapacity":8,
                    },
                    {
                        'InstanceType': instanceTypesForTask[4],
                        "WeightedCapacity":12,
                    }
                ],
                "ResizeSpecifications": {
                    "SpotResizeSpecification": {
                        "TimeoutDurationMinutes": 30
                    }
                }
            }
        ]
    }
    response = CLIENT.run_job_flow(
        Name="Test Cluster",
        Instances=instances,
        VisibleToAllUsers=True,
        JobFlowRole="EMR_EC2_DefaultRole",
        ServiceRole="EMR_DefaultRole",
        ReleaseLabel="emr-6.10.0",
    )
 
    return response["JobFlowId"]
 
 
# terminated the cluster using clusterId received in an event
def terminate_cluster(event):
    print("Trying to terminate cluster, clusterId: " + event["detail"]["clusterId"])
    response = CLIENT.terminate_job_flows(JobFlowIds=[event["detail"]["clusterId"]])
    print(f"Terminate cluster response: {response}")
 
 
def describe_cluster(event):
    response = CLIENT.describe_cluster(ClusterId=event["detail"]["clusterId"])
    return response
 
 
def lambda_handler(event, context):
    if is_spot_provisioning_timeout_event(event):
        print(
            "Received spot provisioning timeout event for instanceFleet, clusterId: "
            + event["detail"]["clusterId"]
        )
 
        describeClusterResponse = describe_cluster(event)
 
        shouldTerminateCluster = is_cluster_eligible_for_termination(
            event, describeClusterResponse
        )
        if shouldTerminateCluster:
            terminate_cluster(event)
 
            clusterId = create_cluster(event)
            print("Created a new cluster, clusterId: " + clusterId)
        else:
            print(
                "Cluster is not eligible for termination, clusterId: "
                + event["detail"]["clusterId"]
            )
 
    else:
        print("Received event is not spot provisioning timeout event, skipping")
```

# Lihat metrik aplikasi cluster menggunakan Ganglia dengan Amazon EMR
<a name="ViewingGangliaMetrics"></a>

Ganglia tersedia dengan rilis EMR Amazon antara 4.2 dan 6.15. Ganglia adalah proyek sumber terbuka yang merupakan sistem terdistribusi yang dapat diskalakan, yang dirancang untuk memantau klaster dan grid sekaligus meminimalisir dampak terhadap performanya. Ketika Anda mengaktifkan Ganglia di klaster Anda, Anda dapat menghasilkan laporan dan melihat performa klaster secara keseluruhan, serta memeriksa performa masing-masing instans simpul. Ganglia juga dikonfigurasi untuk menyerap dan memvisualisasikan metrik Hadoop dan Spark. Untuk informasi selengkapnya, lihat [Ganglia](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-ganglia.html) dalam *Panduan Rilis Amazon EMR*.

# Pencatatan AWS panggilan EMR API menggunakan AWS CloudTrail
<a name="logging-using-cloudtrail"></a>

AWS EMR terintegrasi dengan [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html), layanan yang menyediakan catatan tindakan yang diambil oleh pengguna, peran, atau. Layanan AWS CloudTrail menangkap semua panggilan API untuk AWS EMR sebagai peristiwa. Panggilan yang diambil termasuk panggilan dari konsol AWS EMR dan panggilan kode ke operasi AWS EMR API. Dengan menggunakan informasi yang dikumpulkan oleh CloudTrail, Anda dapat menentukan permintaan yang dibuat ke AWS EMR, alamat IP dari mana permintaan itu dibuat, kapan dibuat, dan detail tambahan.

Setiap entri peristiwa atau log berisi informasi tentang entitas yang membuat permintaan tersebut. Informasi identitas membantu Anda menentukan berikut hal ini:
+ Baik permintaan tersebut dibuat dengan kredensial pengguna root atau pengguna.
+ Apakah permintaan dibuat atas nama pengguna IAM Identity Center.
+ Apakah permintaan tersebut dibuat dengan kredensial keamanan sementara untuk satu peran atau pengguna gabungan.
+ Apakah permintaan tersebut dibuat oleh Layanan AWS lain.

CloudTrail aktif di Anda Akun AWS ketika Anda membuat akun dan Anda secara otomatis memiliki akses ke **riwayat CloudTrail Acara**. **Riwayat CloudTrail Acara menyediakan catatan** yang dapat dilihat, dapat dicari, dapat diunduh, dan tidak dapat diubah dari 90 hari terakhir dari peristiwa manajemen yang direkam dalam file. Wilayah AWS Untuk informasi selengkapnya, lihat [Bekerja dengan riwayat CloudTrail Acara](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html) di *Panduan AWS CloudTrail Pengguna*. Tidak ada CloudTrail biaya untuk melihat **riwayat Acara**.

Untuk catatan acara yang sedang berlangsung dalam 90 hari Akun AWS terakhir Anda, buat jejak atau penyimpanan data acara [CloudTrailDanau](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake.html).

**CloudTrail jalan setapak**  
*Jejak* memungkinkan CloudTrail untuk mengirimkan file log ke bucket Amazon S3. Semua jalur yang dibuat menggunakan Konsol Manajemen AWS Multi-region. Anda dapat membuat jalur Single-region atau Multi-region dengan menggunakan. AWS CLI Membuat jejak Multi-wilayah disarankan karena Anda menangkap aktivitas Wilayah AWS di semua akun Anda. Jika Anda membuat jejak wilayah Tunggal, Anda hanya dapat melihat peristiwa yang dicatat di jejak. Wilayah AWS Untuk informasi selengkapnya tentang jejak, lihat [Membuat jejak untuk Anda Akun AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html) dan [Membuat jejak untuk organisasi](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/creating-trail-organization.html) di *Panduan AWS CloudTrail Pengguna*.  
Anda dapat mengirimkan satu salinan acara manajemen yang sedang berlangsung ke bucket Amazon S3 Anda tanpa biaya CloudTrail dengan membuat jejak, namun, ada biaya penyimpanan Amazon S3. Untuk informasi selengkapnya tentang CloudTrail harga, lihat [AWS CloudTrail Harga](https://aws.amazon.com/cloudtrail/pricing/). Untuk informasi tentang harga Amazon S3, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

**CloudTrail Menyimpan data acara danau**  
*CloudTrail Lake* memungkinkan Anda menjalankan kueri berbasis SQL pada acara Anda. CloudTrail [Lake mengonversi peristiwa yang ada dalam format JSON berbasis baris ke format Apache ORC.](https://orc.apache.org/) ORC adalah format penyimpanan kolumnar yang dioptimalkan untuk pengambilan data dengan cepat. Peristiwa digabungkan ke dalam *penyimpanan data peristiwa*, yang merupakan kumpulan peristiwa yang tidak dapat diubah berdasarkan kriteria yang Anda pilih dengan menerapkan pemilih acara [tingkat lanjut](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake-concepts.html#adv-event-selectors). Penyeleksi yang Anda terapkan ke penyimpanan data acara mengontrol peristiwa mana yang bertahan dan tersedia untuk Anda kueri. Untuk informasi lebih lanjut tentang CloudTrail Danau, lihat [Bekerja dengan AWS CloudTrail Danau](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake.html) di *Panduan AWS CloudTrail Pengguna*.  
CloudTrail Penyimpanan data acara danau dan kueri menimbulkan biaya. Saat Anda membuat penyimpanan data acara, Anda memilih [opsi harga](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake-manage-costs.html#cloudtrail-lake-manage-costs-pricing-option) yang ingin Anda gunakan untuk penyimpanan data acara. Opsi penetapan harga menentukan biaya untuk menelan dan menyimpan peristiwa, dan periode retensi default dan maksimum untuk penyimpanan data acara. Untuk informasi selengkapnya tentang CloudTrail harga, lihat [AWS CloudTrail Harga](https://aws.amazon.com/cloudtrail/pricing/).

## AWS Peristiwa data EMR di CloudTrail
<a name="cloudtrail-data-events"></a>

[Peristiwa data](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#logging-data-events) memberikan informasi tentang operasi sumber daya yang dilakukan pada atau di sumber daya (misalnya, membaca atau menulis ke objek Amazon S3). Ini juga dikenal sebagai operasi bidang data. Peristiwa data sering kali merupakan aktivitas bervolume tinggi. Secara default, CloudTrail tidak mencatat peristiwa data. **Riwayat CloudTrail peristiwa** tidak merekam peristiwa data.

Biaya tambahan berlaku untuk peristiwa data. Untuk informasi selengkapnya tentang CloudTrail harga, lihat [AWS CloudTrail Harga](https://aws.amazon.com/cloudtrail/pricing/).

Anda dapat mencatat peristiwa data untuk jenis sumber daya AWS EMR menggunakan CloudTrail konsol AWS CLI, atau operasi CloudTrail API. Untuk informasi selengkapnya tentang cara mencatat peristiwa data, lihat [Mencatat peristiwa data dengan Konsol Manajemen AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#logging-data-events-console) dan [Logging peristiwa data dengan AWS Command Line Interface](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#creating-data-event-selectors-with-the-AWS-CLI) di *Panduan AWS CloudTrail Pengguna*.

Tabel berikut mencantumkan jenis sumber daya AWS EMR yang dapat Anda log peristiwa data. Kolom **tipe peristiwa data (konsol)** menunjukkan nilai yang akan dipilih dari daftar **tipe peristiwa Data** di CloudTrail konsol. Kolom nilai **resources.type menunjukkan `resources.type` nilai**, yang akan Anda tentukan saat mengonfigurasi penyeleksi acara lanjutan menggunakan or. AWS CLI CloudTrail APIs CloudTrailKolom **Data yang APIs dicatat ke** menampilkan panggilan API yang dicatat CloudTrail untuk jenis sumber daya.

Untuk informasi selengkapnya tentang operasi API ini, lihat referensi [CLI Amazon EMR WAL (EMRWAL)](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emrwalcli-ref.html). Amazon EMR mencatat beberapa operasi API Data ke operasi HBase sistem CloudTrail yang tidak pernah Anda panggil secara langsung. Operasi ini tidak ada dalam referensi CLI EMRWAL.


| Jenis peristiwa data (konsol) | nilai resources.type | Data APIs masuk ke CloudTrail | 
| --- | --- | --- | 
| Ruang kerja log tulis di depan Amazon EMR |  AWS::EMRWAL::Workspace  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/logging-using-cloudtrail.html)  | 

Anda dapat mengonfigurasi pemilih acara lanjutan untuk memfilter pada `eventName``readOnly`,, dan `resources.ARN` bidang untuk mencatat hanya peristiwa yang penting bagi Anda. Untuk informasi selengkapnya tentang bidang ini, lihat [https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedFieldSelector.html](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedFieldSelector.html)di *Referensi AWS CloudTrail API*.

## AWS Acara manajemen EMR di CloudTrail
<a name="cloudtrail-management-events"></a>

[Acara manajemen](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html#logging-management-events) memberikan informasi tentang operasi manajemen yang dilakukan pada sumber daya di Anda Akun AWS. Ini juga dikenal sebagai operasi bidang kontrol. Secara default, CloudTrail mencatat peristiwa manajemen.

AWS EMR mencatat semua operasi pesawat kontrol AWS EMR sebagai peristiwa manajemen. [Untuk daftar operasi bidang kontrol AWS EMR yang dicatat oleh AWS EMR, CloudTrail lihat Referensi API AWS EMR.](https://docs.aws.amazon.com/emr/latest/APIReference/Welcome.html)

## AWS Contoh acara EMR
<a name="cloudtrail-event-examples"></a>

Peristiwa mewakili permintaan tunggal dari sumber manapun dan mencakup informasi tentang operasi API yang diminta, tanggal dan waktu operasi, parameter permintaan, dan sebagainya. CloudTrail file log bukanlah jejak tumpukan yang diurutkan dari panggilan API publik, sehingga peristiwa tidak muncul dalam urutan tertentu.

Contoh berikut menunjukkan entri CloudTrail log yang menunjukkan **RunJobFlow**tindakan.

```
{
	"Records": [
	{
         "eventVersion":"1.01",
         "userIdentity":{
            "type":"IAMUser",
            "principalId":"EX_PRINCIPAL_ID",
            "arn":"arn:aws:iam::123456789012:user/temporary-user-xx-7M",
            "accountId":"123456789012",
            "userName":"temporary-user-xx-7M"
         },
         "eventTime":"2018-03-31T17:59:21Z",
         "eventSource":"elasticmapreduce.amazonaws.com",
         "eventName":"RunJobFlow",
         "awsRegion":"us-west-2",
         "sourceIPAddress":"192.0.2.1",
         "userAgent":"aws-sdk-java/unknown-version Linux/xx Java_HotSpot(TM)_64-Bit_Server_VM/xx",
         "requestParameters":{
            "tags":[
               {
                  "value":"prod",
                  "key":"domain"
               },
               {
                  "value":"us-west-2",
                  "key":"realm"
               },
               {
                  "value":"VERIFICATION",
                  "key":"executionType"
               }
            ],
            "instances":{
               "slaveInstanceType":"m5.xlarge",
               "ec2KeyName":"emr-integtest",
               "instanceCount":1,
               "masterInstanceType":"m5.xlarge",
               "keepJobFlowAliveWhenNoSteps":true,
               "terminationProtected":false
            },
            "visibleToAllUsers":false,
            "name":"MyCluster",
            "ReleaseLabel":"emr-5.16.0"
         },
         "responseElements":{
            "jobFlowId":"j-2WDJCGEG4E6AJ"
         },
         "requestID":"2f482daf-b8fe-11e3-89e7-75a3d0e071c5",
         "eventID":"b348a38d-f744-4097-8b2a-e68c9b424698"
      },
	...additional entries
  ]
}
```

Untuk informasi tentang konten CloudTrail rekaman, lihat [konten CloudTrail rekaman](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-record-contents.html) di *Panduan AWS CloudTrail Pengguna*.

# Praktik Terbaik Observabilitas EMR
<a name="emr-metrics-observability"></a>

Observabilitas EMR mencakup pendekatan pemantauan dan manajemen yang komprehensif untuk kluster EMR. AWS Yayasan ini bertumpu pada Amazon CloudWatch sebagai layanan pemantauan utama, dilengkapi dengan EMR Studio, dan alat pihak ketiga seperti Prometheus dan Grafana untuk meningkatkan visibilitas. Dalam dokumen ini, kami mengeksplorasi aspek-aspek spesifik dari observabilitas cluster:

1. *[Spark observability](https://github.com/aws/aws-emr-best-practices/blob/main/website/docs/bestpractices/Applications/Spark/observability.md)* (GitHub) - Sehubungan dengan antarmuka pengguna Spark, Anda memiliki tiga opsi di Amazon EMR.

1. *[Pemecahan masalah Spark](https://github.com/aws/aws-emr-best-practices/blob/main/website/docs/bestpractices/Applications/Spark/troubleshooting.md)* (GitHub) — Resolusi untuk kesalahan.

1. *[EMR Cluster monitoring](https://aws.github.io/aws-emr-best-practices/docs/bestpractices/Observability/best_practices/)* (GitHub) — Memantau kinerja cluster.

1. *[Memecahkan masalah EMR](https://github.com/aws/aws-emr-best-practices/blob/main/website/docs/bestpractices/Troubleshooting/Troubleshooting%20EMR.md)* (GitHub) - Mengidentifikasi, mendiagnosis, dan menyelesaikan masalah klaster EMR yang umum.

1. *[Optimalisasi biaya](https://github.com/aws/aws-emr-best-practices/blob/main/website/docs/bestpractices/Cost%20Optimizations/best_practices.md)* (GitHub) - Bagian ini menguraikan praktik terbaik untuk menjalankan beban kerja yang hemat biaya.

## Alat Optimasi Kinerja untuk Aplikasi Apache Spark
<a name="performance-optimization"></a>

1. AWS Alat [EMR Advisor](https://github.com/aws-samples/aws-emr-advisor) menganalisis log peristiwa Spark untuk memberikan rekomendasi yang disesuaikan untuk mengoptimalkan konfigurasi cluster EMR, meningkatkan kinerja, dan mengurangi biaya. Dengan memanfaatkan data historis, ini menyarankan ukuran pelaksana dan pengaturan infrastruktur yang ideal, memungkinkan pemanfaatan sumber daya yang lebih efisien dan peningkatan kinerja cluster secara keseluruhan.

1. Alat [Amazon CodeGuru Profiler](https://github.com/amzn/amazon-codeguru-profiler-for-spark) membantu pengembang mengidentifikasi kemacetan kinerja dan inefisiensi dalam aplikasi Spark mereka dengan mengumpulkan dan menganalisis data runtime. Alat ini terintegrasi secara mulus dengan aplikasi Spark yang ada, membutuhkan pengaturan minimal, dan memberikan wawasan terperinci melalui AWS Konsol tentang penggunaan CPU, pola memori, dan hotspot kinerja.

# Gunakan penskalaan klaster EMR Amazon untuk menyesuaikan perubahan beban kerja
<a name="emr-scale-on-demand"></a>

Anda dapat menyesuaikan jumlah instans Amazon EC2 yang tersedia untuk klaster Amazon EMR secara otomatis atau manual dalam menanggapi beban kerja yang memiliki berbagai tuntutan. Untuk menggunakan penskalaan otomatis, Anda memiliki dua opsi. Anda dapat mengaktifkan penskalaan terkelola Amazon EMR atau membuat kebijakan penskalaan otomatis khusus. Tabel berikut menjelaskan perbedaan antara dua opsi tersebut.


|  | Penskalaan terkelola Amazon EMR | Penskalaan otomatis kustom | 
| --- | --- | --- | 
|  Kebijakan dan aturan penskalaan  |  Tidak ada kebijakan yang diperlukan. Amazon EMR mengelola aktivitas penskalaan otomatis dengan terus mengevaluasi metrik klaster dan membuat keputusan penskalaan yang dioptimalkan.   |  Anda perlu menentukan dan mengelola kebijakan dan aturan penskalaan otomatis, seperti kondisi spesifik yang memicu aktivitas penskalaan, periode evaluasi, periode pendinginan, dll.  | 
|  Rilis Amazon EMR yang didukung  |  Amazon EMR versi 5.30.0 dan lebih tinggi (kecuali Amazon EMR versi 6.0.0)  |  Amazon EMR versi 4.0.0 dan lebih tinggi  | 
|  Komposisi klaster yang didukung  | Grup instans atau armada instans |  Grup instans saja  | 
| Konfigurasi batas penskalaan |  Batas penskalaan dikonfigurasi untuk seluruh klaster.  |  Batas penskalaan hanya dapat dikonfigurasi untuk setiap grup instans.  | 
|  Frekuensi evaluasi metrik   |  Setiap 5 sampai 10 detik Evaluasi metrik yang lebih sering memungkinkan Amazon EMR membuat keputusan penskalaan yang lebih tepat.  |  Anda dapat menentukan periode evaluasi hanya dalam penambahan lima menit.  | 
|  Aplikasi yang didukung  |  Hanya aplikasi YARN yang didukung, seperti Spark, Hadoop, Hive, Flink. Penskalaan terkelola Amazon EMR tidak mendukung aplikasi yang tidak didasarkan pada YARN, seperti Presto atau. HBase  |  Anda dapat memilih aplikasi mana yang didukung saat menentukan aturan penskalaan otomatis.   | 

## Pertimbangan-pertimbangan
<a name="emr-scaling-considerations"></a>
+ Cluster EMR Amazon selalu terdiri dari satu atau tiga node utama. Setelah Anda awalnya mengkonfigurasi cluster, Anda hanya dapat menskalakan inti dan node tugas. Anda tidak dapat menskalakan jumlah node utama untuk cluster. 
+ Misalnya grup, operasi konfigurasi ulang dan operasi pengubahan ukuran terjadi secara berurutan dan tidak bersamaan. Jika Anda memulai konfigurasi ulang saat grup instans mengubah ukuran, konfigurasi ulang dimulai setelah grup instance menyelesaikan pengubahan ukuran yang sedang berlangsung. Sebaliknya, jika Anda memulai operasi pengubahan ukuran saat grup instance sibuk dengan konfigurasi ulang, pengubahan ukuran dimulai setelah konfigurasi ulang selesai. 

# Menggunakan penskalaan terkelola di Amazon EMR
<a name="emr-managed-scaling"></a>

**penting**  
Kami sangat menyarankan Anda menggunakan rilis EMR Amazon terbaru (Amazon EMR 7.12.0) untuk penskalaan terkelola. Dalam beberapa rilis awal, Anda mungkin mengalami kegagalan aplikasi intermiten atau penundaan dalam penskalaan. Amazon EMR menyelesaikan masalah ini dengan rilis 5.x 5.30.2, 5.31.1, 5.32.1, 5.33.1 dan lebih tinggi, dan dengan rilis 6.x 6.1.1, 6.2.1, 6.3.1 dan lebih tinggi. Untuk informasi selengkapnya Ketersediaan wilayah dan rilis, lihat[Ketersediaan penskalaan terkelola](#emr-managed-scaling-availability).

## Ikhtisar
<a name="emr-managed-scaling-overview"></a>

Dengan Amazon EMR versi 5.30.0 dan yang lebih tinggi (kecuali Amazon EMR 6.0.0), Anda dapat mengaktifkan penskalaan terkelola Amazon EMR. Penskalaan terkelola memungkinkan Anda secara otomatis menambah atau mengurangi jumlah instance atau unit di klaster berdasarkan beban kerja. Amazon EMR terus mengevaluasi metrik klaster untuk membuat keputusan penskalaan yang mengoptimalkan kluster Anda untuk biaya dan kecepatan. Penskalaan terkelola tersedia untuk cluster yang terdiri dari grup instans atau armada instance.

## Ketersediaan penskalaan terkelola
<a name="emr-managed-scaling-availability"></a>
+ Berikut ini Wilayah AWS, penskalaan terkelola Amazon EMR tersedia dengan Amazon EMR 6.14.0 dan yang lebih tinggi:
  + Asia Pasifik (Taipei) (ap-timur-2)
  + Asia Pasifik (Melbourne) (ap-southeast-4)
  + Asia Pasifik (Malaysia) (ap-tenggara 5)
  + Asia Pasifik (Selandia Baru) (ap-tenggara 6)
  + Asia Pasifik (Thailand) (ap-tenggara 7)
  + Kanada Barat (Calgary) (ca-west-1)
  + Eropa (Spanyol) (eu-south-2)
  + Meksiko (Tengah) (mx-central-1)
+ Berikut ini Wilayah AWS, penskalaan terkelola Amazon EMR tersedia dengan Amazon EMR 5.30.0 dan 6.1.0 dan yang lebih tinggi:
  + AS Timur (Virginia Utara) (us-east-1)
  + US East (Ohio) (us-east-2)
  + AS Barat (Oregon) (us-west-2)
  + AS Barat (California Utara) (us-west-1)
  + Africa (Cape Town) (af-south-1)
  + Asia Pacific (Hong Kong) (ap-east-1)
  + Asia Pasifik (Mumbai) (ap-south-1)
  + Asia Pasifik (Hyderabad) (ap-south-2)
  + Asia Pasifik (Seoul) (ap-northeast-2)
  + Asia Pasifik (Singapura) (ap-southeast-1)
  + Asia Pasifik (Sydney) (ap-southeast-2)
  + Asia Pasifik (Jakarta) (ap-southeast-3)
  + Asia Pasifik (Tokyo) (ap-northeast-1)
  + Asia Pasifik (Osaka) (ap-northeast-3)
  + Kanada (Pusat) (ca-central-1)
  + Amerika Selatan (Sao Paulo) (sa-east-1)
  + Eropa (Frankfurt) (eu-central-1)
  + Eropa (Zurich) (eu-central-2)
  + Eropa (Irlandia) (eu-west-1)
  + Eropa (London) (eu-west-2)
  + Europe (Milan) (eu-south-1)
  + Eropa (Paris) (eu-west-3)
  + Eropa (Stockholm) (eu-north-1)
  + Israel (Tel Aviv) (il-central-1)
  + Timur Tengah (UEA) (me-central-1)
  + Tiongkok (Beijing) (cn-utara-1)
  + Tiongkok (Ningxia) (cn-barat laut-1)
  + AWS GovCloud (AS-Timur) (us-gov-east-1)
  + AWS GovCloud (AS-Barat) (us-gov-west-1)
+ Penskalaan terkelola Amazon EMR hanya berfungsi dengan aplikasi YARN, seperti Spark, Hadoop, Hive, dan Flink. Itu tidak mendukung aplikasi yang tidak didasarkan pada YARN, seperti Presto dan HBase.

## Parameter penskalaan terkelola
<a name="emr-managed-scaling-parameters"></a>

Anda harus mengonfigurasi parameter berikut untuk penskalaan terkelola. Batas hanya berlaku untuk simpul utama dan tugas. Anda tidak dapat menskalakan node utama setelah konfigurasi awal.
+ **Minimum** (`MinimumCapacityUnits`) - Batas bawah kapasitas EC2 yang diizinkan dalam sebuah klaster. Hal ini diukur melalui inti atau instans virtual central processing unit (vCPU) untuk grup instans. Hal ini diukur melalui unit untuk armada instans. 
+ **Maksimum** (`MaximumCapacityUnits`) – Batas atas kapasitas EC2 yang diizinkan dalam sebuah klaster. Hal ini diukur melalui inti atau instans virtual central processing unit (vCPU) untuk grup instans. Hal ini diukur melalui unit untuk armada instans. 
+ **Batas Sesuai Permintaan** (`MaximumOnDemandCapacityUnits`) (Opsional) — Batas atas kapasitas EC2 yang diizinkan untuk jenis pasar Sesuai Permintaan dalam sebuah klaster. Jika parameter ini tidak ditentukan, default ke nilai `MaximumCapacityUnits`. 
  + Parameter ini digunakan untuk memisah alokasi kapasitas antara Instans Sesuai Permintaan dan Instans Spot. Misalnya, jika Anda menetapkan parameter minimum sebagai 2 instans, parameter maksimum sebagai 100 instans, batas Sesuai Permintaan sebagai 10 instans, maka penskalaan terkelola Amazon EMR menskalakan hingga 10 Instans Sesuai Permintaan dan mengalokasikan kapasitas yang tersisa ke Instans Spot. Untuk informasi selengkapnya, lihat [Skenario alokasi simpul](managed-scaling-allocation-strategy.md#node-allocation-scenarios).
+ **Simpul inti maksimum** (`MaximumCoreCapacityUnits`) (Opsional) - Batas atas kapasitas EC2 yang diizinkan untuk tipe simpul inti dalam sebuah klaster. Jika parameter ini tidak ditentukan, default ke nilai `MaximumCapacityUnits`. 
  + Parameter ini digunakan untuk memisah alokasi kapasitas antara simpul inti dan simpul tugas. Misalnya, jika Anda menetapkan parameter minimum sebagai 2 instance, maksimum 100 instance, node inti maksimum sebagai 17 instance, maka Amazon EMR mengelola skala skala hingga 17 node inti dan mengalokasikan 83 instance yang tersisa ke node tugas. Untuk informasi selengkapnya, lihat [Skenario alokasi simpul](managed-scaling-allocation-strategy.md#node-allocation-scenarios). 

Untuk informasi selengkapnya tentang parameter penskalaan terkelola, lihat [https://docs.aws.amazon.com/emr/latest/APIReference/API_ComputeLimits.html](https://docs.aws.amazon.com/emr/latest/APIReference/API_ComputeLimits.html).

## Pertimbangan untuk penskalaan terkelola Amazon EMR
<a name="emr-managed-scaling-considerations"></a>
+ Penskalaan terkelola didukung dalam rilis EMR Amazon terbatas Wilayah AWS dan. Untuk informasi selengkapnya, lihat [Ketersediaan penskalaan terkelola](#emr-managed-scaling-availability).
+ Anda harus mengonfigurasi parameter yang diperlukan untuk penskalaan terkelola Amazon EMR. Untuk informasi selengkapnya, lihat [Parameter penskalaan terkelola](#emr-managed-scaling-parameters). 
+ Untuk menggunakan penskalaan terkelola, proses kolektor metrik harus dapat terhubung ke titik akhir API publik untuk penskalaan terkelola di API Gateway. Jika Anda menggunakan nama DNS pribadi dengan Amazon Virtual Private Cloud, penskalaan terkelola tidak akan berfungsi dengan baik. Untuk memastikan bahwa penskalaan terkelola berfungsi, kami sarankan Anda melakukan salah satu tindakan berikut:
  + Hapus titik akhir VPC antarmuka API Gateway dari VPC Amazon Anda.
  + Ikuti petunjuk di [Mengapa saya mendapatkan kesalahan HTTP 403 Forbidden saat menghubungkan ke API Gateway saya APIs dari VPC](https://aws.amazon.com/premiumsupport/knowledge-center/api-gateway-vpc-connections/)? untuk menonaktifkan pengaturan nama DNS pribadi.
  + Luncurkan cluster Anda di subnet pribadi sebagai gantinya. Untuk informasi lebih lanjut, lihat topik di[Subnet privat](emr-clusters-in-a-vpc.md#emr-vpc-private-subnet).
+ Jika pekerjaan YARN Anda sebentar-sebentar lambat selama penurunan skala, dan log Manajer Sumber Daya YARN menunjukkan bahwa sebagian besar node Anda dicantumkan penolakan selama waktu itu, Anda dapat menyesuaikan ambang batas waktu penonaktifan.

  Kurangi `spark.blacklist.decommissioning.timeout` dari satu jam menjadi satu menit untuk membuat node tersedia untuk wadah tertunda lainnya untuk melanjutkan pemrosesan tugas.

  Anda juga harus menyetel `YARN.resourcemanager.nodemanager-graceful-decommission-timeout-secs` ke nilai yang lebih besar untuk memastikan Amazon EMR tidak memaksa menghentikan node sementara “Spark Task” terpanjang masih berjalan di node. Default saat ini adalah 60 menit, yang berarti YARN menghentikan kontainer secara paksa setelah 60 menit setelah node memasuki status dekomisi.

  Contoh berikut baris YARN Resource Manager Log menunjukkan node yang ditambahkan ke status dekomisi:

  ```
  2021-10-20 15:55:26,994 INFO org.apache.hadoop.YARN.server.resourcemanager.DefaultAMSProcessor (IPC Server handler 37 on default port 8030): blacklist are updated in Scheduler.blacklistAdditions: [ip-10-10-27-207.us-west-2.compute.internal, ip-10-10-29-216.us-west-2.compute.internal, ip-10-10-31-13.us-west-2.compute.internal, ... , ip-10-10-30-77.us-west-2.compute.internal], blacklistRemovals: []
  ```

  [Lihat [detail selengkapnya tentang cara Amazon EMR terintegrasi dengan daftar penolakan YARN selama penonaktifan node, kasus ketika node](https://aws.amazon.com/blogs/big-data/spark-enhancements-for-elasticity-and-resiliency-on-amazon-emr/)[di Amazon EMR dapat ditolak terdaftar](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-troubleshoot-error-resource-3.html), dan mengonfigurasi perilaku penonaktifan simpul Spark.](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-spark-configure.html#spark-decommissioning)
+ Untuk beban kerja Spark, menonaktifkan Spark Dynamic Resource Allocator (DRA) dengan mengubah properti Spark **spark.DynamicAllocation.enabled menjadi `FALSE` dapat menyebabkan masalah Penskalaan** Terkelola, di mana klaster dapat ditingkatkan lebih dari yang diperlukan untuk beban kerja Anda (hingga komputasi maksimum). Saat menggunakan Penskalaan Terkelola untuk beban kerja ini, sebaiknya Anda tetap mengaktifkan Spark DRA, yang merupakan status default properti ini.
+ Pemanfaatan volume EBS yang berlebihan dapat menyebabkan masalah Penskalaan Terkelola. Kami menyarankan Anda mempertahankan volume EBS di bawah 90% pemanfaatan. Untuk informasi selengkapnya, lihat [Opsi dan perilaku penyimpanan instans di Amazon EMR](emr-plan-storage.md).
+  CloudWatch Metrik Amazon sangat penting agar penskalaan terkelola Amazon EMR dapat beroperasi. Kami menyarankan Anda memantau CloudWatch metrik Amazon dengan cermat untuk memastikan data tidak hilang. Untuk informasi selengkapnya tentang cara mengonfigurasi CloudWatch alarm untuk mendeteksi metrik yang hilang, lihat Menggunakan alarm [Amazon CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html). 
+ Operasi penskalaan terkelola pada klaster 5.30.0 dan 5.30.1 tanpa Presto yang diinstal dapat menyebabkan gagal aplikasi atau menyebabkan grup instans seragam atau armada instans tetap berada di negara `ARRESTED`, terutama ketika operasi menurunkan skala diikuti dengan cepat oleh operasi menaikkan skala.

  Sebagai solusinya, pilih Presto sebagai aplikasi untuk diinstal saat Anda membuat cluster dengan Amazon EMR rilis 5.30.0 dan 5.30.1, bahkan jika pekerjaan Anda tidak memerlukan Presto.
+ Saat Anda menetapkan node inti maksimum dan batas On-Demand untuk penskalaan terkelola Amazon EMR, pertimbangkan perbedaan antara grup instans dan armada instans. Setiap grup instans terdiri dari tipe instans yang sama dan opsi pembelian yang sama untuk instans: Sesuai Permintaan atau Spot. Untuk setiap armada instans, Anda dapat menentukan hingga lima tipe instans, yang dapat disediakan sebagai instans Sesuai Permintaan dan instans Spot. Untuk informasi selengkapnya, lihat [Membuat sebuah klaster dengan armada instans atau grup instans seragam](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-instance-group-configuration.html), [Opsi armada instans](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-instance-fleet.html#emr-instance-fleet-options), dan [Skenario alokasi simpul](managed-scaling-allocation-strategy.md#node-allocation-scenarios).
+ Dengan Amazon EMR 5.30.0 dan yang lebih tinggi, jika Anda menghapus aturan default **Izinkan Semua** keluar ke 0.0.0.0/ untuk grup keamanan master, Anda harus menambahkan aturan yang memungkinkan konektivitas TCP keluar ke grup keamanan Anda untuk akses layanan pada port 9443. Grup keamanan Anda untuk akses layanan juga harus mengizinkan lalu lintas TCP masuk pada port 9443 dari grup keamanan utama. Untuk informasi selengkapnya tentang mengonfigurasi grup keamanan, lihat [grup keamanan yang dikelola Amazon EMR untuk contoh utama (subnet pribadi)](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-man-sec-groups.html#emr-sg-elasticmapreduce-master-private).
+ Anda dapat menggunakan AWS CloudFormation untuk mengonfigurasi penskalaan terkelola Amazon EMR. Untuk informasi selengkapnya, lihat [AWS::EMR::Cluster](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html) di *AWS CloudFormation Panduan Pengguna*. 
+ Jika Anda menggunakan node Spot, pertimbangkan untuk menggunakan label node untuk mencegah Amazon EMR menghapus proses aplikasi saat Amazon EMR menghapus node Spot. Untuk informasi selengkapnya tentang label node, lihat [Node tugas](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-master-core-task-nodes.html#emr-plan-task).
+ Pelabelan node tidak didukung secara default di Amazon EMR rilis 6.15 atau lebih rendah. Untuk informasi selengkapnya, lihat [Memahami tipe simpul: node primer, inti, dan tugas.](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-master-core-task-nodes.html)
+ Jika Anda menggunakan Amazon EMR rilis 6.15 atau lebih rendah, Anda hanya dapat menetapkan label node berdasarkan jenis node, seperti inti dan node tugas. Namun, jika Anda menggunakan Amazon EMR rilis 7.0 atau yang lebih tinggi, Anda dapat mengonfigurasi label node berdasarkan jenis node dan tipe pasar, seperti On-Demand dan Spot.
+ Jika permintaan proses aplikasi meningkat dan permintaan pelaksana berkurang ketika Anda membatasi proses aplikasi ke node inti, Anda dapat menambahkan kembali node inti dan menghapus node tugas dalam operasi pengubahan ukuran yang sama. Untuk informasi selengkapnya, lihat [Memahami strategi dan skenario alokasi node](https://docs.aws.amazon.com/emr/latest/ManagementGuide/managed-scaling-allocation-strategy.html).
+ Amazon EMR tidak memberi label pada node tugas, jadi Anda tidak dapat menyetel properti YARN untuk membatasi proses aplikasi hanya untuk node tugas. Namun, jika Anda ingin menggunakan tipe pasar sebagai label node, Anda dapat menggunakan `SPOT` label `ON_DEMAND` atau untuk penempatan proses aplikasi. Kami tidak menyarankan menggunakan node Spot untuk proses utama aplikasi.
+ Saat menggunakan label node, total unit yang berjalan di klaster sementara dapat melebihi set komputasi maksimal dalam kebijakan penskalaan terkelola sementara Amazon EMR menonaktifkan beberapa instans Anda. Total unit yang diminta akan selalu berada di atau di bawah perhitungan maksimal polis Anda. 
+ Penskalaan terkelola hanya mendukung label node `ON_DEMAND` dan `SPOT` atau `CORE` dan`TASK`. Label node kustom tidak didukung.
+ Amazon EMR membuat label node saat membuat cluster dan sumber daya penyediaan. Amazon EMR tidak mendukung penambahan label node saat Anda mengkonfigurasi ulang cluster. Anda juga tidak dapat memodifikasi label node saat mengonfigurasi penskalaan terkelola setelah meluncurkan cluster.
+ Skala skala terkelola inti dan node tugas secara independen berdasarkan proses aplikasi dan permintaan pelaksana. Untuk mencegah masalah kehilangan data HDFS selama penurunan skala inti, ikuti praktik standar untuk node inti. Untuk mempelajari lebih lanjut tentang praktik terbaik tentang node inti dan replikasi HDFS, lihat [Pertimbangan dan](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-ha-considerations.html) praktik terbaik.
+ Anda tidak dapat menempatkan proses aplikasi dan pelaksana hanya pada `core` atau node. `ON_DEMAND` Jika Anda ingin menambahkan proses aplikasi dan pelaksana pada salah satu node, jangan gunakan konfigurasi. `yarn.node-labels.am.default-node-label-expression`

  Misalnya, untuk menempatkan proses aplikasi dan pelaksana di `ON_DEMAND` node, atur komputasi maks sama dengan maksimum di node. `ON_DEMAND` Hapus juga `yarn.node-labels.am.default-node-label-expression` konfigurasi.

  Untuk menambahkan proses aplikasi dan pelaksana pada `core` node, hapus konfigurasi. `yarn.node-labels.am.default-node-label-expression`
+  Saat Anda menggunakan penskalaan terkelola dengan label node, setel properti `yarn.scheduler.capacity.maximum-am-resource-percent: 1` jika Anda berencana untuk menjalankan beberapa aplikasi secara paralel. Melakukannya memastikan bahwa proses aplikasi Anda sepenuhnya memanfaatkan yang tersedia `CORE` atau `ON_DEMAND` node. 
+  Jika Anda menggunakan penskalaan terkelola dengan label node, setel properti `yarn.resourcemanager.decommissioning.timeout` ke nilai yang lebih panjang dari aplikasi yang berjalan paling lama di cluster Anda. Melakukannya mengurangi kemungkinan penskalaan terkelola Amazon EMR perlu menjadwal ulang aplikasi Anda ke remisi atau node. `CORE` `ON_DEMAND` 
+ Untuk mengurangi risiko kegagalan aplikasi karena kehilangan data acak, Amazon EMR mengumpulkan metrik dari cluster untuk menentukan node yang memiliki data shuffle transien yang ada dari tahap saat ini dan sebelumnya. Dalam kasus yang jarang terjadi, metrik dapat terus melaporkan data basi untuk aplikasi yang sudah selesai atau dihentikan. Hal ini dapat memengaruhi penurunan skala instans tepat waktu di klaster Anda. Untuk cluster yang memiliki sejumlah besar data shuffle, pertimbangkan untuk menggunakan EMR versi 6.13 dan yang lebih baru.

## Riwayat fitur
<a name="emr-managed-scaling-history"></a>

Tabel ini mencantumkan pembaruan untuk kemampuan penskalaan terkelola Amazon EMR.


| Tanggal rilis | Kemampuan | Amazon EMR versi | 
| --- | --- | --- | 
| November 20, 2024 | Penskalaan terkelola tersedia di il-central-1 wilayah Israel (Tel Aviv), Timur me-central-1 Tengah (UEA), dan ap-northeast-3 Asia Pasifik (Osaka). | 5.30.0 dan 6.1.0 dan lebih tinggi | 
| November 15, 2024 | Penskalaan terkelola tersedia di Wilayah eu-central-2 Eropa (Zurich). | 5.30.0 dan 6.1.0 dan lebih tinggi | 
| Agustus 20, 2024 | Label node sekarang tersedia dalam penskalaan terkelola, sehingga Anda dapat memberi label pada instance Anda berdasarkan tipe pasar atau tipe node untuk meningkatkan penskalaan otomatis. | 7.2.0 dan lebih tinggi | 
| Maret 31, 2024 | Penskalaan terkelola tersedia di Wilayah ap-south-2 Asia Pasifik (Hyderabad). | 6.14.0 dan lebih tinggi | 
| Februari 13, 2024 | Penskalaan terkelola tersedia di eu-south-2 Wilayah Eropa (Spanyol). | 6.14.0 dan lebih tinggi | 
| Oktober 10, 2023 | Penskalaan terkelola tersedia di Wilayah ap-southeast-3 Asia Pasifik (Jakarta). | 6.14.0 dan lebih tinggi | 
| Juli 28, 2023 | Peningkatan penskalaan terkelola untuk beralih ke grup instans tugas yang berbeda saat Amazon EMR mengalami penundaan peningkatan skala dengan grup instans saat ini. | 5.34.0 dan lebih tinggi, 6.4.0 dan lebih tinggi | 
| Juni 16, 2023 | Peningkatan penskalaan terkelola untuk mengetahui node yang menjalankan master aplikasi sehingga node tersebut tidak diperkecil. Untuk informasi selengkapnya, lihat [Memahami strategi dan skenario alokasi node EMR Amazon](managed-scaling-allocation-strategy.md). | 5.34.0 dan lebih tinggi, 6.4.0 dan lebih tinggi | 
| Maret 21, 2022 | Menambahkan kesadaran data shuffle Spark yang digunakan saat menskalakan cluster. Untuk klaster EMR Amazon dengan Apache Spark dan fitur penskalaan terkelola yang diaktifkan, Amazon EMR terus memantau pelaksana Spark dan lokasi data acak perantara. Dengan menggunakan informasi ini, Amazon EMR hanya mengurangi instance yang kurang dimanfaatkan yang tidak berisi data shuffle yang digunakan secara aktif. Ini mencegah perhitungan ulang data shuffle yang hilang, membantu menurunkan biaya dan meningkatkan kinerja pekerjaan. Untuk informasi selengkapnya, lihat [Panduan Pemrograman Spark](https://spark.apache.org/docs/latest/rdd-programming-guide.html#shuffle-operations). | 5.34.0 dan lebih tinggi, 6.4.0 dan lebih tinggi | 

# Konfigurasikan penskalaan terkelola untuk Amazon EMR
<a name="managed-scaling-configure"></a>

Bagian berikut menjelaskan cara meluncurkan cluster EMR yang menggunakan penskalaan terkelola dengan Konsol Manajemen AWS,, atau. AWS SDK untuk Java AWS Command Line Interface

**Topics**
+ [Gunakan Konsol Manajemen AWS untuk mengonfigurasi penskalaan terkelola](#managed-scaling-console)
+ [Gunakan AWS CLI untuk mengonfigurasi penskalaan terkelola](#managed-scaling-cli)
+ [Gunakan AWS SDK untuk Java untuk mengonfigurasi penskalaan terkelola](#managed-scaling-sdk)

## Gunakan Konsol Manajemen AWS untuk mengonfigurasi penskalaan terkelola
<a name="managed-scaling-console"></a>

Anda dapat menggunakan konsol EMR Amazon untuk mengonfigurasi penskalaan terkelola saat membuat klaster atau mengubah kebijakan penskalaan terkelola untuk klaster yang sedang berjalan.

------
#### [ Console ]

**Untuk mengonfigurasi penskalaan terkelola saat Anda membuat klaster dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. **Di bawah **EMR pada EC2** di panel navigasi kiri, pilih Clusters, lalu pilih **Create cluster**.**

1. **Pilih rilis EMR Amazon **emr-5.30.0 atau yang lebih baru, kecuali versi emr-6.0.0**.** 

1. Di bawah **opsi penskalaan dan penyediaan klaster, pilih **Gunakan** penskalaan** yang dikelola EMR. Tentukan jumlah instans **Minimum** dan **Maksimum**, instans **node inti Maksimum**, dan instans Sesuai Permintaan **Maksimum**.

1. Pilih opsi lain yang berlaku untuk cluster Anda. 

1. Untuk meluncurkan klaster Anda, pilih **Buat klaster**.

**Untuk mengonfigurasi penskalaan terkelola pada cluster yang ada dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Cluster**, dan pilih cluster yang ingin Anda perbarui.

1. Pada tab **Instans** pada halaman detail klaster, temukan bagian **Pengaturan grup Instans**. Pilih **Edit penskalaan klaster** untuk menentukan nilai baru untuk Jumlah instans **Minimum** dan **Maksimum** serta batas **Sesuai** Permintaan.

------

## Gunakan AWS CLI untuk mengonfigurasi penskalaan terkelola
<a name="managed-scaling-cli"></a>

Anda dapat menggunakan AWS CLI perintah untuk Amazon EMR untuk mengonfigurasi penskalaan terkelola saat membuat klaster. Anda dapat menggunakan sintaks steno, menentukan konfigurasi JSON inline dalam perintah yang relevan, atau Anda dapat mereferensikan file yang berisi konfigurasi JSON. Anda juga dapat menerapkan kebijakan penskalaan terkelola ke klaster yang ada dan menghapus kebijakan penskalaan terkelola yang sebelumnya diterapkan. Selain itu, Anda dapat mengambil detail konfigurasi kebijakan penskalaan dari klaster berjalan.

**Mengaktifkan Penskalaan Terkelola Selama Peluncuran Cluster**

Anda dapat mengaktifkan penskalaan terkelola selama peluncuran klaster sebagaimana yang ditunjukkan oleh contoh berikut.

```
aws emr create-cluster \
 --service-role EMR_DefaultRole \
 --release-label emr-7.12.0 \
 --name EMR_Managed_Scaling_Enabled_Cluster \
 --applications Name=Spark Name=Hbase \
 --ec2-attributes KeyName=keyName,InstanceProfile=EMR_EC2_DefaultRole \
 --instance-groups InstanceType=m4.xlarge,InstanceGroupType=MASTER,InstanceCount=1 InstanceType=m4.xlarge,InstanceGroupType=CORE,InstanceCount=2 \
 --region us-east-1 \
 --managed-scaling-policy ComputeLimits='{MinimumCapacityUnits=2,MaximumCapacityUnits=4,UnitType=Instances}'
```

Anda juga dapat menentukan konfigurasi kebijakan terkelola menggunakan managed-scaling-policy opsi -- saat Anda menggunakan`create-cluster`. 

**Menerapkan Kebijakan Penskalaan Terkelola ke Cluster yang Ada**

Anda dapat menerapkan kebijakan penskalaan terkelola ke klaster yang ada sebagaimana yang ditunjukkan oleh contoh berikut.

```
aws emr put-managed-scaling-policy  
--cluster-id j-123456  
--managed-scaling-policy ComputeLimits='{MinimumCapacityUnits=1,
MaximumCapacityUnits=10,  MaximumOnDemandCapacityUnits=10, UnitType=Instances}'
```

Anda juga dapat menerapkan kebijakan penskalaan terkelola ke klaster yang sudah ada dengan menggunakan perintah `aws emr put-managed-scaling-policy`. Contoh berikut menggunakan referensi ke file JSON, `managedscaleconfig.json`, yang menentukan konfigurasi kebijakan penskalaan terkelola.

```
aws emr put-managed-scaling-policy --cluster-id j-123456 --managed-scaling-policy file://./managedscaleconfig.json
```

Contoh berikut menunjukkan isi file `managedscaleconfig.json`, yang mendefinisikan kebijakan penskalaan terkelola.

```
{
    "ComputeLimits": {
        "UnitType": "Instances",
        "MinimumCapacityUnits": 1,
        "MaximumCapacityUnits": 10,
        "MaximumOnDemandCapacityUnits": 10
    }
}
```

**Mengambil Konfigurasi Kebijakan Penskalaan Terkelola**

Perintah `GetManagedScalingPolicy` mengambil konfigurasi kebijakan. Sebagai contoh, perintah berikut ini mengambil konfigurasi untuk klaster dengan ID klaster `j-123456`.

```
aws emr get-managed-scaling-policy --cluster-id j-123456
```

Perintah tersebut menghasilkan output seperti berikut ini.

```
 1. {
 2.    "ManagedScalingPolicy": { 
 3.       "ComputeLimits": { 
 4.          "MinimumCapacityUnits": 1,
 5.          "MaximumOnDemandCapacityUnits": 10,
 6.          "MaximumCapacityUnits": 10,
 7.          "UnitType": "Instances"
 8.       }
 9.    }
10. }
```

Untuk informasi selengkapnya tentang menggunakan perintah EMR Amazon di AWS CLI, lihat. [https://docs.aws.amazon.com/cli/latest/reference/emr](https://docs.aws.amazon.com/cli/latest/reference/emr)

**Menghapus Kebijakan Penskalaan Terkelola**

Perintah `RemoveManagedScalingPolicy` menghapus konfigurasi kebijakan. Sebagai contoh, perintah berikut menghapus konfigurasi untuk klaster dengan ID klaster `j-123456`.

```
aws emr remove-managed-scaling-policy --cluster-id j-123456
```

## Gunakan AWS SDK untuk Java untuk mengonfigurasi penskalaan terkelola
<a name="managed-scaling-sdk"></a>

Kutipan program berikut menunjukkan cara mengkonfigurasi penskalaan terkelola menggunakan AWS SDK untuk Java:

```
package com.amazonaws.emr.sample;

import java.util.ArrayList;
import java.util.List;

import com.amazonaws.AmazonClientException;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.elasticmapreduce.AmazonElasticMapReduce;
import com.amazonaws.services.elasticmapreduce.AmazonElasticMapReduceClientBuilder;
import com.amazonaws.services.elasticmapreduce.model.Application;
import com.amazonaws.services.elasticmapreduce.model.ComputeLimits;
import com.amazonaws.services.elasticmapreduce.model.ComputeLimitsUnitType;
import com.amazonaws.services.elasticmapreduce.model.InstanceGroupConfig;
import com.amazonaws.services.elasticmapreduce.model.JobFlowInstancesConfig;
import com.amazonaws.services.elasticmapreduce.model.ManagedScalingPolicy;
import com.amazonaws.services.elasticmapreduce.model.RunJobFlowRequest;
import com.amazonaws.services.elasticmapreduce.model.RunJobFlowResult;

public class CreateClusterWithManagedScalingWithIG {

	public static void main(String[] args) {
		AWSCredentials credentialsFromProfile = getCreadentials("AWS-Profile-Name-Here");
		
		/**
		 * Create an Amazon EMR client with the credentials and region specified in order to create the cluster
		 */
		AmazonElasticMapReduce emr = AmazonElasticMapReduceClientBuilder.standard()
			.withCredentials(new AWSStaticCredentialsProvider(credentialsFromProfile))
			.withRegion(Regions.US_EAST_1)
			.build();
		
		/**
		 * Create Instance Groups - Primary, Core, Task
		 */
		InstanceGroupConfig instanceGroupConfigMaster = new InstanceGroupConfig()
				.withInstanceCount(1)
				.withInstanceRole("MASTER")
				.withInstanceType("m4.large")
				.withMarket("ON_DEMAND"); 
				
		InstanceGroupConfig instanceGroupConfigCore = new InstanceGroupConfig()
			.withInstanceCount(4)
			.withInstanceRole("CORE")
			.withInstanceType("m4.large")
			.withMarket("ON_DEMAND");
			
		InstanceGroupConfig instanceGroupConfigTask = new InstanceGroupConfig()
			.withInstanceCount(5)
			.withInstanceRole("TASK")
			.withInstanceType("m4.large")
			.withMarket("ON_DEMAND");

		List<InstanceGroupConfig> igConfigs = new ArrayList<>();
		igConfigs.add(instanceGroupConfigMaster);
		igConfigs.add(instanceGroupConfigCore);
		igConfigs.add(instanceGroupConfigTask);
		
        /**
         *  specify applications to be installed and configured when Amazon EMR creates the cluster
         */
		Application hive = new Application().withName("Hive");
		Application spark = new Application().withName("Spark");
		Application ganglia = new Application().withName("Ganglia");
		Application zeppelin = new Application().withName("Zeppelin");
		
		/** 
		 * Managed Scaling Configuration - 
         * Using UnitType=Instances for clusters composed of instance groups
		 *
         * Other options are: 
         * UnitType = VCPU ( for clusters composed of instance groups)
         * UnitType = InstanceFleetUnits ( for clusters composed of instance fleets)
         **/
		ComputeLimits computeLimits = new ComputeLimits()
				.withMinimumCapacityUnits(1)
				.withMaximumCapacityUnits(20)
				.withUnitType(ComputeLimitsUnitType.Instances);
		
		ManagedScalingPolicy managedScalingPolicy = new ManagedScalingPolicy();
		managedScalingPolicy.setComputeLimits(computeLimits);
		
		// create the cluster with a managed scaling policy
		RunJobFlowRequest request = new RunJobFlowRequest()
	       		.withName("EMR_Managed_Scaling_TestCluster")
	       		.withReleaseLabel("emr-7.12.0")          // Specifies the version label for the Amazon EMR release; we recommend the latest release
	       		.withApplications(hive,spark,ganglia,zeppelin)
	       		.withLogUri("s3://path/to/my/emr/logs")  // A URI in S3 for log files is required when debugging is enabled.
	       		.withServiceRole("EMR_DefaultRole")      // If you use a custom IAM service role, replace the default role with the custom role.
	       		.withJobFlowRole("EMR_EC2_DefaultRole")  // If you use a custom Amazon EMR role for EC2 instance profile, replace the default role with the custom Amazon EMR role.
	       		.withInstances(new JobFlowInstancesConfig().withInstanceGroups(igConfigs)
	       	   		.withEc2SubnetId("subnet-123456789012345")
	           		.withEc2KeyName("my-ec2-key-name") 
	           		.withKeepJobFlowAliveWhenNoSteps(true))    
	       		.withManagedScalingPolicy(managedScalingPolicy);
	   RunJobFlowResult result = emr.runJobFlow(request); 
	   
	   System.out.println("The cluster ID is " + result.toString());
	}
	
	public static AWSCredentials getCredentials(String profileName) {
		// specifies any named profile in .aws/credentials as the credentials provider
		try {
			return new ProfileCredentialsProvider("AWS-Profile-Name-Here")
					.getCredentials(); 
        } catch (Exception e) {
            throw new AmazonClientException(
                    "Cannot load credentials from .aws/credentials file. " +
                    "Make sure that the credentials file exists and that the profile name is defined within it.",
                    e);
        }
	}
	
	public CreateClusterWithManagedScalingWithIG() { }
}
```

# Penskalaan Lanjutan untuk Amazon EMR
<a name="managed-scaling-allocation-strategy-optimized"></a>

Dimulai dengan Amazon EMR pada EC2 versi 7.0, Anda dapat memanfaatkan Advanced Scaling untuk mengontrol pemanfaatan sumber daya klaster Anda. Advanced Scaling memperkenalkan skala kinerja pemanfaatan untuk menyetel pemanfaatan sumber daya dan tingkat kinerja Anda sesuai dengan kebutuhan bisnis Anda. Nilai yang Anda tetapkan menentukan apakah klaster Anda lebih tertimbang untuk konservasi sumber daya atau peningkatan skala untuk menangani beban kerja sensitif service-level-agreement (SLA), di mana penyelesaian cepat sangat penting. Saat nilai penskalaan disesuaikan, penskalaan terkelola menginterpretasikan maksud Anda dan menskalakan secara cerdas untuk mengoptimalkan sumber daya. Untuk informasi selengkapnya tentang penskalaan terkelola, lihat [Mengonfigurasi penskalaan terkelola untuk Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/managed-scaling-configure.html).

## Pengaturan Penskalaan Tingkat Lanjut
<a name="managed-scaling-allocation-strategy-optimized-strategies"></a>

Nilai yang Anda set untuk Advanced Scaling mengoptimalkan klaster sesuai kebutuhan Anda. Nilai berkisar dari **1** - **100**. Nilai yang mungkin adalah **1**, **25**, **50**, **75** dan **100**. Jika Anda mengatur indeks ke nilai selain ini, itu menghasilkan kesalahan validasi. 

Nilai penskalaan dipetakan ke strategi pemanfaatan sumber daya. Daftar berikut mendefinisikan beberapa di antaranya:
+ **Pemanfaatan dioptimalkan [1]** - Pengaturan ini mencegah sumber daya melebihi penyediaan. Gunakan nilai rendah ketika Anda ingin menjaga biaya tetap rendah dan memprioritaskan pemanfaatan sumber daya yang efisien. Ini menyebabkan cluster meningkat kurang agresif. Ini berfungsi dengan baik untuk kasus penggunaan ketika ada lonjakan beban kerja yang terjadi secara teratur dan Anda tidak ingin sumber daya meningkat terlalu cepat.
+ **Seimbang [50]** — Ini menyeimbangkan pemanfaatan sumber daya dan kinerja pekerjaan. Pengaturan ini cocok untuk beban kerja yang stabil di mana sebagian besar tahapan memiliki runtime yang stabil. Ini juga cocok untuk beban kerja dengan campuran tahapan jangka pendek dan panjang. Sebaiknya mulai dengan pengaturan ini jika Anda tidak yakin mana yang harus dipilih.
+ **Kinerja dioptimalkan [100]** — Strategi ini memprioritaskan kinerja. Cluster meningkatkan skala secara agresif untuk memastikan bahwa pekerjaan selesai dengan cepat dan memenuhi target kinerja. Kinerja yang dioptimalkan cocok untuk beban kerja sensitif service-level-agreement (SLA) di mana waktu lari cepat sangat penting.

**catatan**  
Nilai perantara yang tersedia menyediakan jalan tengah di antara strategi untuk menyempurnakan perilaku Penskalaan Lanjutan klaster Anda.

## Manfaat Advanced Scaling
<a name="managed-scaling-allocation-strategy-optimized-benefits"></a>

Karena Anda memiliki variabilitas dalam lingkungan dan persyaratan Anda, seperti mengubah volume data, penyesuaian target biaya, dan implementasi SLA, penskalaan klaster dapat membantu Anda menyesuaikan konfigurasi klaster untuk mencapai tujuan Anda. Manfaat utama meliputi:
+ **Kontrol granular yang disempurnakan** - Pengenalan pengaturan pemanfaatan-kinerja memungkinkan Anda untuk dengan mudah menyesuaikan perilaku penskalaan klaster Anda sesuai dengan kebutuhan Anda. Anda dapat meningkatkan skala untuk memenuhi permintaan sumber daya komputasi atau menurunkan skala untuk menghemat sumber daya, berdasarkan pola penggunaan Anda.
+ **Optimalisasi biaya yang ditingkatkan** — Anda dapat memilih nilai pemanfaatan yang rendah karena persyaratan menentukan untuk lebih mudah memenuhi tujuan biaya Anda.

## Memulai dengan optimasi
<a name="managed-scaling-allocation-strategy-optimized-getting-started"></a>

**Pengaturan dan konfigurasi**

Gunakan langkah-langkah ini untuk mengatur indeks kinerja dan mengoptimalkan strategi penskalaan Anda.

1. Perintah berikut memperbarui cluster yang ada dengan strategi penskalaan yang dioptimalkan untuk pemanfaatan`[1]`:

   ```
   aws emr put-managed-scaling-policy --cluster-id 'cluster-id' \
    --managed-scaling-policy '{
     "ComputeLimits": {
       "UnitType": "Instances",
       "MinimumCapacityUnits": 1,
       "MaximumCapacityUnits": 2,
       "MaximumOnDemandCapacityUnits": 2,
       "MaximumCoreCapacityUnits": 2
     },
     "ScalingStrategy": "ADVANCED",
     "UtilizationPerformanceIndex": "1"
   }' \
    --region "region-name"
   ```

   Atribut `ScalingStrategy` dan `UtilizationPerformanceIndex` baru dan relevan dengan optimasi penskalaan. Anda dapat memilih strategi penskalaan yang berbeda dengan menetapkan nilai yang sesuai (1, 25, 50, 75, dan 100) untuk `UtilizationPerformanceIndex` atribut dalam kebijakan penskalaan terkelola.

1. Untuk kembali ke strategi penskalaan terkelola default, jalankan `put-managed-scaling-policy` perintah tanpa menyertakan atribut dan. `ScalingStrategy` `UtilizationPerformanceIndex` (Ini opsional.) Contoh ini menunjukkan cara melakukan ini:

   ```
   aws emr put-managed-scaling-policy \
   --cluster-id 'cluster-id' \
   --managed-scaling-policy '{"ComputeLimits":{"UnitType":"Instances","MinimumCapacityUnits":1,"MaximumCapacityUnits":2,"MaximumOnDemandCapacityUnits":2,"MaximumCoreCapacityUnits":2}}' \
   --region "region-name"
   ```

**Menggunakan metrik pemantauan untuk melacak pemanfaatan cluster**

Dimulai dengan EMR versi 7.3.0, Amazon EMR menerbitkan empat metrik baru yang terkait dengan memori dan CPU virtual. Anda dapat menggunakan ini untuk mengukur pemanfaatan cluster di seluruh strategi penskalaan. Metrik ini tersedia untuk kasus penggunaan apa pun, tetapi Anda dapat menggunakan detail yang disediakan di sini untuk memantau Penskalaan Lanjutan.

Metrik bermanfaat yang tersedia meliputi:
+ **YarnContainersUsedMemoryGBSeconds**— Jumlah memori yang dikonsumsi oleh aplikasi yang dikelola oleh YARN.
+ **YarnContainersTotalMemoryGBSeconds**— Total kapasitas memori yang dialokasikan ke YARN di dalam cluster.
+ **YarnNodesUsedVCPUSeconds**— Total detik VCPU untuk setiap aplikasi yang dikelola oleh YARN.
+ **YarnNodesTotalVCPUSeconds**— Total detik VCPU gabungan untuk memori yang dikonsumsi, termasuk jendela waktu saat benang belum siap.

Anda dapat menganalisis metrik sumber daya menggunakan Wawasan Amazon CloudWatch Log. Fitur termasuk bahasa kueri yang dibuat khusus yang membantu Anda mengekstrak metrik khusus untuk penggunaan dan penskalaan sumber daya.

Kueri berikut, yang dapat Anda jalankan di Amazon CloudWatch konsol, menggunakan matematika metrik untuk menghitung pemanfaatan memori rata-rata (e1) dengan membagi jumlah berjalan dari memori yang dikonsumsi (e2) dengan jumlah total memori yang berjalan (e3):

```
{
    "metrics": [
        [ { "expression": "e2/e3", "label": "Average Mem Utilization", "id": "e1", "yAxis": "right" } ],
        [ { "expression": "RUNNING_SUM(m1)", "label": "RunningTotal-YarnContainersUsedMemoryGBSeconds", "id": "e2", "visible": false } ],
        [ { "expression": "RUNNING_SUM(m2)", "label": "RunningTotal-YarnContainersTotalMemoryGBSeconds", "id": "e3", "visible": false } ],
        [ "AWS_EMR_ManagedResize", "YarnContainersUsedMemoryGBSeconds", "ACCOUNT_ID", "793684541905", "COMPONENT", "ManagerService", "JOB_FLOW_ID", "cluster-id", { "id": "m1", "label": "YarnContainersUsedMemoryGBSeconds" } ],
        [ ".", "YarnContainersTotalMemoryGBSeconds", ".", ".", ".", ".", ".", ".", { "id": "m2", "label": "YarnContainersTotalMemoryGBSeconds" } ]
    ],
    "view": "timeSeries",
    "stacked": false,
    "region": "region",
    "period": 60,
    "stat": "Sum",
    "title": "Memory Utilization"
}
```

Untuk meminta log, Anda dapat memilih CloudWatch di AWS konsol. Untuk informasi selengkapnya tentang menulis kueri CloudWatch, lihat [Menganalisis data CloudWatch log dengan Wawasan Log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) di Panduan Pengguna CloudWatch Log Amazon.

Gambar berikut menunjukkan metrik ini untuk cluster sampel:

![\[Grafik yang menunjukkan statistik pemanfaatan.\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/scaling_graph_EMR.png)


## Pertimbangan dan batasan
<a name="managed-scaling-allocation-strategy-optimized-considerations"></a>
+ Efektivitas strategi penskalaan dapat bervariasi, tergantung pada karakteristik beban kerja unik dan konfigurasi klaster Anda. Kami mendorong Anda untuk bereksperimen dengan pengaturan penskalaan untuk menentukan nilai indeks optimal untuk kasus penggunaan Anda.
+ Amazon EMR Advanced Scaling sangat cocok untuk beban kerja batch. Untuk beban kerja SQL/data-warehousing dan streaming, sebaiknya gunakan strategi penskalaan terkelola default untuk kinerja yang optimal.
+ Amazon EMR Advanced Scaling tidak didukung saat Konfigurasi Label Node diaktifkan di cluster. Jika Advanced Scaling dan Node Label Configurations diaktifkan bersama-sama dalam sebuah cluster, maka perilaku penskalaan akan seolah-olah pengaturan penskalaan terkelola default diaktifkan.
+ Strategi penskalaan yang dioptimalkan kinerja memungkinkan eksekusi pekerjaan lebih cepat dengan mempertahankan sumber daya komputasi tinggi untuk periode yang lebih lama daripada strategi penskalaan terkelola default. Mode ini memprioritaskan penskalaan dengan cepat untuk memenuhi permintaan sumber daya, sehingga penyelesaian pekerjaan lebih cepat. Ini mungkin menghasilkan biaya yang lebih tinggi jika dibandingkan dengan strategi default.
+ Dalam kasus di mana klaster sudah dioptimalkan dan dimanfaatkan sepenuhnya, mengaktifkan Advanced Scaling mungkin tidak memberikan manfaat tambahan. Dalam beberapa situasi, mengaktifkan Advanced Scaling dapat menyebabkan peningkatan biaya karena beban kerja dapat berjalan lebih lama. Dalam kasus ini, sebaiknya gunakan strategi penskalaan terkelola default untuk memastikan alokasi sumber daya dan efisiensi biaya yang optimal.
+ **Dalam konteks penskalaan terkelola, penekanan bergeser ke pemanfaatan sumber daya selama waktu eksekusi karena pengaturan disesuaikan dari kinerja yang dioptimalkan [**100**] ke pemanfaatan yang dioptimalkan [1].** Namun, penting untuk dicatat bahwa hasilnya mungkin bervariasi, berdasarkan sifat beban kerja dan topologi cluster. Untuk memastikan hasil yang optimal untuk kasus penggunaan Anda, kami sangat menyarankan untuk menguji strategi penskalaan dengan beban kerja Anda untuk menentukan pengaturan yang paling sesuai.
+ Hanya **PerformanceUtilizationIndex**menerima nilai-nilai berikut:
  + **1**
  + **25**
  + **50**
  + **75**
  + **100**

  Nilai lain yang dikirimkan menghasilkan kesalahan validasi.

# Memahami strategi dan skenario alokasi node EMR Amazon
<a name="managed-scaling-allocation-strategy"></a>

Bagian ini memberikan ikhtisar strategi alokasi node dan skenario penskalaan umum yang dapat Anda gunakan dengan penskalaan terkelola Amazon EMR. 

## Strategi alokasi simpul
<a name="node-allocation-strategy"></a>

Penskalaan terkelola Amazon EMR mengalokasikan node inti dan tugas berdasarkan strategi scale-up dan scale-down berikut: 

**Strategi penskalaan**
+ Untuk Amazon EMR merilis 7.2 dan yang lebih tinggi, penskalaan terkelola terlebih dahulu menambahkan node berdasarkan label node dan properti YARN pembatasan proses aplikasi. 
+ Untuk Amazon EMR merilis 7.2 dan yang lebih tinggi, jika Anda mengaktifkan label node dan membatasi proses aplikasi ke node`CORE`, Amazon EMR mengelola skala skala node inti dan node tugas jika permintaan proses aplikasi meningkat dan permintaan pelaksana meningkat. Demikian pula, jika Anda mengaktifkan label node dan membatasi proses aplikasi ke `ON_DEMAND` node, skala terkelola meningkatkan skala node sesuai permintaan jika permintaan proses aplikasi meningkat dan meningkatkan skala node spot jika permintaan pelaksana meningkat.
+ Jika label node tidak diaktifkan, penempatan proses aplikasi tidak terbatas pada node atau tipe pasar apa pun.
+ Dengan menggunakan label node, penskalaan terkelola dapat meningkatkan dan menurunkan grup instans dan armada instance yang berbeda dalam operasi pengubahan ukuran yang sama. Misalnya, dalam skenario di mana `instance_group1` memiliki `ON_DEMAND` node dan `instance_group2` memiliki `SPOT` node, dan label node diaktifkan dan proses aplikasi dibatasi untuk node dengan `ON_DEMAND` label. Penskalaan terkelola akan menurunkan `instance_group1` dan meningkatkan skala `instance_group2` jika permintaan proses aplikasi menurun dan permintaan pelaksana meningkat. 
+ Saat Amazon EMR mengalami penundaan peningkatan skala dengan grup instans saat ini, klaster yang menggunakan penskalaan terkelola secara otomatis beralih ke grup instans tugas yang berbeda.
+ Jika parameter `MaximumCoreCapacityUnits` diatur, maka Amazon EMR menskalakan simpul inti sampai unit inti mencapai batas maksimum yang diizinkan. Semua kapasitas yang tersisa ditambahkan ke simpul tugas. 
+ Jika parameter `MaximumOnDemandCapacityUnits` diatur, maka Amazon EMR menskalakan klaster dengan menggunakan instans Sesuai Permintaan sampai unit Sesuai Permintaan mencapai batas maksimum yang diizinkan. Semua kapasitas yang tersisa ditambahkan menggunakan Instans Spot. 
+ Jika kedua parameter `MaximumCoreCapacityUnits` dan `MaximumOnDemandCapacityUnits` diatur, Amazon EMR mempertimbangkan kedua batas selama penskalaan. 

  Misalnya, jika kurang dari`MaximumOnDemandCapacityUnits`, Amazon EMR pertama-tama menskalakan node inti hingga batas kapasitas inti tercapai. `MaximumCoreCapacityUnits` Untuk kapasitas yang tersisa, Amazon EMR pertama-tama menggunakan Instans Sesuai Permintaan untuk menskalakan node tugas hingga batas On-Demand tercapai, dan kemudian menggunakan Instans Spot untuk node tugas. 

**Strategi penskalaan**
+ Mirip dengan strategi peningkatan skala, Amazon EMR menghapus node berdasarkan label node. Untuk informasi selengkapnya tentang label node, lihat [Memahami tipe node: node primer, inti, dan tugas](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-master-core-task-nodes.html).
+ Jika Anda belum mengaktifkan label node, penskalaan terkelola menghapus node tugas dan kemudian menghapus node inti hingga mencapai kapasitas target penskalaan yang diinginkan. Penskalaan terkelola tidak pernah menurunkan skala klaster di bawah batasan minimum yang ditentukan dalam kebijakan penskalaan terkelola. 
+ Amazon EMR versi 5.34.0 dan yang lebih tinggi, serta Amazon EMR versi 6.4.0 dan yang lebih tinggi, mendukung kesadaran data shuffle Spark, yang mencegah instance menurunkan skala sementara Penskalaan Terkelola mengetahui data acak yang ada. Untuk informasi selengkapnya tentang operasi shuffle, lihat Panduan [Pemrograman Spark](https://spark.apache.org/docs/latest/rdd-programming-guide.html#shuffle-operations). Penskalaan Terkelola melakukan upaya terbaik untuk mencegah node penskalaan dengan data acak dari tahap saat ini dan sebelumnya dari aplikasi Spark aktif apa pun, hingga maksimum 30 menit. Ini membantu meminimalkan kehilangan data acak yang tidak diinginkan, menghindari kebutuhan untuk upaya ulang pekerjaan dan perhitungan ulang data perantara. Namun, pencegahan kehilangan data shuffle tidak dijamin. Untuk perlindungan shuffle Spark yang lebih baik, kami merekomendasikan kesadaran acak pada cluster dengan label rilis 7.4 atau lebih tinggi. Tambahkan flag berikut ke konfigurasi cluster untuk mengaktifkan perlindungan shuffle Spark yang ditingkatkan.
  + Jika salah satu `yarn.nodemanager.shuffledata-monitor.interval-ms` tanda (default 30000 ms) atau `spark.dynamicAllocation.executorIdleTimeout` (default 60 detik) telah diubah dari nilai default, pastikan kondisi `spark.dynamicAllocation.executorIdleTimeout > yarn.nodemanager.shuffledata-monitor.interval-ms` tetap `true` dengan memperbarui flag yang diperlukan.

    ```
    [
    	{
    		"Classification": "yarn-site",
    		"Properties": { 
    		"yarn.resourcemanager.decommissioning-nodes-watcher.wait-for-shuffle-data": "true"
    		}
    	},
    	{
    		"Classification": "spark-defaults",
    		"Properties": {
    		"spark.dynamicAllocation.enabled": "true",
    		"spark.shuffle.service.removeShuffle": "true"
    		}
    	}
    ]
    ```
+ Penskalaan terkelola pertama-tama menghapus node tugas dan kemudian menghapus node inti hingga mencapai kapasitas target penskalaan yang diinginkan. Kluster tidak pernah menskalakan di bawah batasan minimum yang ditentukan dalam kebijakan penskalaan terkelola.
+ Untuk cluster yang diluncurkan dengan Amazon EMR 5.x rilis 5.34.0 dan lebih tinggi, dan 6.x merilis 6.4.0 dan lebih tinggi, Amazon EMR Managed Scaling tidak menurunkan skala node yang memiliki Apache Spark, jika ada tahapan aktif dalam aplikasi `ApplicationMaster` yang berjalan di atasnya. Ini meminimalkan kegagalan pekerjaan dan percobaan ulang, yang membantu meningkatkan kinerja pekerjaan dan mengurangi biaya. Untuk mengonfirmasi node mana di cluster Anda yang sedang berjalan`ApplicationMaster`, kunjungi Spark History Server dan filter driver di bawah tab **Executors ID** aplikasi Spark Anda.
+ Sementara penskalaan cerdas dengan EMR Managed Scaling meminimalkan kehilangan data acak untuk Spark, mungkin ada contoh ketika data shuffle sementara mungkin tidak dilindungi selama scale-down. Untuk memberikan peningkatan ketahanan data shuffle selama penurunan skala, sebaiknya aktifkan **Graceful** Decommissioning for Shuffle Data di YARN. Ketika **Graceful Decommissioning for Shuffle Data** diaktifkan di YARN, node yang dipilih untuk scale-down yang memiliki data shuffle akan memasuki status **Donaktifkan** dan terus menyajikan file shuffle. YARN ResourceManager menunggu sampai node melaporkan tidak ada file shuffle yang ada sebelum menghapus node dari cluster.
  + Amazon EMR versi 6.11.0 dan yang lebih tinggi mendukung penonaktifan anggun berbasis Benang untuk data pengocokan **Hive** untuk Tez dan Shuffle Handler. MapReduce 
    + Aktifkan Graceful Decommissioning untuk Shuffle Data dengan menyetel ke. `yarn.resourcemanager.decommissioning-nodes-watcher.wait-for-shuffle-data` `true`
  + Amazon EMR versi 7.4.0 dan yang lebih tinggi mendukung penonaktifan anggun berbasis Benang untuk data shuffle Spark saat layanan pengocokan eksternal diaktifkan (diaktifkan secara default di EMR di EC2).
    + Perilaku default dari layanan shuffle eksternal Spark, saat menjalankan Spark on Yarn, adalah NodeManager agar Yarn menghapus file shuffle aplikasi pada saat penghentian aplikasi. Ini mungkin berdampak pada kecepatan dekomisioning node dan pemanfaatan komputasi. Untuk aplikasi yang berjalan lama, pertimbangkan pengaturan `spark.shuffle.service.removeShuffle` `true` untuk menghapus file acak yang tidak lagi digunakan untuk memungkinkan penonaktifan node yang lebih cepat tanpa data acak aktif.
  + Untuk meminimalkan kehilangan data Spark shuffle di Amazon EMR versi 7.4.0 dan yang lebih tinggi, pertimbangkan untuk menyetel flag berikut.
    + Jika salah satu `yarn.nodemanager.shuffledata-monitor.interval-ms` tanda (default 30000 ms) atau `spark.dynamicAllocation.executorIdleTimeout` (default 60 detik) telah diubah dari nilai default, pastikan bahwa kondisi `spark.dynamicAllocation.executorIdleTimeout > yarn.nodemanager.shuffledata-monitor.interval-ms` tetap `true` dengan memperbarui flag yang diperlukan.

      ```
      [
      	{
      		"Classification": "yarn-site",
      		"Properties": { 
      		"yarn.resourcemanager.decommissioning-nodes-watcher.wait-for-shuffle-data": "true"
      		}
      	},
      	{
      		"Classification": "spark-defaults",
      		"Properties": {
      		"spark.dynamicAllocation.enabled": "true",
      		"spark.shuffle.service.removeShuffle": "true"
      		}
      	}
      ]
      ```

Jika klaster tidak memiliki beban apapun, maka Amazon EMR membatalkan penambahan instans baru dari evaluasi sebelumnya dan melakukan operasi menurunkan skala. Jika klaster memiliki beban berat, Amazon EMR membatalkan penghapusan instans dan melakukan operasi menaikkan skala.

## Pertimbangan alokasi simpul
<a name="node-allocation-considerations"></a>

Kami merekomendasikan Anda menggunakan opsi pembelian Sesuai Permintaan untuk simpul inti untuk menghindari kehilangan data HDFS dalam kasus reklamasi Spot. Anda dapat menggunakan opsi pembelian Spot untuk simpul tugas untuk mengurangi biaya dan mendapatkan eksekusi pekerjaan yang lebih cepat ketika lebih banyak Instans Spot ditambahkan ke simpul tugas.

## Skenario alokasi simpul
<a name="node-allocation-scenarios"></a>

Anda dapat membuat berbagai skenario penskalaan berdasarkan kebutuhan Anda dengan mengatur parameter maksimum, minimum, batas Sesuai Permintaan, dan maksimum simpul inti dalam kombinasi yang berbeda. 

**Skenario 1: Saja Skala Node Inti**

Untuk menskalakan simpul inti saja, parameter penskalaan terkelola harus memenuhi persyaratan berikut: 
+ Batas Sesuai Permintaan sama dengan batas maksimum.
+ Simpul inti maksimum sama dengan batas maksimum. 

Ketika batas Sesuai Permintaan dan parameter simpul inti maksimum tidak ditentukan, kedua parameter default ke batas maksimum. 

Skenario ini tidak berlaku jika Anda menggunakan penskalaan terkelola dengan label node dan membatasi proses aplikasi Anda agar hanya berjalan pada `CORE` node, karena penskalaan terkelola menskalakan node tugas untuk mengakomodasi permintaan pelaksana.

Contoh berikut menunjukkan skenario penskalaan simpul inti saja.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-allocation-strategy.html)

**Skenario 2: Skalakan node tugas saja**

Untuk menskalakan simpul tugas saja, parameter penskalaan terkelola harus memenuhi persyaratan berikut: 
+ Simpul inti maksimum harus sama dengan batas minimum.

Contoh berikut menunjukkan skenario penskalaan simpul tugas saja.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-allocation-strategy.html)

**Skenario 3: Hanya Instans Sesuai Permintaan di klaster**

Untuk memiliki Instans Sesuai Permintaan saja, klaster Anda dan parameter penskalaan terkelola harus memenuhi persyaratan berikut: 
+ Batas Sesuai Permintaan sama dengan batas maksimum. 

  Ketika batas Sesuai Permintaan tidak ditentukan, nilai parameter default ke batas maksimum. Nilai default menunjukkan bahwa Amazon EMR menskalakan Instans Sesuai Permintaan saja. 

Jika simpul inti maksimum kurang dari batas maksimum, parameter simpul inti maksimum dapat digunakan untuk membagi alokasi kapasitas antara simpul inti dan tugas. 

Untuk mengaktifkan skenario ini dalam sebuah klaster yang terdiri dari grup instans, semua kelompok simpul dalam klaster harus menggunakan tipe pasar Sesuai Permintaan selama konfigurasi awal. 

Skenario ini tidak berlaku jika Anda menggunakan penskalaan terkelola dengan label node dan membatasi proses aplikasi Anda untuk hanya berjalan pada `ON_DEMAND` node, karena skala skala terkelola `Spot` node untuk mengakomodasi permintaan pelaksana.

Contoh berikut menunjukkan skenario dari memiliki Instans Sesuai Permintaan di seluruh klaster.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-allocation-strategy.html)

**Skenario 4: Hanya Instance Spot di cluster**

Untuk memiliki Instans Spot saja, klaster Anda dan parameter penskalaan terkelola harus memenuhi persyaratan berikut: 
+ Batas Sesuai Permintaan diatur ke 0.

Jika simpul inti maksimum kurang dari batas maksimum, parameter simpul inti maksimum dapat digunakan untuk membagi alokasi kapasitas antara simpul inti dan tugas.

Untuk mengaktifkan skenario ini dalam sebuah klaster yang terdiri dari grup instans, grup instans inti harus menggunakan opsi pembelian Spot selama konfigurasi awal. Jika tidak ada Instans Spot di grup instance tugas, penskalaan terkelola Amazon EMR akan membuat grup tugas menggunakan Instans Spot bila diperlukan. 

Skenario ini tidak berlaku jika Anda menggunakan penskalaan terkelola dengan label node dan membatasi proses aplikasi Anda untuk hanya berjalan pada `ON_DEMAND` node, karena skala skala terkelola `ON_DEMAND` node untuk mengakomodasi permintaan proses aplikasi.

Contoh berikut menunjukkan skenario dari memiliki Instans Spot di seluruh klaster.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-allocation-strategy.html)

**Skenario 5: Skala Instans Sesuai Permintaan pada node inti dan Instans Spot pada node tugas**

Untuk menskalakan Instans Sesuai Permintaan pada simpul inti dan Instans Spot pada simpul tugas, parameter penskalaan terkelola harus memenuhi persyaratan berikut: 
+ Batas Sesuai Permintaan harus sama dengan simpul inti maksimum.
+ Batas Sesuai Permintaan dan simpul inti maksimum harus kurang dari batas maksimum.

Untuk mengaktifkan skenario ini dalam sebuah klaster yang terdiri dari grup instans, grup simpul inti harus menggunakan opsi pembelian Sesuai Permintaan.

Skenario ini tidak berlaku jika Anda menggunakan penskalaan terkelola dengan label node dan membatasi proses aplikasi Anda untuk hanya berjalan pada `ON_DEMAND` node atau `CORE` node. 

Contoh berikut menunjukkan skenario penskalaan Instans Sesuai Permintaan pada simpul inti dan Instans Spot pada simpul tugas.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-allocation-strategy.html)

**Skenario 6: Skala `CORE` instance untuk permintaan proses aplikasi dan `TASK` instance untuk permintaan pelaksana.**

Skenario ini hanya berlaku jika Anda menggunakan penskalaan terkelola dengan label node dan membatasi proses aplikasi agar hanya berjalan pada `CORE` node.

Untuk menskalakan `CORE` node berdasarkan permintaan proses aplikasi dan `TASK` node berdasarkan permintaan pelaksana, Anda harus mengatur konfigurasi berikut pada peluncuran cluster:
+  `yarn.node-labels.enabled:true` 
+  `yarn.node-labels.am.default-node-label-expression: 'CORE'` 

Jika Anda tidak menentukan `ON_DEMAND` batas dan parameter `CORE` node maksimum, kedua parameter default ke batas maksimum.

Jika `ON_DEMAND` node maksimum kurang dari batas maksimum, penskalaan terkelola menggunakan parameter `ON_DEMAND` node maksimum untuk membagi alokasi kapasitas antara dan node. `ON_DEMAND` `SPOT` Jika Anda mengatur parameter `CORE` node maksimum menjadi kurang dari atau sama dengan parameter kapasitas minimum, `CORE` node tetap statis pada kapasitas inti maksimum.

Contoh berikut menunjukkan skenario penskalaan instance CORE berdasarkan permintaan proses aplikasi dan instance TASK berdasarkan permintaan pelaksana.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-allocation-strategy.html)

**Skenario 7: Skala `ON_DEMAND` instance untuk permintaan proses aplikasi dan `SPOT` instance untuk permintaan pelaksana.**

Skenario ini hanya berlaku jika Anda menggunakan penskalaan terkelola dengan label node dan membatasi proses aplikasi agar hanya berjalan pada `ON_DEMAND` node.

Untuk menskalakan `ON_DEMAND` node berdasarkan permintaan proses aplikasi dan `SPOT` node berdasarkan permintaan pelaksana, Anda harus mengatur konfigurasi berikut pada peluncuran cluster:
+  `yarn.node-labels.enabled:true` 
+  `yarn.node-labels.am.default-node-label-expression: 'ON_DEMAND'` 

Jika Anda tidak menentukan `ON_DEMAND` batas dan parameter `CORE` node maksimum, kedua parameter default ke batas maksimum.

Jika `CORE` node maksimum kurang dari batas maksimum, penskalaan terkelola menggunakan parameter `CORE` node maksimum untuk membagi alokasi kapasitas antara dan node. `CORE` `TASK` Jika Anda mengatur parameter `CORE` node maksimum menjadi kurang dari atau sama dengan parameter kapasitas minimum, `CORE` node tetap statis pada kapasitas inti maksimum.

Contoh berikut menunjukkan skenario penskalaan Instans Sesuai Permintaan berdasarkan permintaan proses aplikasi dan instans Spot berdasarkan permintaan pelaksana.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-allocation-strategy.html)

# Memahami metrik penskalaan terkelola di Amazon EMR
<a name="managed-scaling-metrics"></a>

Amazon EMR menerbitkan metrik resolusi tinggi dengan data pada rincian satu menit ketika penskalaan terkelola diaktifkan untuk suatu klaster. Anda dapat melihat peristiwa pada setiap inisiasi dan penyelesaian pengubahan ukuran yang dikendalikan oleh penskalaan terkelola dengan konsol EMR Amazon atau konsol Amazon. CloudWatch CloudWatch metrik sangat penting agar penskalaan terkelola Amazon EMR dapat beroperasi. Kami menyarankan Anda memantau CloudWatch metrik dengan cermat untuk memastikan data tidak hilang. Untuk informasi selengkapnya tentang cara mengonfigurasi CloudWatch alarm untuk mendeteksi metrik yang hilang, lihat Menggunakan alarm [Amazon CloudWatch ](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html). Untuk informasi selengkapnya tentang menggunakan CloudWatch peristiwa dengan Amazon EMR, lihat [Memantau CloudWatch](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-manage-cloudwatch-events.html) peristiwa.

Metrik berikut menunjukkan kapasitas saat ini atau kapasitas target suatu klaster. Metrik ini hanya tersedia apabila penskalaan terkelola diaktifkan. Untuk klaster yang terdiri dari armada instans, metrik kapasitas klaster diukur dalam `Units`. Untuk klaster yang terdiri dari grup instans, metrik kapasitas klaster diukur dalam `Nodes` atau `vCPU` berdasarkan jenis unit yang digunakan dalam kebijakan penskalaan terkelola. 


| Metrik | Deskripsi | 
| --- | --- | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-metrics.html)  |  Jumlah total target units/nodes/vCPUs dalam sebuah cluster sebagaimana ditentukan oleh scaling terkelola. Unit: *Count (Jumlah)*  | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-metrics.html)  |  Jumlah total saat ini yang units/nodes/vCPUs tersedia di cluster yang sedang berjalan. Ketika ada permintaan perubahan ukuran klaster, metrik ini akan diperbarui setelah instans baru ditambahkan atau dihapus dari klaster. Unit: *Jumlah*  | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-metrics.html)  |  Jumlah target CORE units/nodes/vCPUs dalam sebuah cluster ditentukan oleh scaling terkelola. Unit: *Count (Jumlah)*  | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-metrics.html)  |  Jumlah CORE saat ini units/nodes/vCPUs berjalan dalam sebuah cluster. Unit: *Count (Jumlah)*  | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-metrics.html)  |  Jumlah target TASK units/nodes/vCPUs dalam klaster yang ditentukan oleh penskalaan terkelola. Unit: *Count (Jumlah)*  | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/managed-scaling-metrics.html)  |  Jumlah TASK saat ini units/nodes/vCPUs berjalan dalam sebuah cluster. Unit: *Jumlah*  | 

Metrik berikut menunjukkan status penggunaan klaster dan aplikasi. Metrik ini tersedia untuk semua fitur Amazon EMR, tetapi diterbitkan pada resolusi yang lebih tinggi dengan data pada rincian satu menit ketika penskalaan terkelola diaktifkan untuk sebuah klaster. Anda dapat mengkorelasikan metrik berikut dengan metrik kapasitas klaster di tabel sebelumnya untuk memahami keputusan penskalaan terkelola. 


| Metrik | Deskripsi | 
| --- | --- | 
|  `AppsCompleted`  |  Jumlah aplikasi yang dikirimkan ke YARN yang telah selesai. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
|  `AppsPending`  |  Jumlah aplikasi yang dikirimkan ke YARN yang berada dalam status tertunda. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
|  `AppsRunning`  |  Jumlah aplikasi yang dikirimkan ke YARN yang sedang berjalan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| ContainerAllocated |  Jumlah wadah sumber daya yang dialokasikan oleh. ResourceManager Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
|  `ContainerPending`  |  Jumlah kontainer dalam antrean yang belum dialokasikan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
| ContainerPendingRatio |  Rasio kontainer yang tertunda dengan kontainer yang dialokasikan (ContainerPendingRatio = ContainerPending / ContainerAllocated). Jika ContainerAllocated = 0, maka ContainerPendingRatio =ContainerPending. Nilai ContainerPendingRatio mewakili angka, bukan persentase. Nilai ini berguna untuk menskalakan sumber daya klaster berdasarkan perilaku alokasi kontainer. Unit: *Jumlah*  | 
|  `HDFSUtilization`  |  Persentase penyimpanan HDFS yang saat ini digunakan. Kasus penggunaan: Menganalisis performa klaster Unit: *Persen*  | 
|  `IsIdle`  |  Menunjukkan bahwa klaster tidak lagi melakukan pekerjaan, tetapi masih hidup dan menimbulkan biaya. Diatur ke 1 jika tidak ada tugas yang berjalan dan tidak ada pekerjaan yang berjalan, dan diatur ke 0 jika sebaliknya. Nilai ini diperiksa pada interval lima menit dan nilai 1 hanya menunjukkan bahwa klaster tersebut menganggur ketika diperiksa, bukan bahwa klaster tersebut menganggur selama lima menit tersebut. Untuk menghindari positif yang salah, Anda harus menyalakan alarm ketika nilai ini 1 selama lebih dari satu pemeriksaan lima menit berturut-turut. Misalnya, Anda mungkin menyalakan alarm pada nilai ini jika telah 1 selama tiga puluh menit atau lebih. Kasus penggunaan: Memantau performa klaster Unit: *Boolean*  | 
|  `MemoryAvailableMB`  |  Jumlah memori yang tersedia untuk dialokasikan. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
|  `MRActiveNodes`  |  Jumlah node yang saat ini menjalankan MapReduce tugas atau pekerjaan. Setara dengan metrik YARN `mapred.resourcemanager.NoOfActiveNodes`. Kasus penggunaan: Memantau kemajuan klaster Unit: *Jumlah*  | 
|  `YARNMemoryAvailablePercentage`  |  Persentase sisa memori yang tersedia untuk YARN (YARNMemoryAvailablePercentage = MemoryAvailable MB/MemoryTotalMB). Nilai ini berguna untuk menskalakan sumber daya klaster berdasarkan penggunaan memori YARN. Unit: *Persen*  | 

Metrik berikut memberikan informasi tentang sumber daya yang digunakan oleh wadah dan node YARN. Metrik dari manajer sumber daya YARN ini menawarkan wawasan tentang sumber daya yang digunakan oleh kontainer dan node yang berjalan di cluster. Membandingkan metrik ini dengan metrik kapasitas klaster tabel sebelumnya memberikan gambaran yang lebih jelas tentang dampak penskalaan terkelola:


| Metrik | Rilis terkait | Deskripsi | 
| --- | --- | --- | 
|  `YarnContainersUsedMemoryGBSeconds`  |  Tersedia untuk merilis label 7.3.0 dan lebih tinggi  |  Memori kontainer yang dikonsumsi\$1 detik untuk periode penerbitan. **Satuan:** GB\$1 detik  | 
|  `YarnContainersTotalMemoryGBSeconds`  |  Tersedia untuk merilis label 7.3.0 dan lebih tinggi  |  Total wadah benang\$1 detik untuk periode penerbitan. **Satuan:** GB\$1 detik  | 
|  `YarnContainersUsedVCPUSeconds`  |  Tersedia untuk merilis label 7.5.0 dan lebih tinggi  |  Kontainer yang dikonsumsi VCPU \$1 detik untuk periode penerbitan. **Unit:** VCPU \$1 detik  | 
| `YarnContainersTotalVCPUSeconds` | Tersedia untuk merilis label 7.5.0 dan lebih tinggi |  Total kontainer VCPU \$1 detik untuk periode penerbitan. **Unit:** VCPU \$1 detik  | 
|  `YarnNodesUsedMemoryGBSeconds`  |  Tersedia untuk merilis label 7.5.0 dan lebih tinggi  |  Memori node yang dikonsumsi\$1 detik untuk periode penerbitan. **Satuan:** GB\$1 detik  | 
| `YarnNodesTotalMemoryGBSeconds` | Tersedia untuk merilis label 7.5.0 dan lebih tinggi |  Total memori node \$1 detik untuk periode penerbitan. **Satuan:** GB\$1 detik  | 
|  `YarnNodesUsedVCPUSeconds`  |  Tersedia untuk merilis label 7.3.0 dan lebih tinggi  |  Node VCPU yang dikonsumsi \$1 detik untuk periode penerbitan. **Unit:** VCPU \$1 detik  | 
|  `YarnNodesTotalVCPUSeconds`  |  Tersedia untuk merilis label 7.3.0 dan lebih tinggi  |  Total node VCPU \$1 detik untuk periode penerbitan. **Unit:** VCPU \$1 detik  | 

## Membuat grafik metrik penskalaan terkelola
<a name="managed-scaling-graphic"></a>

Anda dapat membuat grafik metrik untuk memvisualisasikan pola beban kerja klaster Anda dan keputusan penskalaan terkait yang dibuat oleh penskalaan terkelola Amazon EMR seperti yang ditunjukkan oleh langkah-langkah berikut. 

**Untuk membuat grafik metrik penskalaan terkelola di konsol CloudWatch**

1. Buka [konsol CloudWatch](https://console.aws.amazon.com/cloudwatch/).

1. Di panel navigasi, pilih **Amazon EMR**. Anda dapat mencari di pengidentifikasi klaster pada klaster tersebut untuk memantau.

1. Gulir ke bawah ke metrik untuk membuat grafik. Buka metrik untuk menampilkan grafik.

1. Untuk membuat grafik pada satu metrik atau lebih, pilih kotak centang di samping setiap metrik. 

Contoh berikut menggambarkan aktivitas penskalaan terkelola Amazon EMR dari sebuah cluster. Grafik menunjukkan tiga periode penskalaan otomatis, yang menghemat biaya ketika ada beban kerja yang kurang aktif. 

![\[Buat grafik metrik penskalaan terkelola\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/Managed_Scaling_Decision.png)


Semua metrik penggunaan dan kapasitas klaster dipublikasikan pada interval satu menit. Informasi statistik tambahan juga dikaitkan dengan setiap data satu menit, yang memungkinkan Anda merencanakan berbagai fungsi seperti `Percentiles`, `Min`, `Max`, `Sum`, `Average`, `SampleCount`.

Misalnya, grafik berikut menggambarkan metrik `YARNMemoryAvailablePercentage` yang sama pada persentil yang berbeda, P10, P50, P90, P99, bersama dengan `Sum`, `Average`, `Min`, `SampleCount`.

![\[Membuat grafik metrik penskalaan terkelola dengan persentil yang berbeda\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/Managed_Scaling_Metrics.png)


# Menggunakan penskalaan otomatis dengan kebijakan khusus untuk grup instans di Amazon EMR
<a name="emr-automatic-scaling"></a>

*Penskalaan otomatis dengan kebijakan khusus di Amazon EMR rilis 4.0 dan yang lebih tinggi memungkinkan Anda untuk menskalakan dan menskalakan secara terprogram di node inti dan node tugas berdasarkan metrik dan parameter lain CloudWatch yang Anda tentukan dalam kebijakan penskalaan.* Penskalaan otomatis dengan kebijakan kustom tersedia dengan konfigurasi grup instans dan tidak tersedia jika Anda menggunakan armada instans. Untuk informasi selengkapnya tentang grup instans dan armada instans, lihat [Membuat klaster EMR Amazon dengan armada instans atau grup instans seragam](emr-instance-group-configuration.md).

**catatan**  
Untuk menggunakan penskalaan otomatis dengan fitur kebijakan kustom di Amazon EMR, Anda harus mengatur `true` untuk parameter `VisibleToAllUsers` saat Anda membuat sebuah klaster. Untuk informasi selengkapnya, lihat [SetVisibleToAllUsers](https://docs.aws.amazon.com/emr/latest/APIReference/API_SetVisibleToAllUsers.html).

Kebijakan penskalaan adalah bagian dari konfigurasi grup instans. Anda dapat menentukan kebijakan selama konfigurasi awal grup instans, atau dengan memodifikasi grup instans di klaster yang ada, bahkan ketika grup instans tersebut aktif. Setiap grup instans dalam klaster, kecuali grup instans utama, dapat memiliki kebijakan penskalaannya sendiri, yang terdiri dari aturan scale-out dan scale-in. Aturan penskalaan keluar dan penskalaan ke dalam dapat dikonfigurasi secara independen, dengan parameter yang berbeda untuk setiap aturan.

Anda dapat mengonfigurasi kebijakan penskalaan dengan Konsol Manajemen AWS AWS CLI, API EMR Amazon, atau Amazon. Saat Anda menggunakan API EMR Amazon AWS CLI atau Amazon, Anda menentukan kebijakan penskalaan dalam format JSON. Selain itu, saat menggunakan AWS CLI atau Amazon EMR API, Anda dapat menentukan metrik kustom CloudWatch . Metrik khusus tidak tersedia untuk dipilih dengan. Konsol Manajemen AWS Saat Anda pertama kali membuat kebijakan penskalaan dengan konsol, kebijakan default yang cocok untuk banyak aplikasi sudah dikonfigurasi sebelumnya untuk membantu Anda memulai. Anda dapat menghapus atau mengubah aturan default.

Meskipun penskalaan otomatis memungkinkan Anda menyesuaikan on-the-fly kapasitas klaster EMR, Anda tetap harus mempertimbangkan persyaratan beban kerja dasar dan merencanakan konfigurasi grup node dan instans Anda. Untuk informasi selengkapnya, lihat [Panduan konfigurasi klaster](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-instances-guidelines.html).

**catatan**  
Untuk sebagian besar beban kerja, disarankan untuk mengatur aturan penskalaan ke dalam dan penskalaan keluar untuk mengoptimalkan pemanfaatan sumber daya. Mengatur baik aturan tanpa cara lain yang Anda butuhkan untuk secara manual mengubah ukuran jumlah instans setelah aktivitas penskalaan. Dengan kata lain, hal ini mengatur kebijakan penskalaan keluar atau ke dalam otomatis “satu arah” dengan pengaturan ulang manual.

## Membuat IAM role untuk penskalaan otomatis
<a name="emr-automatic-scaling-iam-role"></a>

Penskalaan otomatis di Amazon EMR memerlukan IAM role dengan izin untuk menambahkan dan mengakhiri instans saat aktivitas penskalaan terpicu. Peran default yang dikonfigurasi dengan kebijakan peran dan kebijakan kepercayaan yang sesuai, `EMR_AutoScaling_DefaultRole`, tersedia untuk tujuan ini. Saat Anda membuat klaster dengan kebijakan penskalaan untuk pertama kalinya dengan Konsol Manajemen AWS, Amazon EMR akan membuat peran default dan melampirkan kebijakan terkelola default untuk izin,. `AmazonElasticMapReduceforAutoScalingRole`

Bila Anda membuat klaster dengan kebijakan penskalaan otomatis dengan AWS CLI, Anda harus terlebih dahulu memastikan bahwa peran IAM default ada, atau bahwa Anda memiliki peran IAM kustom dengan kebijakan terlampir yang menyediakan izin yang sesuai. Untuk membuat peran default, Anda dapat menjalankan perintah `create-default-roles` sebelum Anda membuat sebuah klaster. Anda kemudian dapat menentukan opsi `--auto-scaling-role EMR_AutoScaling_DefaultRole` saat Anda membuat sebuah klaster. Atau, Anda dapat membuat peran penskalaan otomatis kustom dan kemudian menentukannya ketika Anda membuat sebuah klaster, misalnya `--auto-scaling-role MyEMRAutoScalingRole`. Jika Anda membuat peran penskalaan otomatis disesuaikan untuk Amazon EMR, sebaiknya Anda mendasarkan kebijakan izin untuk peran kustom Anda berdasarkan kebijakan terkelola. Untuk informasi selengkapnya, lihat [Konfigurasikan peran layanan IAM untuk izin AWS EMR Amazon ke layanan dan sumber daya](emr-iam-roles.md).

## Memahami aturan penskalaan otomatis
<a name="emr-scaling-rules"></a>

Ketika aturan penskalaan keluar memicu aktivitas penskalaan untuk grup instans, instans Amazon EC2 ditambahkan ke grup instans sesuai dengan aturan Anda. Simpul baru dapat digunakan oleh aplikasi seperti Apache Spark, Apache Hive, dan Presto segera setelah instans Amazon EC2 memasuki status `InService`. Anda juga dapat membuat aturan penskalaan ke dalam yang mengakhiri instans dan menghapus instans. Untuk informasi selengkapnya tentang siklus hidup instans Amazon EC2 yang diskalakan secara otomatis, lihat [siklus hidup Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/AutoScalingGroupLifecycle.html) dalam *Panduan Pengguna Amazon EC2 Auto Scaling*.

Anda dapat mengonfigurasi cara klaster mengakhiri instans Amazon EC2. Anda dapat memilih untuk mengakhiri pada batasan jam instans Amazon EC2 untuk penagihan, atau saat tugas selesai. Pengaturan ini berlaku baik untuk penskalaan otomatis dan operasi perubahan ukuran manual. Untuk informasi selengkapnya tentang konfigurasi ini, lihat [Opsi penskalaan klaster untuk kluster EMR Amazon](emr-scaledown-behavior.md).

Parameter berikut ini untuk setiap aturan dalam kebijakan menentukan perilaku penskalaan otomatis.

**catatan**  
Parameter yang tercantum di sini didasarkan pada EMR Konsol Manajemen AWS untuk Amazon. Saat Anda menggunakan API EMR Amazon AWS CLI atau Amazon, opsi konfigurasi lanjutan tambahan tersedia. Untuk informasi selengkapnya tentang opsi lanjutan, lihat [SimpleScalingPolicyConfiguration](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_PutAutoScalingPolicy.html)di Referensi *API EMR Amazon*.
+ Instans maksimum dan instans minimum. Batasan **Instans maksimum** menentukan jumlah maksimum instans Amazon EC2 yang dapat berada dalam grup instans, dan berlaku untuk semua aturan penskalaan keluar. Demikian pula, batasan **Instans Minimum** menentukan jumlah minimum instans Amazon EC2 dan berlaku untuk semua aturan penskalaan ke dalam.
+ **Nama Aturan**, yang harus unik dalam kebijakan.
+ **Penyesuaian penskalaan**, yang menentukan jumlah instans EC2 untuk ditambahkan (untuk aturan penskalaan keluar) atau diakhiri (untuk aturan penskalaan ke dalam) selama aktivitas penskalaan dipicu oleh aturan. 
+ **CloudWatch Metrik**, yang diawasi untuk kondisi alarm.
+ **Operator perbandingan**, yang digunakan untuk membandingkan CloudWatch metrik dengan nilai **Threshold** dan menentukan kondisi pemicu.
+ **Periode evaluasi**, dalam peningkatan lima menit, di mana CloudWatch metrik harus dalam kondisi pemicu sebelum aktivitas penskalaan dipicu.
+ **Periode pendinginan**, dalam detik, yang menentukan jumlah waktu yang harus berlalu antara aktivitas penskalaan yang dimulai oleh aturan dan dimulainya aktivitas penskalaan berikutnya, terlepas dari aturan yang memicunya. Ketika grup instans telah menyelesaikan aktivitas penskalaan dan mencapai status pasca-skala, periode cooldown memberikan kesempatan bagi CloudWatch metrik yang mungkin memicu aktivitas penskalaan berikutnya untuk stabil. Untuk informasi selengkapnya, lihat [pendinginan Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html) dalam *Panduan Pengguna Amazon EC2 Auto Scaling*.  
![\[Konsol Manajemen AWS parameter aturan penskalaan otomatis untuk Amazon EMR.\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/auto-scaling-rule-params.png)

## Pertimbangan dan batasan
<a name="emr-automatic-scaling-considerations"></a>
+  CloudWatch Metrik Amazon sangat penting agar penskalaan otomatis Amazon EMR dapat beroperasi. Kami menyarankan Anda memantau CloudWatch metrik Amazon dengan cermat untuk memastikan data tidak hilang. Untuk informasi selengkapnya tentang cara mengonfigurasi CloudWatch alarm Amazon untuk mendeteksi metrik yang hilang, lihat Menggunakan alarm [Amazon CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html).
+ Pemanfaatan volume EBS yang berlebihan dapat menyebabkan masalah Penskalaan Terkelola. Kami menyarankan Anda memantau penggunaan volume EBS dengan cermat untuk memastikan volume EBS di bawah 90% pemanfaatan. Lihat [Penyimpanan instans](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-storage.html) untuk informasi tentang menentukan volume EBS tambahan.
+ Penskalaan otomatis dengan kebijakan khusus di Amazon EMR rilis 5.18 hingga 5.28 mungkin mengalami kegagalan penskalaan yang disebabkan oleh data yang sebentar-sebentar hilang dalam metrik Amazon. CloudWatch Kami menyarankan Anda menggunakan versi EMR Amazon terbaru untuk penskalaan otomatis yang lebih baik. Anda juga dapat menghubungi [AWS Support](https://aws.amazon.com/premiumsupport/) untuk patch jika Anda perlu menggunakan rilis Amazon EMR antara 5.18 dan 5.28.

## Menggunakan Konsol Manajemen AWS untuk mengkonfigurasi penskalaan otomatis
<a name="emr-automatic-scale-console"></a>

Saat membuat klaster, Anda mengonfigurasi kebijakan penskalaan untuk grup instans dengan opsi konfigurasi klaster lanjutan. Anda juga dapat membuat atau mengubah kebijakan penskalaan untuk grup instans dalam layanan dengan memodifikasi grup instans di pengaturan **Perangkat keras** klaster yang ada.

1. Arahkan ke konsol EMR Amazon baru dan pilih **Beralih ke konsol lama** dari navigasi samping. Untuk informasi selengkapnya tentang apa yang diharapkan saat beralih ke konsol lama, lihat [Menggunakan konsol lama](https://docs.aws.amazon.com/emr/latest/ManagementGuide/whats-new-in-console.html#console-opt-in).

1. Jika Anda membuat sebuah klaster, di konsol Amazon EMR, pilih **Buat Klaster**, pilih **Buka opsi lanjutan**, pilih opsi untuk **Langkah 1: Perangkat Lunak dan Langkah**, dan kemudian buka **Langkah 2: Konfigurasi Perangkat Keras**.

   **- atau -**

   Jika Anda memodifikasi grup instans di klaster berjalan, pilih klaster Anda dari daftar klaster, dan kemudian perluas bagian **Perangkat keras**.

1. Di bagian **opsi penskalaan dan penyediaan kluster, pilih **Aktifkan** penskalaan** klaster. Kemudian pilih **Membuat kebijakan penskalaan otomatis kustom**.

   Dalam tabel **Kebijakan penskalaan otomatis kustom**, klik ikon pensil yang muncul di baris grup instans yang ingin Anda konfigurasikan. Layar Aturan Auto Scaling terbuka. 

1. Ketik **Instans maksimum** yang Anda inginkan untuk berada dalam grup instans setelah penskalaan keluar, dan ketik **Instans Minimum** yang Anda inginkan untuk berada dalam grup instans setelah penskalaan ke dalam.

1. Klik pensil untuk mengedit parameter aturan, klik **X** untuk menghapus aturan dari kebijakan, dan klik **Tambahkan Aturan** untuk menambahkan aturan tambahan.

1. Pilih parameter aturan seperti yang dijelaskan sebelumnya dalam topik ini. *Untuk deskripsi CloudWatch metrik yang tersedia untuk Amazon EMR, lihat [metrik dan dimensi EMR](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/emr-metricscollected.html) Amazon di Panduan Pengguna Amazon. CloudWatch *

## Menggunakan AWS CLI untuk mengkonfigurasi penskalaan otomatis
<a name="emr-automatic-scale-cli"></a>

Anda dapat menggunakan AWS CLI perintah untuk Amazon EMR untuk mengonfigurasi penskalaan otomatis saat membuat klaster dan saat membuat grup instans. Anda dapat menggunakan sintaks steno, menentukan konfigurasi JSON inline dalam perintah yang relevan, atau Anda dapat mereferensikan file yang berisi konfigurasi JSON. Anda juga dapat menerapkan kebijakan penskalaan otomatis ke grup instans yang ada dan menghapus kebijakan penskalaan otomatis yang sebelumnya diterapkan. Selain itu, Anda dapat mengambil detail konfigurasi kebijakan penskalaan dari klaster berjalan.

**penting**  
Saat membuat klaster yang memiliki kebijakan penskalaan otomatis, Anda harus menggunakan `--auto-scaling-role MyAutoScalingRole` perintah tersebut untuk menentukan peran IAM untuk penskalaan otomatis. Peran default adalah `EMR_AutoScaling_DefaultRole` dan dapat dibuat dengan perintah `create-default-roles`. Peran hanya dapat ditambahkan ketika klaster dibuat, dan tidak dapat ditambahkan ke klaster yang ada.

Untuk penjelasan mendetail tentang parameter yang tersedia saat mengonfigurasi kebijakan penskalaan otomatis, lihat di Referensi [PutAutoScalingPolicy](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_PutAutoScalingPolicy.html)API *EMR* Amazon.

### Membuat sebuah klaster dengan kebijakan penskalaan otomatis diterapkan ke grup instans
<a name="emr-autoscale-cli-createcluster"></a>

Anda dapat menentukan konfigurasi penskalaan otomatis dalam opsi `--instance-groups` dari perintah `aws emr create-cluster`. Contoh berikut menggambarkan perintah create-cluster dimana kebijakan penskalaan otomatis untuk grup instans inti disediakan secara inline. Perintah membuat konfigurasi penskalaan yang setara dengan kebijakan penskalaan default yang muncul saat Anda membuat kebijakan penskalaan otomatis dengan EMR untuk Amazon Konsol Manajemen AWS . Singkatnya, kebijakan penskalaan ke dalam tidak ditampilkan. Kami tidak menyarankan untuk membuat aturan penskalaan keluar tanpa aturan penskalaan ke dalam.

```
aws emr create-cluster --release-label emr-5.2.0 --service-role EMR_DefaultRole --ec2-attributes InstanceProfile=EMR_EC2_DefaultRole --auto-scaling-role EMR_AutoScaling_DefaultRole  --instance-groups Name=MyMasterIG,InstanceGroupType=MASTER,InstanceType=m5.xlarge,InstanceCount=1 'Name=MyCoreIG,InstanceGroupType=CORE,InstanceType=m5.xlarge,InstanceCount=2,AutoScalingPolicy={Constraints={MinCapacity=2,MaxCapacity=10},Rules=[{Name=Default-scale-out,Description=Replicates the default scale-out rule in the console.,Action={SimpleScalingPolicyConfiguration={AdjustmentType=CHANGE_IN_CAPACITY,ScalingAdjustment=1,CoolDown=300}},Trigger={CloudWatchAlarmDefinition={ComparisonOperator=LESS_THAN,EvaluationPeriods=1,MetricName=YARNMemoryAvailablePercentage,Namespace=AWS/ElasticMapReduce,Period=300,Statistic=AVERAGE,Threshold=15,Unit=PERCENT,Dimensions=[{Key=JobFlowId,Value="${emr.clusterId}"}]}}}]}'				
```

 Perintah berikut mengilustrasikan cara menggunakan baris perintah untuk memberikan definisi kebijakan penskalaan otomatis sebagai bagian dari file konfigurasi grup instance bernama. `instancegroupconfig.json`

```
aws emr create-cluster --release-label emr-5.2.0 --service-role EMR_DefaultRole --ec2-attributes InstanceProfile=EMR_EC2_DefaultRole --instance-groups file://your/path/to/instancegroupconfig.json --auto-scaling-role EMR_AutoScaling_DefaultRole								
```

Dengan isi file konfigurasi sebagai berikut:

```
[
{
  "InstanceCount": 1,
  "Name": "MyMasterIG",
  "InstanceGroupType": "MASTER",
  "InstanceType": "m5.xlarge"
},
{
  "InstanceCount": 2,
  "Name": "MyCoreIG",
  "InstanceGroupType": "CORE",
  "InstanceType": "m5.xlarge",
  "AutoScalingPolicy":
    {
     "Constraints":
      {
       "MinCapacity": 2,
       "MaxCapacity": 10
      },
     "Rules":
     [
      {
       "Name": "Default-scale-out",
       "Description": "Replicates the default scale-out rule in the console for YARN memory.",
       "Action":{
        "SimpleScalingPolicyConfiguration":{
          "AdjustmentType": "CHANGE_IN_CAPACITY",
          "ScalingAdjustment": 1,
          "CoolDown": 300
        }
       },
       "Trigger":{
        "CloudWatchAlarmDefinition":{
          "ComparisonOperator": "LESS_THAN",
          "EvaluationPeriods": 1,
          "MetricName": "YARNMemoryAvailablePercentage",
          "Namespace": "AWS/ElasticMapReduce",
          "Period": 300,
          "Threshold": 15,
          "Statistic": "AVERAGE",
          "Unit": "PERCENT",
          "Dimensions":[
             {
               "Key" : "JobFlowId",
               "Value" : "${emr.clusterId}"
             }
          ]
        }
       }
      }
     ]
   }
}
]
```

### Menambahkan grup instans dengan kebijakan penskalaan otomatis ke klaster
<a name="emr-autoscale-cli-createinstancegroup"></a>

Anda dapat menentukan konfigurasi kebijakan penskalaan dengan `--instance-groups` opsi dengan `add-instance-groups` perintah dengan cara yang sama seperti yang Anda bisa saat menggunakan`create-cluster`. Contoh berikut ini menggunakan referensi ke file JSON, `instancegroupconfig.json`, dengan konfigurasi grup instans.

```
aws emr add-instance-groups --cluster-id j-1EKZ3TYEVF1S2 --instance-groups file://your/path/to/instancegroupconfig.json
```

### Menerapkan kebijakan penskalaan otomatis ke grup instans yang ada atau memodifikasi suatu kebijakan yang diterapkan
<a name="emr-autoscale-cli-modifyinstancegroup"></a>

Gunakan perintah `aws emr put-auto-scaling-policy` untuk menerapkan kebijakan penskalaan otomatis ke grup instans yang sudah ada. Grup instans harus menjadi bagian dari sebuah klaster yang menggunakan IAM role penskalaan otomatis. Contoh berikut ini menggunakan referensi ke file JSON, `autoscaleconfig.json`, yang menentukan konfigurasi kebijakan penskalaan otomatis.

```
aws emr put-auto-scaling-policy --cluster-id j-1EKZ3TYEVF1S2 --instance-group-id ig-3PLUZBA6WLS07 --auto-scaling-policy file://your/path/to/autoscaleconfig.json 
```

Isi dari file `autoscaleconfig.json`, yang mendefinisikan aturan penskalaan keluar yang sama seperti yang ditunjukkan pada contoh sebelumnya, ditunjukkan di bawah ini.

```
{
          "Constraints": {
                  "MaxCapacity": 10,
                  "MinCapacity": 2
          },
          "Rules": [{
                  "Action": {
                          "SimpleScalingPolicyConfiguration": {
                                  "AdjustmentType": "CHANGE_IN_CAPACITY",
                                  "CoolDown": 300,
                                  "ScalingAdjustment": 1
                          }
                  },
                  "Description": "Replicates the default scale-out rule in the console for YARN memory",
                  "Name": "Default-scale-out",
                  "Trigger": {
                          "CloudWatchAlarmDefinition": {
                                  "ComparisonOperator": "LESS_THAN",
                                  "Dimensions": [{
                                          "Key": "JobFlowId",
                                          "Value": "${emr.clusterID}"
                                  }],
                                  "EvaluationPeriods": 1,
                                  "MetricName": "YARNMemoryAvailablePercentage",
                                  "Namespace": "AWS/ElasticMapReduce",
                                  "Period": 300,
                                  "Statistic": "AVERAGE",
                                  "Threshold": 15,
                                  "Unit": "PERCENT"
                          }
                  }
          }]
  }
```

### Menghapus kebijakan penskalaan otomatis dari grup instans
<a name="emr-autoscale-cli-removepolicy"></a>

```
aws emr remove-auto-scaling-policy --cluster-id j-1EKZ3TYEVF1S2 --instance-group-id ig-3PLUZBA6WLS07
```

### Mengambil Konfigurasi Kebijakan Penskalaan Otomatis
<a name="emr-autoscale-cli-getpolicy"></a>

`describe-cluster`Perintah mengambil konfigurasi kebijakan di InstanceGroup blok. Sebagai contoh, perintah berikut ini mengambil konfigurasi untuk klaster dengan ID klaster `j-1CWOHP4PI30VJ`.

```
aws emr describe-cluster --cluster-id j-1CWOHP4PI30VJ
```

Perintah tersebut menghasilkan output seperti berikut ini.

```
{
    "Cluster": {
        "Configurations": [],
        "Id": "j-1CWOHP4PI30VJ",
        "NormalizedInstanceHours": 48,
        "Name": "Auto Scaling Cluster",
        "ReleaseLabel": "emr-5.2.0",
        "ServiceRole": "EMR_DefaultRole",
        "AutoTerminate": false,
        "TerminationProtected": true,
        "MasterPublicDnsName": "ec2-54-167-31-38.compute-1.amazonaws.com",
        "LogUri": "s3n://aws-logs-232939870606-us-east-1/elasticmapreduce/",
        "Ec2InstanceAttributes": {
            "Ec2KeyName": "performance",
            "AdditionalMasterSecurityGroups": [],
            "AdditionalSlaveSecurityGroups": [],
            "EmrManagedSlaveSecurityGroup": "sg-09fc9362",
            "Ec2AvailabilityZone": "us-east-1d",
            "EmrManagedMasterSecurityGroup": "sg-0bfc9360",
            "IamInstanceProfile": "EMR_EC2_DefaultRole"
        },
        "Applications": [
            {
                "Name": "Hadoop",
                "Version": "2.7.3"
            }
        ],
        "InstanceGroups": [
            {
                "AutoScalingPolicy": {
                    "Status": {
                        "State": "ATTACHED",
                        "StateChangeReason": {
                            "Message": ""
                        }
                    },
                    "Constraints": {
                        "MaxCapacity": 10,
                        "MinCapacity": 2
                    },
                    "Rules": [
                        {
                            "Name": "Default-scale-out",
                            "Trigger": {
                                "CloudWatchAlarmDefinition": {
                                    "MetricName": "YARNMemoryAvailablePercentage",
                                    "Unit": "PERCENT",
                                    "Namespace": "AWS/ElasticMapReduce",
                                    "Threshold": 15,
                                    "Dimensions": [
                                        {
                                            "Key": "JobFlowId",
                                            "Value": "j-1CWOHP4PI30VJ"
                                        }
                                    ],
                                    "EvaluationPeriods": 1,
                                    "Period": 300,
                                    "ComparisonOperator": "LESS_THAN",
                                    "Statistic": "AVERAGE"
                                }
                            },
                            "Description": "",
                            "Action": {
                                "SimpleScalingPolicyConfiguration": {
                                    "CoolDown": 300,
                                    "AdjustmentType": "CHANGE_IN_CAPACITY",
                                    "ScalingAdjustment": 1
                                }
                            }
                        },
                        {
                            "Name": "Default-scale-in",
                            "Trigger": {
                                "CloudWatchAlarmDefinition": {
                                    "MetricName": "YARNMemoryAvailablePercentage",
                                    "Unit": "PERCENT",
                                    "Namespace": "AWS/ElasticMapReduce",
                                    "Threshold": 75,
                                    "Dimensions": [
                                        {
                                            "Key": "JobFlowId",
                                            "Value": "j-1CWOHP4PI30VJ"
                                        }
                                    ],
                                    "EvaluationPeriods": 1,
                                    "Period": 300,
                                    "ComparisonOperator": "GREATER_THAN",
                                    "Statistic": "AVERAGE"
                                }
                            },
                            "Description": "",
                            "Action": {
                                "SimpleScalingPolicyConfiguration": {
                                    "CoolDown": 300,
                                    "AdjustmentType": "CHANGE_IN_CAPACITY",
                                    "ScalingAdjustment": -1
                                }
                            }
                        }
                    ]
                },
                "Configurations": [],
                "InstanceType": "m5.xlarge",
                "Market": "ON_DEMAND",
                "Name": "Core - 2",
                "ShrinkPolicy": {},
                "Status": {
                    "Timeline": {
                        "CreationDateTime": 1479413437.342,
                        "ReadyDateTime": 1479413864.615
                    },
                    "State": "RUNNING",
                    "StateChangeReason": {
                        "Message": ""
                    }
                },
                "RunningInstanceCount": 2,
                "Id": "ig-3M16XBE8C3PH1",
                "InstanceGroupType": "CORE",
                "RequestedInstanceCount": 2,
                "EbsBlockDevices": []
            },
            {
                "Configurations": [],
                "Id": "ig-OP62I28NSE8M",
                "InstanceGroupType": "MASTER",
                "InstanceType": "m5.xlarge",
                "Market": "ON_DEMAND",
                "Name": "Master - 1",
                "ShrinkPolicy": {},
                "EbsBlockDevices": [],
                "RequestedInstanceCount": 1,
                "Status": {
                    "Timeline": {
                        "CreationDateTime": 1479413437.342,
                        "ReadyDateTime": 1479413752.088
                    },
                    "State": "RUNNING",
                    "StateChangeReason": {
                        "Message": ""
                    }
                },
                "RunningInstanceCount": 1
            }
        ],
        "AutoScalingRole": "EMR_AutoScaling_DefaultRole",
        "Tags": [],
        "BootstrapActions": [],
        "Status": {
            "Timeline": {
                "CreationDateTime": 1479413437.339,
                "ReadyDateTime": 1479413863.666
            },
            "State": "WAITING",
            "StateChangeReason": {
                "Message": "Cluster ready after last step completed."
            }
        }
    }
}
```

# Mengubah ukuran cluster EMR Amazon yang sedang berjalan secara manual
<a name="emr-manage-resize"></a>

Anda dapat menambahkan dan menghapus instance dari grup instance inti dan tugas serta armada instance di cluster yang sedang berjalan dengan Konsol Manajemen AWS, AWS CLI, atau Amazon EMR API. Jika klaster menggunakan grup instans, Anda secara eksplisit mengubah jumlah instans. Jika klaster Anda menggunakan armada instans, Anda dapat mengubah unit target untuk Instans Sesuai Permintaan dan Instans Spot. Armada instans lalu menambahkan dan menghapus instans untuk memenuhi target baru. Untuk informasi selengkapnya, lihat [Opsi armada instans](emr-instance-fleet.md#emr-instance-fleet-options). Aplikasi dapat menggunakan instans Amazon EC2 yang baru disediakan untuk meng–host simpul segera setelah instans tersedia. Ketika instance dihapus, Amazon EMR menutup tugas dengan cara yang tidak mengganggu pekerjaan dan perlindungan terhadap kehilangan data. Untuk informasi selengkapnya, lihat [Akhiri pada penyelesaian tugas](emr-scaledown-behavior.md#emr-scaledown-terminate-task).

## Ubah ukuran cluster dengan konsol
<a name="resize-console"></a>

Anda dapat menggunakan konsol Amazon EMR untuk mengubah ukuran klaster berjalan.

------
#### [ Console ]

**Untuk mengubah jumlah instance untuk cluster yang ada dengan konsol baru**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Di bawah **EMR pada EC2** di panel navigasi kiri, pilih **Cluster**, dan pilih cluster yang ingin Anda perbarui. Cluster harus berjalan; Anda tidak dapat mengubah ukuran klaster penyediaan atau terminasi.

1. Pada tab **Instans** pada halaman detail klaster, lihat panel **grup Instans**. 

1. **Untuk mengubah ukuran grup instans yang ada, pilih tombol radio di sebelah grup inti atau instance tugas yang ingin Anda ubah ukurannya, lalu pilih Ubah ukuran grup instans.** Tentukan jumlah instance baru untuk grup instans, lalu pilih **Ubah ukuran**.
**catatan**  
Jika Anda memilih untuk mengurangi ukuran grup instans yang sedang berjalan, Amazon EMR akan secara cerdas memilih instans yang akan dihapus dari grup untuk kehilangan data minimal. **Untuk kontrol lebih terperinci dari tindakan mengubah ukuran Anda, Anda dapat memilih **ID** untuk grup instans, memilih instance yang ingin Anda hapus, dan kemudian menggunakan opsi Terminate.** Untuk informasi lebih lanjut tentang perilaku penurunan skala cerdas, lihat. [Opsi penskalaan klaster untuk kluster EMR Amazon](emr-scaledown-behavior.md)

1. Jika Anda ingin membatalkan tindakan mengubah ukuran, Anda dapat memilih tombol radio untuk grup instans dengan status **Mengubah ukuran** dan kemudian memilih **Berhenti mengubah ukuran** dari tindakan daftar.

1. Untuk menambahkan satu atau beberapa grup instance tugas ke klaster Anda sebagai respons terhadap peningkatan beban kerja, pilih **Tambahkan grup instans tugas** dari tindakan daftar. Pilih jenis instans Amazon EC2, masukkan jumlah instance untuk grup tugas, lalu pilih **Tambahkan grup instans tugas untuk kembali ke panel grup** **Instans** untuk klaster Anda.

------

Ketika Anda membuat perubahan pada jumlah simpul, **Status** grup instans akan diperbarui. Ketika perubahan yang Anda minta selesai, **Status** adalah **berjalan**.

## Ubah ukuran cluster dengan AWS CLI
<a name="ResizingParameters"></a>

Anda dapat menggunakan AWS CLI untuk mengubah ukuran cluster yang sedang berjalan. Anda dapat meningkatkan atau mengurangi jumlah simpul tugas, dan Anda dapat meningkatkan jumlah simpul inti dalam klaster berjalan. Dimungkinkan juga untuk mematikan instance di grup instance inti dengan AWS CLI atau API. Ini harus dilakukan dengan hati-hati. Mematikan instance di grup instance inti berisiko kehilangan data, dan instance tidak diganti secara otomatis.

Selain mengubah ukuran inti dan grup tugas, Anda juga dapat menambahkan satu atau beberapa grup instance tugas ke cluster yang sedang berjalan dengan. AWS CLI<a name="IncreaseDecreaseNodesawscli"></a>

**Untuk mengubah ukuran cluster dengan mengubah jumlah instance dengan AWS CLI**

Anda dapat menambahkan instance ke grup inti atau grup tugas, dan Anda dapat menghapus instance dari grup tugas dengan AWS CLI `modify-instance-groups` subperintah dengan parameter. `InstanceCount` Untuk menambahkan instans ke grup inti atau tugas, tingkatkan `InstanceCount`. Untuk mengurangi jumlah instans dalam grup tugas, kurangi nilai `InstanceCount`. Mengubah jumlah instans grup tugas ke 0 akan menghapus semua instans tetapi tidak menghapus grup instans tersebut.
+ Untuk meningkatkan jumlah instance dalam grup instance tugas dari 3 menjadi 4, ketik perintah berikut dan ganti *ig-31JXXXXXXBTO* dengan ID grup instance.

  ```
  aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-31JXXXXXXBTO,InstanceCount=4
  ```

  Untuk mengambil `InstanceGroupId`, gunakan subperintah `describe-cluster`. Outputnya adalah obyek JSON yang disebut `Cluster` yang berisi ID dari setiap grup instans. Untuk menggunakan perintah ini, Anda memerlukan ID cluster (yang dapat Anda ambil dengan `aws emr list-clusters` perintah atau konsol). Untuk mengambil ID grup instance, ketik perintah berikut dan ganti *j-2AXXXXXXGAPLF* dengan ID cluster.

  ```
  aws emr describe-cluster --cluster-id j-2AXXXXXXGAPLF
  ```

  Dengan AWS CLI, Anda juga dapat menghentikan instance di grup instance inti dengan `--modify-instance-groups` subperintah.
**Awas**  
Menentukan `EC2InstanceIdsToTerminate` harus dilakukan dengan hati-hati. Instans diakhiri segera, terlepas dari status aplikasi yang berjalan padanya, dan instans tidak secara otomatis diganti. Hal ini berlaku terlepas dari konfigurasi **Perilaku menurunkan skala** klaster tersebut. Mengakhiri sebuah instans dengan cara ini berisiko kehilangan data dan perilaku klaster tak terduga.

  Untuk mengakhiri instance tertentu, Anda memerlukan ID grup instance (dikembalikan oleh `aws emr describe-cluster --cluster-id` subcommand) dan ID instance (dikembalikan oleh `aws emr list-instances --cluster-id` subcommand), ketik perintah berikut, ganti *ig-6RXXXXXX07SA* dengan ID grup instance dan ganti *i-f9XXXXf2* dengan ID instance.

  ```
  1. aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-6RXXXXXX07SA,EC2InstanceIdsToTerminate=i-f9XXXXf2
  ```

  Untuk informasi selengkapnya tentang menggunakan perintah EMR Amazon di AWS CLI, lihat. [https://docs.aws.amazon.com/cli/latest/reference/emr](https://docs.aws.amazon.com/cli/latest/reference/emr)

**Untuk mengubah ukuran cluster dengan menambahkan grup instance tugas dengan AWS CLI**

Dengan AWS CLI, Anda dapat menambahkan dari 1-48 grup instance tugas ke cluster dengan subperintah. `--add-instance-groups` Grup instance tugas hanya dapat ditambahkan ke cluster yang berisi grup instance utama dan grup instance inti. Saat Anda menggunakan AWS CLI, Anda dapat menambahkan hingga lima grup instance tugas setiap kali Anda menggunakan `--add-instance-groups` subperintah.

1. Untuk menambahkan grup instance tugas tunggal ke cluster, ketik perintah berikut dan ganti *j-JXBXXXXXX37R* dengan ID cluster.

   ```
   1. aws emr add-instance-groups --cluster-id j-JXBXXXXXX37R --instance-groups InstanceCount=6,InstanceGroupType=task,InstanceType=m5.xlarge
   ```

1. Untuk menambahkan beberapa grup instance tugas ke cluster, ketik perintah berikut dan ganti *j-JXBXXXXXX37R* dengan ID cluster. Anda dapat menambahkan hingga lima grup instans tugas dalam satu perintah.

   ```
   aws emr add-instance-groups --cluster-id j-JXBXXXXXX37R --instance-groups InstanceCount=6,InstanceGroupType=task,InstanceType=m5.xlarge InstanceCount=10,InstanceGroupType=task,InstanceType=m5.xlarge
   ```

   Untuk informasi selengkapnya tentang menggunakan perintah EMR Amazon di AWS CLI, lihat. [https://docs.aws.amazon.com/cli/latest/reference/emr](https://docs.aws.amazon.com/cli/latest/reference/emr)

## Menginterupsi perubahan ukuran
<a name="interruptible-resize"></a>

Menggunakan Amazon EMR versi 4.1.0 atau yang lebih baru, Anda dapat mengeluarkan perubahan ukuran di tengah-tengah operasi perubahan ukuran yang sudah ada. Selain itu, Anda dapat menghentikan permintaan perubahan ukuran yang dikirimkan sebelumnya atau mengirimkan permintaan baru untuk menimpa permintaan sebelumnya tanpa menunggu hingga selesai. Anda juga dapat menghentikan pengubahan ukuran yang ada dari konsol atau dengan panggilan `ModifyInstanceGroups` API dengan jumlah saat ini sebagai jumlah target klaster.

Tangkapan layar berikut menunjukkan grup instans tugas yang diubah ukurannya tetapi dapat dihentikan dengan memilih **Berhenti**.

![\[Task instance group showing resizing status with options to resize or stop.\]](http://docs.aws.amazon.com/id_id/emr/latest/ManagementGuide/images/resize-stop.png)


**Untuk mengganggu pengubahan ukuran dengan AWS CLI**

Anda dapat menggunakan AWS CLI untuk menghentikan pengubahan ukuran dengan `modify-instance-groups` subperintah. Asumsikan bahwa Anda memiliki enam instans dalam grup instans Anda dan Anda ingin meningkatkannya ke 10. Anda kemudian memutuskan bahwa Anda ingin membatalkan permintaan tersebut:
+ Permintaan awal:

  ```
  aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-myInstanceGroupId,InstanceCount=10
  ```

  Permintaan kedua untuk menghentikan permintaan pertama:

  ```
  aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-myInstanceGroupId,InstanceCount=6
  ```

**catatan**  
Karena proses ini asinkron, Anda mungkin melihat jumlah instans berubah sehubungan dengan permintaan API sebelumnya sebelum permintaan berikutnya dituruti. Dalam kasus penyusutan, Anda mungkin mengalami ketika memiliki pekerjaan yang berjalan pada simpul, grup instans mungkin tidak menyusut sampai simpul telah menyelesaikan pekerjaan mereka.

## Kondisi yang ditangguhkan
<a name="emr-manage-resizeSuspended"></a>

Grup instans memasuki status ditangguhkan jika menemui terlalu banyak kesalahan ketika mencoba untuk memulai simpul klaster baru. Sebagai contoh, jika simpul yang baru gagal saat melakukan tindakan bootstrap, grup instans masuk ke status *DITANGGUHKAN*, bukan terus-menerus menyediakan simpul baru. Setelah Anda mengatasi masalah yang mendasari, setel ulang jumlah simpul yang diinginkan pada grup instans di klaster, dan kemudian grup instans akan melanjutkan mengalokasikan simpul. Memodifikasi grup instans menginstruksikan Amazon EMR untuk mencoba menyediakan simpul kembali. Tidak ada simpul berjalan yang dimulai ulang atau dihentikan.

Dalam AWS CLI, `list-instances` subperintah mengembalikan semua instance dan statusnya seperti halnya subperintah. `describe-cluster` Jika Amazon EMR mendeteksi kesalahan dengan grup instans, itu akan mengubah status grup menjadi `SUSPENDED`. 

**Untuk mengatur ulang cluster dalam status SUSPEND dengan AWS CLI**

Ketik subperintah `describe-cluster` dengan parameter `--cluster-id` untuk melihat status instans dalam klaster Anda.
+ Untuk melihat informasi tentang semua instance dan grup instance dalam sebuah cluster, ketik perintah berikut dan ganti *j-3KVXXXXXXY7UG* dengan ID cluster.

  ```
  1. aws emr describe-cluster --cluster-id j-3KVXXXXXXY7UG
  ```

  Output menampilkan informasi tentang grup instans Anda dan status instans:

  ```
   1. {
   2.     "Cluster": {
   3.         "Status": {
   4.             "Timeline": {
   5.                 "ReadyDateTime": 1413187781.245,
   6.                 "CreationDateTime": 1413187405.356
   7.             },
   8.             "State": "WAITING",
   9.             "StateChangeReason": {
  10.                 "Message": "Waiting after step completed"
  11.             }
  12.         },
  13.         "Ec2InstanceAttributes": {
  14.             "Ec2AvailabilityZone": "us-west-2b"
  15.         },
  16.         "Name": "Development Cluster",
  17.         "Tags": [],
  18.         "TerminationProtected": false,
  19.         "RunningAmiVersion": "3.2.1",
  20.         "NormalizedInstanceHours": 16,
  21.         "InstanceGroups": [
  22.             {
  23.                 "RequestedInstanceCount": 1,
  24.                 "Status": {
  25.                     "Timeline": {
  26.                         "ReadyDateTime": 1413187775.749,
  27.                         "CreationDateTime": 1413187405.357
  28.                     },
  29.                     "State": "RUNNING",
  30.                     "StateChangeReason": {
  31.                         "Message": ""
  32.                     }
  33.                 },
  34.                 "Name": "MASTER",
  35.                 "InstanceGroupType": "MASTER",
  36.                 "InstanceType": "m5.xlarge",
  37.                 "Id": "ig-3ETXXXXXXFYV8",
  38.                 "Market": "ON_DEMAND",
  39.                 "RunningInstanceCount": 1
  40.             },
  41.             {
  42.                 "RequestedInstanceCount": 1,
  43.                 "Status": {
  44.                     "Timeline": {
  45.                         "ReadyDateTime": 1413187781.301,
  46.                         "CreationDateTime": 1413187405.357
  47.                     },
  48.                     "State": "RUNNING",
  49.                     "StateChangeReason": {
  50.                         "Message": ""
  51.                     }
  52.                 },
  53.                 "Name": "CORE",
  54.                 "InstanceGroupType": "CORE",
  55.                 "InstanceType": "m5.xlarge",
  56.                 "Id": "ig-3SUXXXXXXQ9ZM",
  57.                 "Market": "ON_DEMAND",
  58.                 "RunningInstanceCount": 1
  59.             }
  60. ...
  61. }
  ```

  Untuk melihat informasi tentang grup instans tertentu, ketik subperintah `list-instances` dengan parameter `--cluster-id` dan `--instance-group-types`. Anda dapat melihat informasi untuk kelompok utama, inti, atau tugas.

  ```
  1. aws emr list-instances --cluster-id j-3KVXXXXXXY7UG --instance-group-types "CORE"
  ```

  Penggunaan subperintah `modify-instance-groups` dengan parameter `--instance-groups` untuk menyetel ulang klaster di status `SUSPENDED`. ID grup instans dikembalikan oleh subperintah `describe-cluster`.

  ```
  1. aws emr modify-instance-groups --instance-groups InstanceGroupId=ig-3SUXXXXXXQ9ZM,InstanceCount=3
  ```

## Pertimbangan saat mengurangi ukuran cluster
<a name="resize-considerations"></a>

Jika Anda memilih untuk mengurangi ukuran klaster yang sedang berjalan, pertimbangkan perilaku dan praktik terbaik EMR Amazon berikut:
+ Untuk mengurangi dampak pada pekerjaan yang sedang berlangsung, Amazon EMR secara cerdas memilih instans yang akan dihapus. Untuk informasi selengkapnya tentang perilaku penurunan skala klaster, lihat [Akhiri pada penyelesaian tugas](emr-scaledown-behavior.md#emr-scaledown-terminate-task) di Panduan Manajemen EMR Amazon. 
+ Saat Anda menurunkan ukuran cluster, Amazon EMR menyalin data dari instance yang dihapus ke instance yang tersisa. Pastikan bahwa ada kapasitas penyimpanan yang cukup untuk data ini dalam kasus yang tetap dalam grup.
+ Amazon EMR mencoba untuk menonaktifkan HDFS pada instance dalam grup. Sebelum Anda mengurangi ukuran cluster, kami sarankan Anda meminimalkan HDFS tulis I/O.
+ Untuk kontrol yang paling terperinci ketika Anda mengurangi ukuran cluster, Anda dapat melihat cluster di konsol dan menavigasi ke tab **Instances**. Pilih **ID** untuk grup instance yang ingin Anda ubah ukurannya. Kemudian gunakan opsi **Terminate** untuk instance tertentu yang ingin Anda hapus. 

# Mengonfigurasi batas waktu penyediaan untuk mengontrol kapasitas di Amazon EMR
<a name="emr-provisioning-timeout"></a>

Saat menggunakan armada instance, Anda dapat mengonfigurasi batas waktu *penyediaan*. Batas waktu penyediaan menginstruksikan Amazon EMR untuk menghentikan penyediaan kapasitas instans jika klaster melebihi ambang waktu yang ditentukan selama peluncuran klaster atau operasi penskalaan klaster. Topik berikut mencakup cara mengonfigurasi batas waktu penyediaan untuk peluncuran klaster dan untuk operasi penskalaan klaster.

**Topics**
+ [Konfigurasikan batas waktu penyediaan untuk peluncuran klaster di Amazon EMR](emr-provisioning-timeout-launch.md)
+ [Menyesuaikan periode batas waktu penyediaan untuk mengubah ukuran cluster di Amazon EMR](emr-provisioning-timeout-resize.md)

# Konfigurasikan batas waktu penyediaan untuk peluncuran klaster di Amazon EMR
<a name="emr-provisioning-timeout-launch"></a>

Anda dapat menentukan periode batas waktu untuk menyediakan Instans Spot untuk setiap armada di klaster Anda. Jika Amazon EMR tidak dapat menyediakan kapasitas Spot, Anda dapat memilih untuk menghentikan klaster atau menyediakan kapasitas Sesuai Permintaan. Jika periode batas waktu berakhir selama proses pengubahan ukuran klaster, Amazon EMR membatalkan permintaan Spot yang tidak tersedia. Instans Spot yang tidak disediakan tidak ditransfer ke kapasitas Sesuai Permintaan.

Lakukan langkah-langkah berikut untuk menyesuaikan periode batas waktu penyediaan untuk peluncuran klaster dengan konsol Amazon EMR.

------
#### [ Console ]

**Untuk mengonfigurasi batas waktu penyediaan saat Anda membuat klaster dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. **Di bawah **EMR pada EC2** di panel navigasi kiri, pilih Clusters, lalu pilih **Create cluster**.**

1. Pada halaman **Create Cluster**, navigasikan ke **konfigurasi Cluster** dan pilih **Instance Fleets**.

1. Di bawah **opsi penskalaan dan penyediaan klaster**, tentukan ukuran Spot untuk inti dan armada tugas Anda.

1. Di bawah **konfigurasi batas waktu Spot**, pilih salah satu **Kluster Terminate setelah batas waktu Spot** atau **Beralih ke Sesuai Permintaan** setelah batas waktu Spot. Kemudian, tentukan periode batas waktu untuk penyediaan Instans Spot. Nilai default adalah 1 jam.

1. Pilih opsi lain yang berlaku untuk klaster Anda.

1. Untuk meluncurkan klaster Anda dengan batas waktu yang dikonfigurasi, pilih **Buat klaster**.

------
#### [ AWS CLI ]

**Untuk menentukan batas waktu penyediaan dengan perintah `create-cluster`**

```
aws emr create-cluster \
--release-label emr-5.35.0 \
--service-role EMR_DefaultRole \
--ec2-attributes '{"InstanceProfile":"EMR_EC2_DefaultRole","SubnetIds":["subnet-XXXXX"]}' \
--instance-fleets '[{"InstanceFleetType":"MASTER","TargetOnDemandCapacity":1,"TargetSpotCapacity":0,"LaunchSpecifications":{"OnDemandSpecification":{"AllocationStrategy":"lowest-price"}},"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":100,"InstanceType":"m5.xlarge"}],"Name":"Master - 1"},{"InstanceFleetType":"CORE","TargetOnDemandCapacity":1,"TargetSpotCapacity":1,"LaunchSpecifications":{"SpotSpecification":{"TimeoutDurationMinutes":120,"TimeoutAction":"SWITCH_TO_ON_DEMAND"},"OnDemandSpecification":{"AllocationStrategy":"lowest-price"}},"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":1,"InstanceType":"m5.xlarge"}],"Name":"Core - 2"}]'
```

------

# Menyesuaikan periode batas waktu penyediaan untuk mengubah ukuran cluster di Amazon EMR
<a name="emr-provisioning-timeout-resize"></a>

Anda dapat menentukan periode batas waktu untuk menyediakan Instans Spot untuk setiap armada di klaster Anda. Jika Amazon EMR tidak dapat menyediakan kapasitas Spot, Amazon akan membatalkan permintaan pengubahan ukuran dan menghentikan upayanya untuk menyediakan kapasitas Spot tambahan. Saat Anda membuat cluster, Anda dapat mengonfigurasi batas waktu. Untuk klaster yang sedang berjalan, Anda dapat menambahkan atau memperbarui batas waktu.

Ketika periode batas waktu berakhir, Amazon EMR secara otomatis mengirimkan acara ke aliran Acara Amazon. CloudWatch Dengan CloudWatch, Anda dapat membuat aturan yang cocok dengan peristiwa sesuai dengan pola yang ditentukan, dan kemudian merutekan peristiwa ke target untuk mengambil tindakan. Misalnya, Anda dapat mengonfigurasi aturan untuk mengirim pemberitahuan email. Untuk informasi selengkapnya tentang cara membuat aturan, lihat[Membuat aturan untuk acara EMR Amazon dengan CloudWatch](emr-events-cloudwatch-console.md). Untuk informasi selengkapnya tentang detail acara yang berbeda, lihat[Instance peristiwa perubahan negara armada](emr-manage-cloudwatch-events.md#emr-cloudwatch-instance-fleet-events).

## Contoh batas waktu penyediaan untuk pengubahan ukuran klaster
<a name="emr-provisioning-timeout-examples"></a>

**Tentukan batas waktu penyediaan untuk mengubah ukuran dengan AWS CLI**

Contoh berikut menggunakan `create-cluster` perintah untuk menambahkan batas waktu penyediaan untuk mengubah ukuran.

```
aws emr create-cluster \
--release-label emr-5.35.0 \
--service-role EMR_DefaultRole \
--ec2-attributes '{"InstanceProfile":"EMR_EC2_DefaultRole","SubnetIds":["subnet-XXXXX"]}' \
--instance-fleets '[{"InstanceFleetType":"MASTER","TargetOnDemandCapacity":1,"TargetSpotCapacity":0,"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":100,"InstanceType":"m5.xlarge"}],"Name":"Master - 1"},{"InstanceFleetType":"CORE","TargetOnDemandCapacity":1,"TargetSpotCapacity":1,"LaunchSpecifications":{"SpotSpecification":{"TimeoutDurationMinutes":120,"TimeoutAction":"SWITCH_TO_ON_DEMAND"},"OnDemandSpecification":{"AllocationStrategy":"lowest-price"}},"ResizeSpecifications":{"SpotResizeSpecification":{"TimeoutDurationMinutes":20},"OnDemandResizeSpecification":{"TimeoutDurationMinutes":25}},"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":1,"InstanceType":"m5.xlarge"}],"Name":"Core - 2"}]'
```

Contoh berikut menggunakan `modify-instance-fleet` perintah untuk menambahkan batas waktu penyediaan untuk mengubah ukuran.

```
aws emr modify-instance-fleet \
--cluster-id j-XXXXXXXXXXXXX \
--instance-fleet '{"InstanceFleetId":"if-XXXXXXXXXXXX","ResizeSpecifications":{"SpotResizeSpecification":{"TimeoutDurationMinutes":30},"OnDemandResizeSpecification":{"TimeoutDurationMinutes":60}}}' \
--region us-east-1
```

Contoh berikut menggunakan `add-instance-fleet-command` untuk menambahkan batas waktu penyediaan untuk mengubah ukuran.

```
aws emr add-instance-fleet \
--cluster-id j-XXXXXXXXXXXXX \
--instance-fleet '{"InstanceFleetType":"TASK","TargetOnDemandCapacity":1,"TargetSpotCapacity":0,"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":100,"InstanceType":"m5.xlarge"}],"Name":"TaskFleet","ResizeSpecifications":{"SpotResizeSpecification":{"TimeoutDurationMinutes":30},"OnDemandResizeSpecification":{"TimeoutDurationMinutes":35}}}' \
--region us-east-1
```

**Tentukan batas waktu penyediaan untuk mengubah ukuran dan peluncuran dengan AWS CLI**

Contoh berikut menggunakan `create-cluster` perintah untuk menambahkan batas waktu penyediaan untuk mengubah ukuran dan peluncuran.

```
aws emr create-cluster \
--release-label emr-5.35.0 \
--service-role EMR_DefaultRole \
--ec2-attributes '{"InstanceProfile":"EMR_EC2_DefaultRole","SubnetIds":["subnet-XXXXX"]}' \
--instance-fleets '[{"InstanceFleetType":"MASTER","TargetOnDemandCapacity":1,"TargetSpotCapacity":0,"LaunchSpecifications":{"OnDemandSpecification":{"AllocationStrategy":"lowest-price"}},"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":100,"InstanceType":"m5.xlarge"}],"Name":"Master - 1"},{"InstanceFleetType":"CORE","TargetOnDemandCapacity":1,"TargetSpotCapacity":1,"LaunchSpecifications":{"SpotSpecification":{"TimeoutDurationMinutes":120,"TimeoutAction":"SWITCH_TO_ON_DEMAND"},"OnDemandSpecification":{"AllocationStrategy":"lowest-price"}},"ResizeSpecifications":{"SpotResizeSpecification":{"TimeoutDurationMinutes":20},"OnDemandResizeSpecification":{"TimeoutDurationMinutes":25}},"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":1,"InstanceType":"m5.xlarge"}],"Name":"Core - 2"}]'
```

## Pertimbangan untuk mengubah ukuran batas waktu penyediaan
<a name="emr-provisioning-timeout-considerations"></a>

Saat mengonfigurasi batas waktu penyediaan klaster untuk armada instans Anda, pertimbangkan perilaku berikut.
+ Anda dapat mengonfigurasi batas waktu penyediaan untuk Instans Spot dan Sesuai Permintaan. Batas waktu penyediaan minimum adalah 5 menit. Batas waktu penyediaan maksimum adalah 7 hari.
+ Anda hanya dapat mengonfigurasi batas waktu penyediaan untuk klaster EMR yang menggunakan armada instance. Anda harus mengkonfigurasi setiap inti dan armada tugas secara terpisah.
+ Saat membuat klaster, Anda dapat mengonfigurasi batas waktu penyediaan. Anda dapat menambahkan batas waktu atau memperbarui batas waktu yang ada untuk klaster yang sedang berjalan.
+ Jika Anda mengirimkan beberapa operasi pengubahan ukuran, Amazon EMR melacak batas waktu penyediaan untuk setiap operasi pengubahan ukuran. Misalnya, atur batas waktu penyediaan di cluster ke menit. *60* Kemudian, kirimkan operasi pengubahan ukuran *R1* pada waktunya*T1*. Kirim operasi pengubahan ukuran kedua *R2* pada waktu*T2*. Batas waktu penyediaan untuk R1 berakhir pada. *T1 \$1 60 minutes* Batas waktu penyediaan untuk R2 berakhir pada. *T2 \$1 60 minutes*
+ Jika Anda mengirimkan operasi pengubahan ukuran skala baru sebelum batas waktu berakhir, Amazon EMR melanjutkan upayanya untuk menyediakan kapasitas untuk klaster EMR Anda.

# Opsi penskalaan klaster untuk kluster EMR Amazon
<a name="emr-scaledown-behavior"></a>

**catatan**  
Opsi perilaku penskalaan tidak lagi didukung sejak Amazon EMR merilis 5.10.0. Karena pengenalan penagihan per detik di Amazon EC2, perilaku menurunkan skala default untuk klaster Amazon EMR sekarang berakhir pada penyelesaian tugas.

Dengan Amazon EMR merilis 5.1.0 hingga 5.9.1, ada dua opsi untuk perilaku penurunan skala: berhenti pada batas jam instans untuk penagihan Amazon EC2, atau dihentikan saat penyelesaian tugas. Dimulai dengan rilis Amazon EMR 5.10.0, pengaturan untuk penghentian pada batas jam instans tidak digunakan lagi karena pengenalan penagihan per detik di Amazon EC2. Kami tidak merekomendasikan menentukan pengakhiran batas jam instans dalam versi yang memiliki opsi tersebut.

**Awas**  
Jika Anda menggunakan AWS CLI untuk mengeluarkan `modify-instance-groups` dengan`EC2InstanceIdsToTerminate`, instance ini segera dihentikan, tanpa mempertimbangkan pengaturan ini, dan terlepas dari status aplikasi yang berjalan di dalamnya. Mengakhiri sebuah instans dengan cara ini berisiko kehilangan data dan perilaku klaster tak terduga.

Saat penghentian saat penyelesaian tugas ditentukan, Amazon EMR menolak daftar dan menguras tugas dari node sebelum menghentikan instans Amazon EC2. Dengan ditentukannya salah satu perilaku tersebut, Amazon EMR tidak mengakhiri instans Amazon EC2 dalam grup instans inti jika dapat menyebabkan kerusakan HDFS. 

## Akhiri pada penyelesaian tugas
<a name="emr-scaledown-terminate-task"></a>

Amazon EMR mengizinkan Anda untuk menurunkan skala klaster Anda tanpa mempengaruhi beban kerja Anda. Amazon EMR mencoba menonaktifkan YARN, HDFS, dan daemon lainnya dengan anggun pada node inti dan tugas selama operasi pengubahan ukuran tanpa kehilangan data atau mengganggu pekerjaan. Amazon EMR hanya mengurangi ukuran grup instans jika pekerjaan yang ditetapkan ke grup telah selesai dan tidak digunakan. Untuk NodeManager YARN Graceful Decommission, Anda dapat secara manual menyesuaikan waktu node menunggu untuk dinonaktifkan.

**catatan**  
Ketika dekomisioning yang anggun terjadi, mungkin ada kehilangan data. Pastikan untuk membuat cadangan data Anda.

**penting**  
Ada kemungkinan bahwa data HDFS dapat hilang secara permanen selama penggantian yang anggun dari instance inti yang tidak sehat. Kami menyarankan agar Anda selalu mencadangkan data Anda.

Kali ini diatur menggunakan properti di klasifikasi konfigurasi `YARN-site`. Menggunakan Amazon EMR rilis 5.12.0 dan yang lebih tinggi, tentukan properti. `YARN.resourcemanager.nodemanager-graceful-decommission-timeout-secs` Menggunakan rilis Amazon EMR sebelumnya, tentukan properti. `YARN.resourcemanager.decommissioning.timeout`

Jika masih ada kontainer atau aplikasi YARN yang berjalan saat waktu penonaktifan habis, simpul dipaksa untuk dinonaktifkan dan YARN menjadwalkan ulang kontainer yang terpengaruh pada simpul lainnya. Nilai default adalah 3600 detik (satu jam). Anda dapat mengatur batas waktu ini menjadi nilai tinggi yang sewenang-wenang untuk memaksa pengurangan anggun menunggu lebih lama. Untuk informasi lebih lanjut, lihat [Graceful Decommission of YARN nodes dalam dokumentasi](http://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/GracefulDecommission.html) Apache Hadoop.

### Grup simpul tugas
<a name="emr-scaledown-task-nodes"></a>

Amazon EMR secara cerdas memilih instance yang tidak memiliki tugas yang berjalan terhadap langkah atau aplikasi apa pun, dan menghapus instance tersebut dari cluster terlebih dahulu. Jika semua instance di cluster sedang digunakan, Amazon EMR menunggu tugas diselesaikan pada instance sebelum menghapusnya dari cluster. Waktu tunggu default adalah 1 jam. Nilai ini dapat diubah dengan `YARN.resourcemanager.decommissioning.timeout` pengaturan. Amazon EMR secara dinamis menggunakan pengaturan baru. Anda dapat menyetel ini ke jumlah besar yang sewenang-wenang untuk memastikan bahwa Amazon EMR tidak menghentikan tugas apa pun sekaligus mengurangi ukuran cluster.

### Grup simpul inti
<a name="emr-scaledown-core-nodes"></a>

Pada node inti, DataNode daemon YARN NodeManager dan HDFS harus dinonaktifkan agar grup instance dapat dikurangi. Untuk YARN, pengurangan anggun memastikan bahwa node yang ditandai untuk penonaktifan hanya dialihkan ke `DECOMMISSIONED` status jika tidak ada wadah atau aplikasi yang tertunda atau tidak lengkap. Penonaktifan segera selesai jika tidak ada kontainer yang berjalan pada simpul di awal penonaktifan. 

Untuk HDFS, pengurangan yang anggun memastikan bahwa kapasitas target HDFS cukup besar untuk memenuhi semua blok yang ada. Jika kapasitas target tidak cukup besar, hanya sebagian jumlah instans inti yang dinonaktifkan sehingga simpul yang tersisa dapat menangani data yang ada di HDFS. Anda harus memastikan kapasitas HDFS tambahan untuk memungkinkan penonaktifan lebih lanjut. Anda juga harus mencoba meminimalkan penulisan I/O sebelum mencoba mengurangi grup instance. Penulisan I/O yang berlebihan mungkin menunda penyelesaian operasi pengubahan ukuran. 

Batas lain adalah faktor replikasi default, `dfs.replication` di dalam `/etc/hadoop/conf/hdfs-site`. Saat membuat klaster, Amazon EMR mengonfigurasi nilai berdasarkan jumlah instance di cluster: `1` dengan 1-3 instance, untuk cluster dengan 4-9 instance, dan `2` untuk cluster dengan 10\$1 instance. `3` 

**Awas**  
Pengaturan `dfs.replication` ke 1 pada cluster dengan kurang dari empat node dapat menyebabkan hilangnya data HDFS jika satu node turun. Kami menyarankan Anda menggunakan cluster dengan setidaknya empat node inti untuk beban kerja produksi.
Amazon EMR tidak akan mengizinkan cluster untuk menskalakan node inti di bawah ini. `dfs.replication` Misalnya, jika`dfs.replication = 2`, jumlah minimum node inti adalah 2.
Saat Anda menggunakan Penskalaan Terkelola, Penskalaan Otomatis, atau memilih untuk mengubah ukuran klaster secara manual, sebaiknya atur `dfs.replication` ke 2 atau lebih tinggi.

Pengurangan yang anggun tidak memungkinkan Anda mengurangi node inti di bawah faktor replikasi HDFS. Ini untuk memungkinkan HDFS menutup file karena replika tidak mencukupi. Untuk menghindari batas ini, turunkan faktor replikasi dan restart daemon. NameNode 

# Mengonfigurasi perilaku menurunkan skala Amazon EMR
<a name="emr-scaledown-configure"></a>

**catatan**  
Opsi perilaku scale-down terminate at instance hour tidak lagi didukung untuk rilis Amazon EMR 5.10.0 dan yang lebih tinggi. Opsi perilaku penurunan skala berikut hanya muncul di konsol EMR Amazon untuk rilis 5.1.0 hingga 5.9.1.

Anda dapat menggunakan Konsol Manajemen AWS, API EMR Amazon AWS CLI, atau Amazon untuk mengonfigurasi perilaku penurunan skala saat membuat klaster. 

------
#### [ Console ]

**Untuk mengonfigurasi perilaku penskalaan dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. **Di bawah **EMR pada EC2** di panel navigasi kiri, pilih Clusters, lalu pilih **Create cluster**.**

1. Di bagian **opsi penskalaan dan penyediaan kluster, pilih Gunakan penskalaan** **otomatis khusus**. Di bawah **Kebijakan penskalaan otomatis khusus**, pilih **tombol tindakan plus** untuk menambahkan **Skala dalam** kebijakan. Kami menyarankan Anda menambahkan kebijakan **Scale in** dan **Scale out**. Menambahkan hanya satu set kebijakan berarti Amazon EMR hanya akan melakukan penskalaan satu arah, dan Anda harus melakukan tindakan lainnya secara manual.

1. Pilih opsi lain yang berlaku untuk cluster Anda. 

1. Untuk meluncurkan klaster Anda, pilih **Buat klaster**.

------
#### [ AWS CLI ]

**Untuk mengonfigurasi perilaku penskalaan dengan AWS CLI**
+ Gunakan `--scale-down-behavior` opsi untuk menentukan salah satu `TERMINATE_AT_INSTANCE_HOUR` atau`TERMINATE_AT_TASK_COMPLETION`.

------

# Mengakhiri klaster EMR Amazon di status awal, berjalan, atau menunggu
<a name="UsingEMR_TerminateJobFlow"></a>

**Awas**  
Cluster EMR yang dihentikan tidak dapat dipulihkan. Pastikan bahwa sumber daya dan data apa pun pada notebook HDFS atau jupyter tidak lagi diperlukan sebelum dihapus. Data HDFS hilang saat cluster dihentikan.

Bagian ini menjelaskan metode untuk mengakhiri klaster. Untuk informasi tentang mengaktifkan proteksi pengakhiran dan mengakhiri klaster secara otomatis, lihat [Kontrol penghentian klaster EMR Amazon](emr-plan-termination.md). Anda dapat mengakhiri klaster dalam status `STARTING`, `RUNNING`, atau `WAITING`. Klaster dalam status `WAITING` harus diakhiri atau ia akan berjalan selamanya, sehingga menimbulkan biaya ke akun Anda. Anda dapat mengakhiri sebuah klaster yang gagal untuk meninggalkan status `STARTING` atau tidak dapat menyelesaikan suatu langkah. 

Jika Anda ingin mengakhiri klaster yang memiliki perlindungan terminasi yang disetel di atasnya, Anda harus menonaktifkan perlindungan terminasi sebelum Anda dapat mengakhiri klaster. Cluster dapat dihentikan menggunakan konsol, the AWS CLI, atau secara terprogram menggunakan API. `TerminateJobFlows`

Bergantung pada konfigurasi cluster, dibutuhkan waktu 5 hingga 20 menit bagi cluster untuk sepenuhnya menghentikan dan melepaskan sumber daya yang dialokasikan, seperti instans EC2.

**catatan**  
Anda tidak dapat me-restart klaster yang diakhiri, tetapi Anda dapat mengkloning klaster yang diakhiri untuk menggunakan kembali konfigurasinya untuk klaster baru. Untuk informasi selengkapnya, lihat [Kloning kluster EMR Amazon menggunakan konsol](clone-console.md).

**penting**  
Amazon EMR menggunakan [peran layanan EMR Amazon dan `AWSServiceRoleForEMRCleanup` peran](emr-iam-role.md) untuk membersihkan sumber daya klaster di akun yang tidak lagi Anda gunakan, seperti instans Amazon EC2. Anda harus menyertakan tindakan agar kebijakan peran menghapus atau menghentikan sumber daya. Jika tidak, Amazon EMR tidak dapat melakukan tindakan pembersihan ini, dan Anda mungkin dikenakan biaya untuk sumber daya yang tidak digunakan yang tetap ada di klaster.

## Mengakhiri cluster dengan konsol
<a name="emr-dev-terminate-job-flow-console"></a>

Anda dapat mengakhiri satu atau lebih klaster menggunakan konsol Amazon EMR. Langkah-langkah untuk mengakhiri sebuah klaster di konsol bervariasi tergantung pada apakah proteksi pengakhiran aktif atau tidak. Untuk mengakhiri klaster yang diproteksi, Anda harus terlebih dahulu menonaktifkan proteksi pengakhiran. 

------
#### [ Console ]

**Untuk mengakhiri cluster dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Pilih **Cluster**, lalu pilih cluster yang ingin Anda akhiri.

1. Di bawah menu tarik-turun **Tindakan**, pilih **Terminate cluster** untuk membuka prompt Kluster **Terminate**.

1. Pada prompt, pilih **Hentikan.** Tergantung pada konfigurasi cluster, penghentian mungkin memakan waktu 5 hingga 10 menit. Untuk informasi selengkapnya tentang cara menggunakan kluster EMR Amazon, lihat. [Mengakhiri klaster EMR Amazon di status awal, berjalan, atau menunggu](#UsingEMR_TerminateJobFlow)

------

## Mengakhiri cluster dengan AWS CLI
<a name="emr-dev-terminate-job-flow-cli"></a>

**Untuk mengakhiri cluster yang tidak dilindungi menggunakan AWS CLI**

Untuk mengakhiri klaster yang tidak dilindungi menggunakan AWS CLI, gunakan `terminate-clusters` subperintah dengan parameter --cluster-ids. 
+ Ketik perintah berikut untuk mengakhiri satu cluster dan ganti *j-3KVXXXXXXX7UG* dengan ID cluster Anda.

  ```
  1. aws emr terminate-clusters --cluster-ids j-3KVXXXXXXX7UG
  ```

  Untuk mengakhiri beberapa cluster, ketik perintah berikut dan ganti *j-3KVXXXXXXX7UG* dan *j-WJ2XXXXXX8EU* dengan cluster Anda. IDs

  ```
  1. aws emr terminate-clusters --cluster-ids j-3KVXXXXXXX7UG j-WJ2XXXXXX8EU
  ```

  Untuk informasi selengkapnya tentang penggunaan perintah EMR Amazon di AWS CLI, lihat. [https://docs.aws.amazon.com/cli/latest/reference/emr](https://docs.aws.amazon.com/cli/latest/reference/emr)

**Untuk mengakhiri cluster yang dilindungi menggunakan AWS CLI**

Untuk mengakhiri cluster yang dilindungi menggunakan AWS CLI, pertama nonaktifkan perlindungan terminasi menggunakan `modify-cluster-attributes` subperintah dengan parameter. `--no-termination-protected` Kemudian gunakan subperintah `terminate-clusters` dengan parameter `--cluster-ids` untuk mengakhirinya. 

1. Ketik perintah berikut untuk menonaktifkan perlindungan terminasi dan ganti *j-3KVTXXXXXX7UG* dengan ID cluster Anda.

   ```
   1. aws emr modify-cluster-attributes --cluster-id j-3KVTXXXXXX7UG --no-termination-protected
   ```

1. Untuk mengakhiri cluster, ketik perintah berikut dan ganti *j-3KVXXXXXXX7UG* dengan ID cluster Anda.

   ```
   1. aws emr terminate-clusters --cluster-ids j-3KVXXXXXXX7UG
   ```

   Untuk mengakhiri beberapa cluster, ketik perintah berikut dan ganti *j-3KVXXXXXXX7UG* dan *j-WJ2XXXXXX8EU* dengan cluster Anda. IDs

   ```
   1. aws emr terminate-clusters --cluster-ids j-3KVXXXXXXX7UG j-WJ2XXXXXX8EU
   ```

   Untuk informasi selengkapnya tentang penggunaan perintah EMR Amazon di AWS CLI, lihat. [https://docs.aws.amazon.com/cli/latest/reference/emr](https://docs.aws.amazon.com/cli/latest/reference/emr)

## Mengakhiri cluster dengan API
<a name="emr-dev-terminate-job-flow-api"></a>

Operasi `TerminateJobFlows` menghentikan pengolahan langkah, mengunggah setiap data log dari Amazon EC2 ke Amazon S3 (jika dikonfigurasi), dan mengakhiri klaster Hadoop. Sebuah klaster juga berakhir secara otomatis jika Anda mengatur `KeepJobAliveWhenNoSteps` ke `False` dalam permintaan `RunJobFlows`.

Anda dapat menggunakan tindakan ini untuk mengakhiri salah satu cluster atau daftar cluster menurut klaster mereka. IDs

Untuk informasi selengkapnya tentang parameter input yang unik`TerminateJobFlows`, lihat [ TerminateJobFlows](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_TerminateJobFlows.html). Untuk informasi selengkapnya tentang parameter generik dalam permintaan, lihat [Parameter permintaan umum](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/CommonParameters.html).

# Kloning kluster EMR Amazon menggunakan konsol
<a name="clone-console"></a>

Anda dapat menggunakan konsol Amazon EMR untuk meng-klon sebuah klaster, yang membuat salinan konfigurasi klaster asli untuk digunakan sebagai dasar untuk klaster baru. 

------
#### [ Console ]

**Untuk mengkloning cluster dengan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol EMR Amazon di https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. **Di bawah **EMR pada EC2** di panel navigasi kiri, pilih Clusters.**

1.  *Untuk mengkloning cluster dari daftar cluster*

   1. Gunakan opsi pencarian dan filter untuk menemukan cluster yang ingin Anda kloning dalam tampilan daftar.

   1. Pilih kotak centang di sebelah kiri baris untuk cluster yang ingin Anda kloning. 

   1. Opsi **Clone** sekarang akan tersedia di bagian atas tampilan daftar. Pilih **Clone** untuk memulai proses kloning. Jika klaster memiliki langkah-langkah yang dikonfigurasi, pilih **Sertakan langkah** dan **Lanjutkan** jika Anda ingin mengkloning langkah-langkah bersama dengan konfigurasi cluster lainnya.

   1. Tinjau pengaturan untuk cluster baru yang telah disalin dari cluster kloning. Sesuaikan pengaturan jika diperlukan. Bila Anda puas dengan konfigurasi cluster baru, pilih **Create cluster** untuk meluncurkan cluster baru.

1. *Untuk mengkloning cluster dari halaman detail cluster*

   1. Untuk menavigasi ke halaman detail klaster yang ingin Anda kloning, pilih **ID Cluster-nya** dari tampilan daftar cluster.

   1. Di bagian atas halaman detail cluster, pilih **Clone cluster** dari menu **Actions** untuk memulai proses kloning. Jika klaster memiliki langkah-langkah yang dikonfigurasi, pilih **Sertakan langkah** dan **Lanjutkan** jika Anda ingin mengkloning langkah-langkah bersama dengan konfigurasi cluster lainnya.

   1. Tinjau pengaturan untuk cluster baru yang telah disalin dari cluster kloning. Sesuaikan pengaturan jika diperlukan. Bila Anda puas dengan konfigurasi cluster baru, pilih **Create cluster** untuk meluncurkan cluster baru.

------

# Otomatiskan cluster EMR Amazon berulang dengan AWS Data Pipeline
<a name="emr-manage-recurring"></a>

**catatan**  
AWS Data Pipeline tidak lagi tersedia untuk pelanggan baru. Pelanggan AWS Data Pipeline yang sudah ada dapat terus menggunakan layanan seperti biasa.

 AWS Data Pipeline adalah layanan yang mengotomatiskan pergerakan dan transformasi data. Anda dapat menggunakannya untuk menjadwalkan memindahkan data input ke Amazon S3 dan menjadwalkan peluncuran klaster untuk memproses data tersebut. Sebagai contoh, pertimbangkan kasus ketika Anda memiliki server web yang merekam log lalu lintas. Jika Anda ingin menjalankan cluster mingguan untuk menganalisis data lalu lintas, Anda dapat menggunakannya AWS Data Pipeline untuk menjadwalkan cluster tersebut. AWS Data Pipeline adalah alur kerja berbasis data, sehingga satu tugas (meluncurkan cluster) dapat bergantung pada tugas lain (memindahkan data input ke Amazon S3). Ini juga memiliki fungsi coba lagi yang tangguh. 

 Untuk informasi selengkapnya AWS Data Pipeline, lihat [Panduan AWS Data Pipeline Pengembang](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/what-is-datapipeline.html), terutama tutorial tentang Amazon EMR: 
+  [Tutorial: Luncurkan alur kerja EMR Amazon](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-launch-emr-jobflow.html) 
+  [Memulai: Memproses log web dengan AWS Data Pipeline, Amazon EMR, dan Hive](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-process-logs.html) 
+  [Tutorial: Amazon DynamoDB impor dan ekspor menggunakan AWS Data Pipeline](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-importexport-ddb.html) 