全部产品
Search
文档中心

E-MapReduce:Aktifkan otorisasi HDFS

更新时间:Jul 02, 2025

Setelah otorisasi Hadoop Distributed File System (HDFS) diaktifkan, hanya pengguna dengan izin yang sesuai yang dapat mengakses HDFS dan melakukan operasi seperti membaca data serta membuat folder. Topik ini menjelaskan cara mengaktifkan otorisasi HDFS.

Informasi latar belakang

Hadoop menyediakan mode berikut untuk menentukan identitas pengguna:

  • Mode Sederhana: Identitas pengguna ditentukan oleh sistem operasi klien yang terhubung ke HDFS. Jika klien menggunakan sistem operasi mirip UNIX, perintah whoami dijalankan untuk menampilkan nama pengguna logon.

  • Mode Kerberos: Identitas pengguna klien ditentukan oleh kredensial Kerberos-nya.

    Anda dapat mengaktifkan Otentikasi Kerberos saat membuat kluster E-MapReduce (EMR). Untuk informasi lebih lanjut tentang otentikasi Kerberos, lihat Kerberos.

Prasyarat

Kluster EMR telah dibuat. Untuk informasi lebih lanjut, lihat Buat Kluster.

Prosedur

Catatan
  • Untuk kluster yang diterapkan dalam mode Kerberos, izin HDFS secara otomatis ditentukan (dengan umask disetel ke 027). Anda tidak perlu mengonfigurasi otorisasi HDFS atau memulai ulang layanan HDFS.

  • Untuk kluster yang tidak diterapkan dalam mode Kerberos, Anda harus melakukan langkah-langkah berikut untuk mengonfigurasi otorisasi HDFS dan memulai ulang layanan HDFS.

  1. Pergi ke tab Layanan.

    1. Masuk ke konsol EMR. Di panel navigasi sebelah kiri, klik EMR on ECS.

    2. Di bilah navigasi atas, pilih wilayah tempat kluster Anda berada dan pilih grup sumber daya sesuai kebutuhan bisnis Anda.

    3. Di halaman EMR on ECS, temukan kluster yang diinginkan dan klik Services di kolom Tindakan.

  2. Di tab Services, temukan layanan HDFS dan klik Configure.

  3. Di tab Configure, modifikasi parameter sesuai kebutuhan bisnis Anda.

    Parameter

    Deskripsi

    dfs.permissions.enabled

    Menentukan apakah akan mengaktifkan pemeriksaan izin. Nilai default: false.

    Untuk mengaktifkan pemeriksaan izin, atur parameter ini ke true.

    dfs.datanode.data.dir.perm

    Izin pada direktori penyimpanan lokal untuk DataNodes.

    fs.permissions.umask-mode

    Topeng izin. Ini adalah pengaturan default yang ditentukan saat Anda membuat file atau folder.

    dfs.namenode.acls.enabled

    Menentukan apakah akan mengaktifkan daftar kontrol akses (ACL). Nilai default: false. Untuk mengaktifkan ACL, atur parameter ini ke true. Kemudian, Anda dapat mengelola izin pemilik, grup pengguna, dan pengguna lainnya.

    Perintah yang digunakan untuk mengonfigurasi ACL termasuk hadoop fs -getfacl [-R] <path> dan hadoop fs -setfacl [-R] [-b |-k -m |-x <acl_spec> <path>] |[--set <acl_spec> <path>].

    dfs.permissions.superusergroup

    Nama grup superuser. Nilai default: hadoop. Semua pengguna dalam grup ini adalah superuser.

  4. Simpan modifikasi.

    1. Klik Save di bagian bawah halaman.

    2. Di kotak dialog yang muncul, konfigurasikan parameter Alasan Eksekusi dan klik Save.

  5. Mulai ulang layanan HDFS.

    1. Di sudut kanan atas halaman layanan HDFS, pilih More > Restart.

    2. Di kotak dialog yang muncul, konfigurasikan parameter Execution Reason dan klik OK.

    3. Di pesan Confirm, klik OK.

      Anda dapat mengklik Operation History di sudut kanan atas tab Layanan untuk melihat kemajuan tugas.

Contoh

  1. Masuk ke kluster Anda dalam mode SSH. Untuk informasi lebih lanjut, lihat Masuk ke Kluster.

  2. Jalankan perintah berikut untuk beralih ke pengguna emrtest yang dibuat:

    su emrtest
  3. Jalankan perintah berikut untuk menggunakan pengguna emrtest membuat direktori:

    hadoop fs -mkdir /tmp/emrtest
  4. Jalankan perintah berikut untuk melihat izin direktori yang dibuat:

    hadoop fs -ls /tmp

    Informasi serupa dengan output berikut dikembalikan:

    drwxr-x--x   - emrtest hadoop          0 2022-10-21 14:08 /tmp/emrtest
    drwxr-x--x   - hadoop  hadoop          0 2022-10-21 10:06 /tmp/hadoop-yarn
    drwx-wx-wx   - hive    hadoop          0 2022-10-21 10:13 /tmp/hive
    drwxr-x--x   - hadoop  hadoop          0 2022-10-21 10:23 /tmp/kyuubi-staging
    drwxrwxrwt   - hadoop  hadoop          0 2022-10-21 10:23 /tmp/logs                                 
  5. Jalankan perintah berikut untuk mengonfigurasi ACL untuk direktori dan memberikan Pengguna foo izin rwx:

    hadoop fs -setfacl -m user:foo:rwx /tmp/emrtest
  6. Jalankan perintah berikut untuk melihat izin direktori:

    hadoop fs -ls /tmp/

    Informasi serupa dengan output berikut dikembalikan:

    drwxrwx--x+  - emrtest hadoop          0 2022-10-21 14:08 /tmp/emrtest
    drwxr-x--x   - hadoop  hadoop          0 2022-10-21 10:06 /tmp/hadoop-yarn
    drwx-wx-wx   - hive    hadoop          0 2022-10-21 10:13 /tmp/hive
    drwxr-x--x   - hadoop  hadoop          0 2022-10-21 10:23 /tmp/kyuubi-staging
    drwxrwxrwt   - hadoop  hadoop          0 2022-10-21 10:23 /tmp/logs
    Catatan

    Jika tanda tambah (+) mengikuti izin, ACL telah dikonfigurasi. Contoh: drwxrwx--x+.

  7. Jalankan perintah berikut untuk melihat ACL:

    hadoop fs -getfacl /tmp/emrtest

    Informasi serupa dengan output berikut dikembalikan:

    # file: /tmp/emrtest
    # owner: emrtest
    # group: hadoop
    user::rwx
    user:foo:rwx
    group::r-x
    mask::rwx
    other::--x