Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kelola failover Multi-AZ untuk cluster EMR dengan menggunakan Application Recovery Controller
Aarti Rajput, Ashish Bhatt, Neeti Mishra, dan Nidhi Sharma, Amazon Web Services
Ringkasan
Pola ini menawarkan strategi pemulihan bencana yang efisien untuk beban kerja EMR Amazon untuk membantu memastikan ketersediaan tinggi dan konsistensi data di beberapa Availability Zone dalam satu. Wilayah AWS Desainnya menggunakan Amazon Application Recovery Controller dan Application Load Balancer untuk mengelola operasi failover dan distribusi lalu lintas untuk cluster EMR berbasis Apache Spark.
Dalam kondisi standar, Availability Zone utama menghosting cluster EMR aktif dan aplikasi dengan fungsionalitas penuh read/write . Jika Availability Zone gagal secara tak terduga, lalu lintas secara otomatis dialihkan ke Availability Zone sekunder, tempat klaster EMR baru diluncurkan. Kedua Availability Zone mengakses bucket Amazon Simple Storage Service (Amazon S3) bersama melalui titik akhir gateway khusus, yang memastikan pengelolaan data yang konsisten. Pendekatan ini meminimalkan waktu henti dan memungkinkan pemulihan cepat untuk beban kerja data besar yang penting selama kegagalan Availability Zone. Solusi ini berguna dalam industri seperti keuangan atau ritel, di mana analitik real-time sangat penting.
Prasyarat dan batasan
Prasyarat
Aktif Akun AWS
Amazon EMR di Amazon Elastic Compute Cloud (Amazon) EC2
Akses dari node master cluster EMR ke Amazon S3.
AWS Infrastruktur multi-AZ
Batasan
Beberapa Layanan AWS tidak tersedia di semua Wilayah AWS. Untuk ketersediaan Wilayah, lihat Layanan AWS berdasarkan Wilayah
. Untuk titik akhir tertentu, lihat halaman titik akhir dan kuota Layanan, dan pilih tautan untuk layanan.
Versi produk
Arsitektur
Tumpukan teknologi target
Kluster EMR Amazon
Pengontrol Pemulihan Aplikasi Amazon
Penyeimbang Beban Aplikasi
Bucket Amazon S3
Titik akhir gateway untuk Amazon S3
Arsitektur target

Arsitektur ini memberikan ketahanan aplikasi dengan menggunakan beberapa Availability Zones dan menerapkan mekanisme pemulihan otomatis melalui Application Recovery Controller.
Application Load Balancer merutekan lalu lintas ke lingkungan EMR Amazon yang aktif, yang biasanya merupakan cluster EMR utama di Availability Zone utama.
Cluster EMR aktif memproses permintaan aplikasi dan terhubung ke Amazon S3 melalui titik akhir gateway Amazon S3 khusus untuk operasi baca dan tulis.
Amazon S3 berfungsi sebagai repositori data pusat dan berpotensi digunakan sebagai pos pemeriksaan atau sebagai penyimpanan bersama antara kluster EMR. Cluster EMR mempertahankan konsistensi data ketika mereka menulis langsung ke Amazon S3 melalui protokol
s3://dan EMR File System (EMRFS).Application Recovery Controller terus memantau kesehatan Availability Zone primer dan secara otomatis mengelola operasi failover bila diperlukan.
Jika Application Recovery Controller mendeteksi kegagalan dalam klaster EMR primer, dibutuhkan tindakan berikut:
Memulai proses failover ke cluster EMR sekunder di Availability Zone 2.
Memperbarui konfigurasi routing untuk mengarahkan lalu lintas ke cluster sekunder.
Alat
Layanan AWS
Amazon Application Recovery Controller membantu Anda mengelola dan mengoordinasikan pemulihan aplikasi Anda di seluruh Wilayah AWS dan Availability Zone. Layanan ini menyederhanakan proses dan meningkatkan keandalan pemulihan aplikasi dengan mengurangi langkah-langkah manual yang diperlukan oleh alat dan proses tradisional.
Application Load Balancer beroperasi pada layer aplikasi, yang merupakan lapisan ketujuh dari model Open Systems Interconnection (OSI). Ini mendistribusikan lalu lintas aplikasi yang masuk di beberapa target, seperti EC2 instance, di beberapa Availability Zone. Hal ini akan meningkatkan ketersediaan aplikasi Anda.
AWS Command Line Interface (AWS CLI) adalah alat open source yang membantu Anda berinteraksi Layanan AWS melalui perintah di shell baris perintah Anda.
Amazon EMR adalah platform data besar yang menyediakan pemrosesan data, analisis interaktif, dan pembelajaran mesin untuk kerangka kerja open source seperti Apache Spark, Apache Hive, dan Presto.
AWS Identity and Access Management (IAM) membantu Anda mengelola akses ke AWS sumber daya dengan aman dengan mengontrol siapa yang diautentikasi dan diberi wewenang untuk menggunakannya.
Amazon S3 menyediakan antarmuka layanan web sederhana yang dapat Anda gunakan untuk menyimpan dan mengambil sejumlah data, kapan saja, dari mana saja. Dengan menggunakan layanan ini, Anda dapat dengan mudah membangun aplikasi yang menggunakan penyimpanan asli cloud.
Titik akhir Gateway untuk Amazon S3 adalah gateway yang Anda tentukan dalam tabel rute untuk mengakses Amazon S3 dari virtual private cloud (VPC) melalui jaringan. AWS
Praktik terbaik
Ikuti praktik AWS terbaik untuk keamanan, identitas, dan kepatuhan
untuk memastikan arsitektur yang kuat dan aman. Sejajarkan arsitektur dengan AWS Well-Architected
Framework. Gunakan Amazon S3 Access Grants untuk mengelola akses dari cluster EMR berbasis Spark ke Amazon S3. Untuk detailnya, lihat posting blog Gunakan Amazon EMR dengan Hibah Akses S3 untuk Menskalakan akses Spark ke
Amazon S3.
Epik
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Masuk ke AWS Management Console. | Masuk ke AWS Management Console | AWS DevOps |
Konfigurasikan AWS CLI. | Instal AWS CLI atau perbarui ke versi terbaru sehingga Anda dapat berinteraksi dengan Layanan AWS di AWS Management Console. Untuk instruksi, lihat AWS CLI dokumentasi. | AWS DevOps |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Buat ember S3. |
| AWS DevOps |
Buat cluster EMR. |
| AWS DevOps |
Konfigurasikan pengaturan keamanan untuk cluster EMR. |
| AWS DevOps |
Connect ke cluster EMR. | Connect ke master node dari EMR cluster melalui SSH dengan menggunakan key pair yang disediakan. Pastikan bahwa file key pair hadir di direktori yang sama dengan aplikasi Anda. Jalankan perintah berikut untuk mengatur izin yang benar untuk key pair dan untuk membuat koneksi SSH:
| AWS DevOps |
Menyebarkan aplikasi Spark. | Setelah Anda membuat koneksi SSH, Anda akan berada di konsol Hadoop.
| AWS DevOps |
Pantau aplikasi Spark. |
| AWS DevOps |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Buat Application Load Balancer. | Siapkan grup target yang merutekan lalu lintas antara node master EMR Amazon yang digunakan di dua Availability Zone dalam file. Wilayah AWS Untuk petunjuk, lihat Membuat grup target untuk Application Load Balancer Anda dalam dokumentasi Elastic Load Balancing. | AWS DevOps |
Konfigurasikan pergeseran zona di Application Recovery Controller. | Pada langkah ini, Anda akan menggunakan fitur zonal shift di Application Recovery Controller untuk mengalihkan lalu lintas ke Availability Zone lain.
Untuk menggunakan AWS CLI, lihat Contoh penggunaan AWS CLI dengan pergeseran zona dalam dokumentasi Application Recovery Controller. | AWS DevOps |
Verifikasi konfigurasi dan kemajuan pergeseran zona. |
| AWS DevOps |
Sumber daya terkait
AWS CLI perintah:
Mengonfigurasi jenis instans klaster EMR Amazon dan praktik terbaik untuk instans Spot (dokumentasi EMR Amazon)
Praktik terbaik keamanan dalam IAM (dokumentasi IAM)
Gunakan profil instance (dokumentasi IAM)
Gunakan zonal shift dan zonal autoshift untuk memulihkan aplikasi di ARC (dokumentasi Application Recovery Controller)