All Products
Search
Document Center

E-MapReduce:FAQ

Last Updated:Jul 18, 2026

Pertanyaan umum mengenai stabilitas layanan ZooKeeper, batas koneksi, dan migrasi direktori data.

Ketidakstabilan layanan atau restart tak terduga

Penyebab paling umum ketidakstabilan adalah jumlah znode yang tinggi atau ukuran snapshot yang besar. Karena ZooKeeper menyimpan semua znode di memori dan menyinkronkan data di seluruh node, jumlah znode atau snapshot yang berlebihan akan menurunkan stabilitas. Sebagai praktik terbaik, pertahankan jumlah znode di bawah 100.000 dan ukuran snapshot di bawah 800 MB.
  • Anda dapat melihat jumlah znode untuk kluster ZooKeeper Anda pada tab Monitoring di Konsol E-MapReduce.
  • Periksa ukuran snapshot.
    1. Pada tab Configure layanan ZooKeeper, temukan nilai parameter dataDir untuk mendapatkan direktori data ZooKeeper.
    2. Jalankan perintah berikut untuk memeriksa ukuran snapshot di direktori data ZooKeeper.
      ls -lrt /mnt/disk1/zookeeper/data/version-2/snapshot*

      Jika jumlah znode atau ukuran snapshot terlalu besar, selidiki distribusi znode untuk mencegah aplikasi terkait menggunakan ZooKeeper secara berlebihan.

Migrasi direktori data

Jika Anda perlu mengubah direktori data ZooKeeper karena ruang disk tidak mencukupi atau performa disk buruk, lakukan migrasi direktori pada setiap node secara individual. Pendekatan ini menghindari penghentian seluruh layanan ZooKeeper.
Catatan Sebagai contoh, prosedur ini mengubah direktori data dari /mnt/disk1/zookeeper/data ke /mnt/disk2/zookeeper/data. Pada kluster contoh ini, node master-1-2 adalah leader, sedangkan node master-1-1 dan master-1-3 adalah follower. Lakukan migrasi pada follower terlebih dahulu, kemudian pada leader.
  1. Ubah direktori data dan simpan konfigurasi.
    1. Pada tab Configure layanan ZooKeeper, cari parameter dataDir dan ubah nilainya menjadi direktori baru, /mnt/disk2/zookeeper/data.
    2. Klik Save.
    3. Pada kotak dialog yang muncul, masukkan Execution Reason dan klik Save.
  2. Terapkan konfigurasi.
    1. Pada tab Configure layanan ZooKeeper, klik Deploy Client Configuration.
    2. Pada kotak dialog yang muncul, masukkan Execution Reason dan klik OK.
    3. Pada kotak dialog Confirm, klik OK.
  3. Opsional: Verifikasi direktori data.
    1. Hubungkan ke kluster melalui SSH. Untuk informasi lebih lanjut, lihat Connect to a cluster.
    2. Jalankan perintah berikut untuk melihat nilai parameter dataDir dalam file konfigurasi zoo.cfg.
       cat /etc/emr/zookeeper-conf/zoo.cfg

      Output menunjukkan bahwa direktori data telah diperbarui.

  4. Hentikan node master-1-1.
    1. Pada tab Status, klik STOP di kolom Actions untuk node master-1-1.
    2. Pada kotak dialog Execute Cluster Action, masukkan Execution Reason dan klik OK.
    3. Pada kotak dialog Confirm, klik OK.
  5. Lakukan migrasi direktori.
    1. Hubungkan ke kluster melalui SSH. Untuk informasi lebih lanjut, lihat Connect to a cluster.
    2. Jalankan perintah berikut pada node master-1-1 untuk melakukan migrasi direktori dan mengatur izin yang diperlukan.
      sudo rm -rf /mnt/disk2/zookeeper && sudo cp -rf /mnt/disk1/zookeeper /mnt/disk2/zookeeper && sudo chown hadoop:hadoop -R /mnt/disk2/zookeeper
  6. Jalankan kembali node master-1-1.
    1. Pada tab Status, klik START di kolom Actions untuk ZookeeperServer.
    2. Pada kotak dialog yang muncul, masukkan Execution Reason dan klik OK.
    3. Pada kotak dialog Confirm, klik OK.

      Segarkan halaman hingga Health Status node master-1-1 berubah menjadi Good.

  7. Login ke node master-1-3 dan ulangi Langkah 4 hingga Langkah 6.
  8. Login ke node master-1-2 dan ulangi Langkah 4 hingga Langkah 6.
    Migrasi selesai ketika semua node dalam kondisi sehat.
    Catatan Node master-1-2 awalnya merupakan leader. Setelah Anda menghentikannya, node tersebut menjadi follower, dan salah satu dari dua node lainnya dipilih sebagai leader baru.