Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan perlindungan penghentian untuk melindungi kluster EMR Amazon Anda dari penutupan yang tidak disengaja
Perlindungan terminasi melindungi klaster Anda dari penghentian yang tidak disengaja, yang dapat sangat berguna untuk klaster yang berjalan lama yang memproses beban kerja penting. Saat perlindungan pengakhiran diaktifkan pada klaster yang berjalan lama, Anda masih dapat mengakhiri klaster, tetapi Anda harus secara gamblang menghapus perlindungan pengakhiran dari klaster terlebih dahulu. Ini membantu memastikan bahwa EC2 instance tidak dimatikan karena kecelakaan atau kesalahan. Anda dapat mengaktifkan perlindungan pengakhiran saat membuat klaster, dan Anda dapat mengubah pengaturan pada klaster yang sedang berjalan.
Dengan perlindungan penghentian yang diaktifkan, tindakan TerminateJobFlows
di API Amazon EMR tidak bekerja. Pengguna tidak dapat mengakhiri klaster menggunakan API ini atau perintah terminate-clusters
dari AWS CLI. API mengembalikan kesalahan, dan CLI keluar dengan kode pengembalian bukan nol. Saat Anda menggunakan konsol EMR Amazon untuk menghentikan klaster, Anda akan diminta langkah ekstra untuk menonaktifkan perlindungan penghentian.
Awas
Perlindungan penghentian tidak menjamin bahwa data disimpan jika terjadi kesalahan manusia atau solusinya — misalnya, jika perintah reboot dikeluarkan dari baris perintah saat terhubung ke instans menggunakan SSH, jika aplikasi atau skrip yang berjalan pada instance mengeluarkan perintah reboot, atau jika API EMR Amazon atau EC2 Amazon digunakan untuk menonaktifkan perlindungan penghentian. Ini juga benar jika Anda menjalankan Amazon EMR rilis 7.1 dan lebih tinggi dan instance menjadi tidak sehat dan tidak dapat dipulihkan. Bahkan dengan perlindungan pengakhiran yang diaktifkan, data yang disimpan di penyimpanan instans, termasuk data HDFS, dapat hilang. Tulis keluaran data ke lokasi Amazon S3 dan buat strategi pencadangan yang sesuai untuk kebutuhan kelangsungan bisnis Anda.
Pengakhiran penghentian tidak memengaruhi kemampuan Anda untuk menskalakan sumber daya klaster menggunakan salah satu tindakan berikut:
-
Mengubah ukuran cluster secara manual dengan AWS Management Console atau AWS CLI. Untuk informasi selengkapnya, lihat Mengubah ukuran cluster EMR Amazon yang sedang berjalan secara manual.
-
Menghapus instance dari grup instans inti atau tugas menggunakan kebijakan penskalaan kedalam dengan penskalaan otomatis. Untuk informasi selengkapnya, lihat Menggunakan penskalaan otomatis dengan kebijakan khusus untuk grup instans di Amazon EMR.
-
Menghapus instans dari armada instans dengan mengurangi kapasitas target. Untuk informasi selengkapnya, lihat Opsi armada instans.
Perlindungan penghentian dan Amazon EC2
Setelan perlindungan penghentian di klaster EMR Amazon sesuai dengan DisableApiTermination
atribut untuk semua EC2 instans Amazon di klaster. Misalnya, jika Anda mengaktifkan perlindungan penghentian di kluster EMR, Amazon EMR secara otomatis menyetel DisableApiTermination
ke true untuk semua EC2 instance dalam kluster EMR. Hal yang sama berlaku jika Anda menonaktifkan perlindungan penghentian. Amazon EMR secara otomatis menyetel DisableApiTermination
ke false untuk semua EC2 instance dalam kluster EMR. Jika Anda menghentikan atau mengurangi klaster dari Amazon EMR dan konflik EC2 setelan EC2 Amazon untuk suatu instans, Amazon EMR memprioritaskan pengaturan EMR Amazon di DisableApiTermination
atas DisableApiStop
pengaturan dan di Amazon dan terus menghentikan EC2 instans. EC2
Misalnya, Anda dapat menggunakan EC2 konsol Amazon untuk mengaktifkan perlindungan penghentian pada EC2 instans Amazon di kluster EMR dengan perlindungan penghentian dinonaktifkan. Jika Anda menghentikan atau mengurangi skala cluster dengan konsol EMR Amazon, API EMR Amazon, AWS CLI atau Amazon EMR API, Amazon EMR akan mengganti DisableApiTermination
setelan, menyetelnya ke false, dan menghentikan instance bersama dengan instance lainnya.
Anda juga dapat menggunakan EC2 konsol Amazon untuk mengaktifkan perlindungan berhenti pada EC2 instans Amazon di kluster EMR dengan perlindungan penghentian dinonaktifkan. Jika Anda menghentikan atau mengurangi skala cluster, Amazon EMR akan DisableApiStop
disetel ke false di EC2 Amazon dan menghentikan instance bersama dengan instance lainnya.
Amazon EMR mengesampingkan DisableApiStop
pengaturan hanya jika Anda menghentikan atau menurunkan skala cluster. Saat Anda mengaktifkan atau menonaktifkan perlindungan penghentian di kluster EMR, Amazon EMR tidak mengubah disableApiStop
setelan untuk EC2 instans apa pun di kluster EMR masing-masing.
penting
Jika Anda membuat instance sebagai bagian dari kluster EMR Amazon dengan perlindungan terminasi, dan Anda menggunakan Amazon EC2 API atau AWS CLI perintah untuk memodifikasi instancefalse
, lalu EC2 API Amazon atau AWS CLI perintah menjalankan TerminateInstances
operasi, EC2 instance Amazon akan berakhir. DisableApiTermination
Perlindungan pengakhiran dan simpulYARN yang tidak sehat
Amazon EMR secara berkala memeriksa status Apache Hadoop YARN dari node yang berjalan pada instance Amazon EC2 inti dan tugas di cluster. Status kesehatan dilaporkan oleh layanan pemeriksa NodeManager kesehatanUNHEALTHY
, pengontrol instans EMR Amazon menambahkan node ke denylist dan tidak mengalokasikan kontainer YARN ke sana sampai menjadi sehat kembali. Bergantung pada status perlindungan terminasi, penggantian node yang tidak sehat, dan versi rilis Amazon EMR, Amazon EMR akan mengganti instans yang tidak sehat atau berhenti mengalokasikan pengontrol ke instans.
Perlindungan penghentian dan penghentian setelah eksekusi langkah
Saat Anda mengaktifkan penghentian setelah eksekusi langkah dan juga mengaktifkan perlindungan penghentian, Amazon EMR mengabaikan perlindungan penghentian.
Saat Anda mengirimkan langkah ke suatu klaster, Anda dapat mengatur properti ActionOnFailure
untuk menentukan apa yang terjadi jika langkah tersebut tidak dapat menyelesaikan pelaksanaan karena mengalami kesalahan. Nilai yang mungkin untuk pengaturan ini adalah TERMINATE_CLUSTER
(TERMINATE_JOB_FLOW
dengan versi yang lebih lama), CANCEL_AND_WAIT
, dan CONTINUE
. Untuk informasi selengkapnya, lihat Kirim pekerjaan ke kluster EMR Amazon.
Jika langkah gagal yang dikonfigurasi dengan ActionOnFailure
set keCANCEL_AND_WAIT
, jika penghentian setelah eksekusi langkah diaktifkan, cluster akan berakhir tanpa mengeksekusi langkah selanjutnya.
Jika langkah yang mengalami kegagalan yang dikonfigurasi dengan set ActionOnFailure
ke TERMINATE_CLUSTER
, gunakan tabel pengaturan di bawah ini untuk menentukan hasilnya.
ActionOnFailure | Pengakhiran setelah eksekusi langkah | Perlindungan pengakhiran | Hasil |
---|---|---|---|
|
Diaktifkan |
Nonaktif |
Klaster berakhir |
Diaktifkan |
Diaktifkan |
Klaster berakhir |
|
Nonaktif |
Diaktifkan |
Klaster berlanjut |
|
Nonaktif |
Nonaktif |
Klaster berakhir |
Perlindungan pengakhiran dan Instans Spot
Perlindungan penghentian EMR Amazon tidak mencegah Instans EC2 Spot Amazon berhenti ketika harga Spot naik di atas harga Spot maksimum.
Mengonfigurasi perlindungan pengakhiran saat Anda meluncurkan klaster
Anda dapat mengaktifkan atau menonaktifkan perlindungan terminasi saat meluncurkan klaster menggunakan konsol, the AWS CLI, atau API.
Untuk cluster simpul tunggal, pengaturan perlindungan terminasi default adalah sebagai berikut:
-
Meluncurkan cluster oleh Amazon EMR Console —Perlindungan Terminasi dinonaktifkan secara default.
-
Meluncurkan cluster oleh AWS CLI
aws emr create-cluster
—Termination Protection dinonaktifkan kecuali--termination-protected
ditentukan. -
Meluncurkan klaster dengan RunJobFlowperintah Amazon EMR API—Perlindungan Penghentian dinonaktifkan kecuali nilai
TerminationProtected
boolean disetel ke.true
Untuk cluster ketersediaan tinggi, pengaturan perlindungan terminasi default adalah sebagai berikut:
-
Meluncurkan cluster oleh Amazon EMR Console - Perlindungan Terminasi diaktifkan secara default.
-
Meluncurkan cluster oleh AWS CLI
aws emr create-cluster
—Termination Protection dinonaktifkan kecuali--termination-protected
ditentukan. -
Meluncurkan klaster dengan RunJobFlowperintah Amazon EMR API—Perlindungan Penghentian dinonaktifkan kecuali nilai
TerminationProtected
boolean disetel ke.true
Mengonfigurasi perlindungan pengakhiran untuk menjalankan klaster
Anda dapat mengonfigurasi perlindungan terminasi untuk cluster yang sedang berjalan dengan konsol atau file AWS CLI.