GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Install Apache Hadoop di RHEL 8 (Single Node Cluster)

Apache Hadoop adalah kerangka kerja perangkat lunak sumber terbuka gratis yang ditulis dalam Java untuk penyimpanan terdistribusi dan pemrosesan data besar menggunakan MapReduce. Ini menangani kumpulan data berukuran sangat besar dengan membaginya menjadi blok-blok besar dan mendistribusikannya ke seluruh komputer dalam sebuah cluster.

Daripada mengandalkan klaster OS standar, modul Hadoop dirancang untuk mendeteksi dan mengelola kegagalan pada lapisan aplikasi dan memberi Anda layanan yang tersedia tinggi di tingkat perangkat lunak.

Kerangka dasar Hadoop terdiri dari modul-modul berikut,

  • Hadoop Umum – Berisi kumpulan pustaka dan utilitas umum untuk mendukung modul Hadoop lainnya
  • Sistem File Terdistribusi Hadoop (HDFS) – Sistem file terdistribusi berbasis Java yang menyimpan data pada perangkat keras standar, memberikan throughput yang sangat tinggi ke aplikasi.
  • BENANG Hadoop – Mengelola sumber daya pada cluster komputasi dan menggunakannya untuk menjadwalkan aplikasi pengguna.
  • Hadoop MapReduce – Kerangka kerja untuk pemrosesan data skala besar berdasarkan model pemrograman MapReduce.

Dalam posting ini, kita akan melihat cara menginstal Apache Hadoop di RHEL 8.

Prasyarat

Beralih ke pengguna root.

su -

ATAU

sudo su -

Apache Hadoop v3.1.2 hanya mendukung Java versi 8. Jadi, instal OpenJDK 8 atau Oracle JDK 8.

Dalam demo ini, saya akan menggunakan OpenJDK 8.

yum -y install java-1.8.0-openjdk wget

Periksa versi Java.

java -versi

Keluaran:

openjdk versi "1.8.0_201"OpenJDK Runtime Environment (build 1.8.0_201-b09)OpenJDK 64-Bit Server VM (build 25.201-b09, mode campuran)

Instal Apache Hadoop di RHEL 8

Buat pengguna Hadoop

Disarankan untuk menjalankan Apache Hadoop oleh pengguna biasa. Jadi, di sini, kami akan membuat pengguna bernama hadoop dan menetapkan kata sandi untuk pengguna tersebut.

useradd -m -d /home/hadoop -s /bin/bash hadooppasswd hadoop

Sekarang, konfigurasikan ssh tanpa kata sandi ke sistem lokal dengan mengikuti langkah-langkah di bawah ini.

# su - hadoop$ ssh-keygen$ cat ~/.ssh/id_rsa.pub>> ~/.ssh/authorized_keys$ chmod 600 ~/.ssh/authorized_keys

Verifikasi komunikasi tanpa kata sandi ke sistem lokal Anda.

$ ssh 127.0.0.1

Keluaran:

Jika Anda terhubung melalui ssh untuk pertama kalinya, Anda perlu mengetik yes untuk menambahkan kunci RSA ke host yang dikenal.

[hadoop@rhel8 ~]$ ssh 127.0.0.1Keaslian host '127.0.0.1 (127.0.0.1)' tidak dapat ditentukan. Sidik jari kunci ECDSA adalah SHA256:85jUAgtJg8RLOqs8T2egxF7U7IWIiYF+CRspO8yatAk.Yakin ingin sambungkan terus (ya/tidak)? Ya Peringatan:Menambahkan '127.0.0.1' (ECDSA) secara permanen ke daftar host yang dikenal. Aktifkan konsol web dengan:systemctl enable --now cockpit.socketLogin terakhir:Rabu 8 Mei 12:15:04 2019 dari 127.0.0.1[hadoop @rhel8 ~]$

Unduh Hadoop

Kunjungi halaman Apache Hadoop untuk mengunduh versi terbaru Apache Hadoop (Selalu pilih versi yang siap produksi dengan memeriksa dokumentasi), atau Anda dapat menggunakan perintah berikut di terminal untuk mengunduh Hadoop v3.1.2.

$ wget https://www-us.Apache.org/dist/hadoop/common/hadoop-3.1.2/hadoop-3.1.2.tar.gz$ tar -zxvf hadoop-3.1.2.tar. gz $mv hadoop-3.1.2 hadoop

Jenis Kluster Hadoop

Ada tiga jenis cluster Hadoop:

  1. Mode Lokal (Mandiri) – Ini berjalan sebagai proses java tunggal.
  2. Mode Terdistribusi Semu – Setiap daemon Hadoop berjalan sebagai proses terpisah.
  3. Mode Terdistribusi Penuh - sebuah cluster multinode. Mulai dari beberapa node hingga cluster yang sangat besar.

Mengatur variabel lingkungan

Di sini, kita akan mengkonfigurasi Hadoop dalam mode Pseudo-Distributed. Pertama, kita akan mengatur variabel lingkungan di file ~/.bashrc.

Ubah entri variabel Java_HOME dan HADOOP_HOME dalam file tergantung pada lingkungan Anda.
ekspor JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.201.b09-2.el8.x86_64/ ekspor HADOOP_HOME=/home/hadoop/hadoop ekspor HADOOP_INSTALL=$HADOOP_HOMEekspor HADOOP_MAPRED_HOME=$HADOOP_HOMEekspor HADOOP_COMMON_HOME=$HADOOP_HOMEekspor HADOOP_HDFS_HOME=$HADOOP_HOMEekspor HADOOP_YARN_HOME=$HADOOP_HOMEekspor $HADOOP_HOMEekspor HADOOP_HOME_COMMONDOOP_HADOOP_HOMEekspor 

Terapkan variabel lingkungan ke sesi terminal Anda saat ini.

$ source ~/.bashrc

Konfigurasikan Hadoop

Edit file lingkungan Hadoop dan perbarui variabel seperti yang ditunjukkan di bawah ini.

$ vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh

Perbarui variabel JAVA_HOME sesuai lingkungan Anda.

ekspor JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.201.b09-2.el8.x86_64/ 

Kami sekarang akan mengedit file konfigurasi Hadoop tergantung pada mode cluster yang kami siapkan (Pseudo-Distributed).

$ cd $HADOOP_HOME/etc/hadoop

Edit core-site.xml dan perbarui file dengan nama host HDFS.

  fs.defaultFS hdfs://rhel8.itzgeek.local :9000 

Buat direktori namenode dan datanode di bawah direktori home /home/hadoop pengguna hadoop.

$ mkdir -p ~/hadoopdata/hdfs/{namenode,datanode}

Edit hdfs-site.xml dan perbarui file dengan informasi direktori NameNode dan DataNode.

  dfs.replication 1   dfs.name.dir file :///home/hadoop/hadoopdata/hdfs/namenode    dfs.data.dir file:///home/hadoop/hadoopdata/hdfs/datanode  

Edit mapred-site.xml.

  mapreduce.framework.name benang 

Edit yarn-site.xml.

  yarn.nodemanager.aux-services mapreduce_shuffle 

Format NameNode menggunakan perintah berikut.

$ hdfs namenode -format

Keluaran:

. . .. . .2019-05-13 19:33:14,720 INFO namenode.FSImage:BlockPoolId baru yang dialokasikan:BP-1601223288-192.168.1.10-15577561946432019-05-13 19:33:15,100 INFO common.Storage:Storage directory /home/hadoop/ hadoopdata/hdfs/namenode telah berhasil diformat.2019-05-13 19:33:15.436 INFO namenode.FSImageFormatProtobuf:Menyimpan file gambar /home/hadoop/hadoopdata/hdfs/namenode/current/fsimage.ckpt_00000000000000000000 tanpa kompresi2019-05- 13 19:33:16,804 INFO namenode.FSImageFormatProtobuf:File gambar /home/hadoop/hadoopdata/hdfs/namenode/current/fsimage.ckpt_00000000000000000000 ukuran 393 byte disimpan dalam 1 detik .2019-05-13 19:33:17,106 INFO namenode .NNStorageRetentionManager:Akan mempertahankan 1 gambar dengan txid>=02019-05-13 19:33:17,150 INFO namenode.NameNode:SHUTDOWN_MSG:/********************* ****************************************SHUTDOWN_MSG:Mematikan NameNode di rhel8.itzgeek. lokal/192.168.1.10********************************************* ***************/

Firewall

Jalankan perintah di bawah ini untuk mengizinkan koneksi Apache Hadoop melalui firewall. Jalankan perintah ini sebagai pengguna root.

firewall-cmd --permanent --add-port=9870/tcpfirewall-cmd --permanent --add-port=8088/tcpfirewall-cmd --reload

Mulai Hadoop &Benang

Mulai daemon NameNode dan DataNode dengan menggunakan skrip yang disediakan oleh Hadoop.

$ start-dfs.sh

Keluaran:

Memulai namenode di [rhel8.itzgeek.local]rhel8.itzgeek.local:Peringatan:Menambahkan 'rhel8.itzgeek.local,fe80::4480:83a5:c52:ea80%enp0s3' (ECDSA) secara permanen ke daftar host yang dikenal.Memulai datanodeslocalhost:Peringatan:Menambahkan 'localhost' (ECDSA) secara permanen ke daftar host yang dikenal.Memulai namenodes sekunder [rhel8.itzgeek.local]13-05-2019 19:39:00,698 util.NativeCodeLoader:Tidak dapat muat pustaka hadoop asli untuk platform Anda... menggunakan kelas bawaan-java jika berlaku

Buka browser dan pergi ke alamat di bawah ini untuk mengakses Namenode.

http://ip.ad.dre.ss:9870/

Mulai ResourceManager dan NodeManager.

$ start-yarn.sh

Keluaran:

Memulai resourcemanagerMemulai nodemanagers

Buka browser dan buka alamat di bawah ini untuk mengakses ResourceManager.

http://ip.ad.dre.ss:8088/

Uji Apache Hadoop

Kami sekarang akan menguji Apache Hadoop dengan mengunggah file sampel ke dalamnya. Sebelum mengunggah file ke HDFS, buat direktori di HDFS.

$ hdfs dfs -mkdir /raj

Pastikan direktori yang dibuat ada di HDFS.

hdfs dfs -ls /

Keluaran:

Ditemukan 1 itemdrwxr-xr-x - hadoop supergroup 0 2019-05-08 13:20 /raj

Unggah file ke direktori raj HDFS dengan perintah berikut.

$ hdfs dfs -put ~/.bashrc /raj

File yang diunggah dapat dilihat dengan menjalankan perintah di bawah ini.

$ hdfs dfs -ls /raj

ATAU

Buka NameNode>> Utilitas >> Jelajahi sistem file di NameNode.

http://ip.ad.dre.ss:9870/explorer.html#/raj

Anda dapat menyalin file dari HDFS ke sistem file lokal Anda dengan menggunakan perintah di bawah ini.

$ hdfs dfs -get /raj /tmp/

Jika diperlukan, Anda dapat menghapus file dan direktori di HDFS menggunakan perintah berikut.

$ hdfs dfs -rm -f /raj/.bashrc$ hdfs dfs -rmdir /raj

Kesimpulan

Saya harap, posting ini membantu Anda menginstal dan mengonfigurasi satu node Apache Hadoop cluster di RHEL 8. Anda dapat membaca dokumentasi resmi Hadoop untuk informasi lebih lanjut. Silakan bagikan tanggapan Anda di bagian komentar.


Cent OS
  1. Cara Menginstal Apache Hadoop di CentOS 7, Ubuntu 18.04 &Debian 9

  2. Cara Instal Apache Maven CentOS 7 / RHEL 7

  3. Cara Instal Apache Hadoop di CentOS 8

  1. Cara menginstal Hadoop di RHEL 8 / CentOS 8 Linux

  2. Cara install apache tomcat di linux RHEL 8 / CentOS 8

  3. Cara Instal Apache Hadoop di CentOS 7

  1. Cara menginstal node.js di RHEL 8 / CentOS 8 Linux

  2. Cara menginstal Apache di RHEL 8 / CentOS 8 Linux

  3. Cara menginstal bangku apache di RHEL 8