All Products
Search
Document Center

E-MapReduce:Gunakan EMR-CLI untuk menerapkan lingkungan gateway kustom

Last Updated:Jan 07, 2026

Gateway mengirimkan job ke kluster komputasi dan menyediakan isolasi keamanan. E-MapReduce menyediakan alat bernama EMR-CLI untuk menyederhanakan penerapan gateway. Alat ini membuat instance Alibaba Cloud ECS dan menerapkan lingkungan gateway pada instance tersebut. Topik ini menjelaskan cara menerapkan lingkungan gateway setelah Anda membuat kluster DataLake, Dataflow, atau OLAP.

Tiga mode penerapan Gateway dan panduan pemilihan

Gateway merupakan lapisan isolasi pengiriman job EMR yang memberikan manfaat inti berikut:

  • Pemisahan beban kerja client dari layanan inti kluster

    Gateway memisahkan operasi client, seperti spark-submit, hive -f, dan yarn application, dari node master atau Resource Manager.

  • Menerapkan isolasi lingkungan multi-tenant

    Gateway memungkinkan Anda mengonfigurasi lingkungan runtime independen untuk pengguna atau departemen yang berbeda.

  • Meningkatkan stabilitas dan kemudahan pemeliharaan kluster

    Gateway mencegah masalah seperti pengiriman berfrekuensi tinggi, debugging skrip, konflik lingkungan, atau resource contention memengaruhi layanan kritis seperti YARN ResourceManager dan Hadoop Distributed File System (HDFS) NameNode.

EMR menyediakan tiga mode Gateway. Setiap mode cocok untuk jenis kluster, versi, dan kebutuhan arsitektur yang berbeda.

Jenis

Jenis kluster yang didukung dan persyaratan versi

Metode penerapan dan fitur utama

Skenario dan rekomendasi

Gateway node group
(Direkomendasikan)

Hanya kluster berikut yang didukung:

  • Kluster DataLake dan DataFlow: EMR-5.10.1 dan versi lebih baru

  • Kluster Custom: EMR-5.17.1 dan versi lebih baru

• Tambahkan node group langsung ke kluster yang sudah ada. Untuk informasi selengkapnya, lihat Manage node groups.
• Secara otomatis menyinkronkan konfigurasi client dari kluster terkait.

Direkomendasikan: Paling cocok untuk menambahkan titik masuk pengiriman yang aman dan terisolasi secara cepat ke kluster DataLake atau DataFlow yang sudah ada. Opsi ini menawarkan biaya O&M terendah dan memastikan konsistensi konfigurasi yang tinggi.

Gateway environment

Mendukung kluster DataLake, DataFlow, Custom, dan OLAP

• Terapkan secara manual pada instance ECS. Untuk informasi selengkapnya, lihat Use the EMR command-line interface (CLI) to customize a Gateway environment deployment.
• Menyediakan sistem file dan lingkungan runtime yang sepenuhnya independen. Anda harus menyinkronkan konfigurasi client dari kluster terkait secara manual.

Alternatif standar ketika kluster tidak mendukung Gateway node groups.

Gateway cluster

Hanya mendukung kluster Hadoop dan Kafka

  • Buat kluster EMR terpisah yang hanya berisi node Gateway. Untuk informasi selengkapnya, lihat Create a Gateway cluster.

  • Secara otomatis menyinkronkan konfigurasi client dari kluster terkait.

Cocok untuk kluster Hadoop dan Kafka.

Prasyarat

Kluster komputasi DataLake, Dataflow, OLAP, atau Custom telah dibuat di E-MapReduce, dan kluster berada dalam status Running. Untuk informasi selengkapnya tentang cara membuat kluster, lihat Create a cluster.

Batasan

  • Jenis kluster: Metode ini hanya untuk menerapkan lingkungan gateway pada kluster DataLake, Dataflow, OLAP, atau Custom. Jika jenis dan versi kluster Anda kompatibel, kami merekomendasikan penggunaan Gateway node group.

    Untuk informasi selengkapnya tentang cara menerapkan lingkungan gateway untuk kluster Hadoop dan Kafka yang sudah ada, lihat Create a gateway cluster.

    Catatan

    Anda hanya dapat membuat kluster Hadoop atau Kafka jika Akun Alibaba Cloud Anda telah membuat kluster tersebut sebelum pukul 17.00 (UTC+8) pada 19 Desember 2022. Jika akun Anda belum pernah membuat jenis kluster ini sebelum waktu tersebut, Anda tidak dapat lagi membuatnya.

  • Pemasangan overwrite: EMR-CLI menerapkan client gateway dalam mode overwrite. Jika Anda menerapkan ulang gateway pada instance ECS yang sudah memiliki gateway, client baru akan menimpa client yang ada di direktori yang sama.

  • Penerapan independen: Jangan gunakan instance ECS yang sudah ada di kluster EMR, seperti node Master, Core, atau Task, sebagai mesin gateway. Praktik ini mencegah lingkungan client mengganggu operasi normal layanan kluster.

  • Layanan yang didukung: Anda dapat menggunakan metode ini untuk menerapkan client untuk layanan berikut: HDFS, YARN, HBase, HIVE, SPARK2, SPARK3, JINDOSDK, FLINK, SQOOP, IMPALA, PRESTO, HUDI, ICEBERG, TEZ, dan DELTALAKE.

Terapkan gateway untuk pertama kali

  1. Buat instance ECS di Konsol ECS. Untuk informasi selengkapnya, lihat Create an instance using the wizard.

    Catatan

    Instance ECS yang dibuat tidak memerlukan akses jaringan publik.

    Pengaturan parameter yang direkomendasikan adalah sebagai berikut.

    Parameter

    Deskripsi

    Region dan zona

    Harus sama dengan region dan zona kluster EMR.

    Image

    Harus sesuai dengan sistem instance EMR.

    Disk sistem

    Kami merekomendasikan penggunaan enterprise SSD (ESSD) minimal 60 GiB.

    Jaringan

    Harus sama dengan VPC kluster EMR.

    Security group

    Harus sama dengan security group dari instance group Master kluster EMR. Hal ini memastikan konektivitas jaringan antara instance ECS dan kluster EMR.

  2. Buat peran RAM ECS khusus untuk EMR Gateway.

    1. Masuk ke RAM console sebagai administrator RAM.

    2. Pada panel navigasi kiri, pilih Identity Management > Roles.

    3. Pada halaman Roles, klik Create Role.

    4. Pada panel Create Role, atur Trusted Entity Type ke Alibaba Cloud Service dan Trusted Service ke ECS. Lalu, klik OK.

    5. Masukkan Role Name, misalnya ECSForEMRGatewayRole, lalu klik OK.

  3. Berikan izin kepada peran RAM.

    1. Pada tab Permission Management, klik Grant Permission.

    2. Pada panel Grant Permission, pilih AliyunEMRFullAccess, AliyunOSSFullAccess, dan AliyunDLFFullAccess dari System Policy, lalu klik OK.

      image.png

    3. Klik Close.

  4. Berikan peran RAM kepada instance ECS.

    1. Masuk ke ECS console.

    2. Pada panel navigasi kiri, pilih Instances & Images > Instances.

    3. Pada bilah navigasi atas, pilih region.

    4. Temukan instance ECS baru dan pilih image > Instance Settings > Grant/Revoke RAM Role.

    5. Pada kotak dialog yang muncul, pilih peran ECSForEMRGatewayRole dan klik OK.

  5. Hubungkan ke instance ECS. Untuk informasi selengkapnya, lihat Connect to an ECS instance.

  6. Jalankan perintah berikut untuk menginstal EMR-CLI.

    regionId=`curl http://100.100.100.200/latest/meta-data/region-id`; curl https://ecm-repo-${regionId}.oss-${regionId}-internal.aliyuncs.com/emrcli/emrcli.sh -o /tmp/emrcli.sh; chmod 755 /tmp/emrcli.sh; sh /tmp/emrcli.sh install ${regionId}

    Jika instalasi berhasil, informasi berikut dikembalikan.

    install emrcli success
  7. Jalankan perintah berikut untuk menerapkan client EMR Gateway.

    emrcli gateway deploy \
      --clusterId <ClusterId> \
      --appNames <ApplicationName>

    Ubah parameter berikut sesuai kebutuhan.

    Parameter

    Wajib

    Deskripsi

    clusterId

    Ya

    ID kluster yang dibuat di EMR.

    appNames

    Tidak

    Nama aplikasi. Untuk menentukan beberapa aplikasi, pisahkan dengan koma (,), contohnya HDFS,YARN.

    Jika Anda tidak menentukan parameter ini, client untuk semua aplikasi yang didukung di kluster, seperti Hive dan HDFS, akan diterapkan secara default.

    Jika penerapan berhasil, informasi berikut dikembalikan.

    deployGateway success
    Penting

    Setelah gateway diinstal, variabel lingkungan sistem JAVA_HOME diubah menjadi /usr/lib/jvm/java-1.8.0. Anda dapat mengubah variabel ini di file /etc/profile.d/emr_env.sh. Namun, perubahan ini dapat memengaruhi fitur gateway. Lakukan dengan hati-hati.

  8. Masuk kembali ke instance ECS agar perubahan pada variabel lingkungan sistem berlaku.

  9. Opsional: Konfigurasikan resolusi nama domain untuk node gateway.

    Penting

    Langkah ini wajib jika gateway mencakup layanan Spark.

    1. Tambahkan zona. Untuk informasi selengkapnya, lihat Add a built-in authoritative domain name.

    2. Tambahkan Rekaman DNS. Untuk informasi selengkapnya, lihat Add a DNS record.

      Parameter dijelaskan dalam tabel berikut.

      Parameter

      Deskripsi

      Record Type

      Gunakan nilai default A.

      Host Record

      Masukkan hostname mesin gateway. Contohnya, iZ2zea8r0aht2vzbqci****.

      Anda dapat menjalankan perintah hostname untuk mendapatkan hostname.

      Record Value

      Masukkan Alamat IP pribadi mesin gateway.

      Anda dapat melihatnya di halaman manajemen node.

      TTL Value

      Gunakan nilai default.

Kelola lingkungan gateway

Setelah Anda membuat gateway, jika layanan baru ditambahkan ke kluster komputasi terkait atau konfigurasi layanannya diubah, Anda dapat menggunakan perintah berikut untuk memperbarui komponen client atau menyinkronkan konfigurasi terbaru.

Perbarui komponen client

Jika layanan baru, seperti Flink, ditambahkan ke kluster EMR, Anda dapat menginstal client yang sesuai secara inkremental pada node gateway. Perintah deploy akan menimpa konfigurasi aplikasi yang sudah diinstal dan menginstal aplikasi baru secara inkremental.

# Contoh: Tambahkan client FLINK ke lingkungan yang sudah memiliki HDFS dan YARN.
emrcli gateway deploy \
  --clusterId <ClusterId> \
  --appNames HDFS,YARN,FLINK

Jika pembaruan berhasil, informasi berikut dikembalikan.

deployGateway success

Sinkronkan konfigurasi yang dimodifikasi dari kluster EMR

Jika konfigurasi layanan di kluster EMR diubah, misalnya Anda memodifikasi core-site.xml di Konsol EMR, Anda harus menyinkronkan konfigurasi baru tersebut ke node gateway secara manual.

Penting

Menyinkronkan konfigurasi akan menimpa konfigurasi yang ada di gateway. Lakukan dengan hati-hati.

# Jalankan perintah sinkronisasi.
emrcli gateway refreshConfigs \
  --clusterId <ClusterId> \
  --appNames <ApplicationName> # Opsional. Tentukan aplikasi yang akan disinkronkan.

Jika sinkronisasi berhasil, informasi berikut dikembalikan:

refreshConfiguration success

Kelola EMR-CLI

Lihat versi EMR-CLI

Anda dapat menjalankan perintah berikut untuk melihat informasi versi EMR-CLI.

emrcli version

Informasi serupa berikut dikembalikan.

2.0.0

Upgrade EMR-CLI

Untuk melakukan upgrade EMR-CLI ke versi terbaru secara otomatis, ulangi langkah instalasi yang dijelaskan di bagian Deploy a gateway for the first time.

FAQ

Q: Bagaimana cara mengganti kluster komputasi?

A: Untuk mengganti kluster komputasi, lakukan langkah-langkah berikut:

  1. Gunakan perintah -mv untuk membackup file dari kluster lama (kluster yang digunakan sebelum pergantian) secara manual guna mencegah kehilangan data. File tersebut mencakup direktori /opt/apps, direktori /etc/taihao-apps, dan file /etc/profile.d/yarn.sh.

  2. Untuk menerapkan ulang kluster komputasi, lakukan kembali operasi dalam topik ini.