GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal dan Mengonfigurasi Hadoop di Ubuntu 20.04

Hadoop adalah kerangka kerja perangkat lunak gratis, sumber terbuka, dan berbasis Java yang digunakan untuk penyimpanan dan pemrosesan kumpulan data besar pada kumpulan mesin. Ini menggunakan HDFS untuk menyimpan datanya dan memproses data ini menggunakan MapReduce. Ini adalah ekosistem alat Big Data yang terutama digunakan untuk penambangan data dan pembelajaran mesin.

Apache Hadoop 3.3 hadir dengan peningkatan yang nyata dan banyak perbaikan bug dari rilis sebelumnya. Ini memiliki empat komponen utama seperti Hadoop Common, HDFS, YARN, dan MapReduce.

Tutorial ini akan menjelaskan cara menginstal dan mengkonfigurasi Apache Hadoop pada sistem Linux Ubuntu 20.04 LTS.

Langkah 1 – Menginstal Java

Hadoop ditulis dalam Java dan hanya mendukung Java versi 8. Hadoop versi 3.3 dan terbaru juga mendukung runtime Java 11 serta Java 8.

Anda dapat menginstal OpenJDK 11 dari repositori apt default:

sudo apt update 
sudo apt install openjdk-11-jdk

Setelah diinstal, verifikasi versi Java yang diinstal dengan perintah berikut:

java -version 

Anda akan mendapatkan output berikut:

openjdk version "11.0.11" 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)

Langkah 2 – Buat Pengguna Hadoop

Sebaiknya buat pengguna terpisah untuk menjalankan Hadoop demi alasan keamanan.

Jalankan perintah berikut untuk membuat user baru dengan nama hadoop:

sudo adduser hadoop 

Berikan dan konfirmasi kata sandi baru seperti yang ditunjukkan di bawah ini:

Adding user `hadoop' ...
Adding new group `hadoop' (1002) ...
Adding new user `hadoop' (1002) with group `hadoop' ...
Creating home directory `/home/hadoop' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for hadoop
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y

Langkah 3 – Konfigurasikan Otentikasi Berbasis Kunci SSH

Selanjutnya, Anda perlu mengonfigurasi otentikasi SSH tanpa kata sandi untuk sistem lokal.

Pertama, ubah pengguna menjadi hadoop dengan perintah berikut:

su - hadoop 

Selanjutnya, jalankan perintah berikut untuk menghasilkan Pasangan Kunci Publik dan Pribadi:

ssh-keygen -t rsa 

Anda akan diminta untuk memasukkan nama file. Cukup tekan Enter untuk menyelesaikan prosesnya:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/hadoop/.ssh/id_rsa):
Created directory '/home/hadoop/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/hadoop/.ssh/id_rsa
Your public key has been saved in /home/hadoop/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:QSa2syeISwP0hD+UXxxi0j9MSOrjKDGIbkfbM3ejyIk [email protected]
The key's randomart image is:
+---[RSA 3072]----+
| ..o++=.+        |
|..oo++.O         |
|. oo. B .        |
|o..+ o * .       |
|= ++o o S        |
|.++o+  o         |
|.+.+ + . o       |
|o . o * o .      |
|   E + .         |
+----[SHA256]-----+

Selanjutnya, tambahkan kunci publik yang dihasilkan dari id_rsa.pub ke otor_keys dan atur izin yang tepat:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 
chmod 640 ~/.ssh/authorized_keys 

Selanjutnya, verifikasi otentikasi SSH tanpa kata sandi dengan perintah berikut:

ssh localhost 

Anda akan diminta untuk mengautentikasi host dengan menambahkan kunci RSA ke host yang dikenal. Ketik ya dan tekan Enter untuk mengotentikasi localhost:

The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECDSA key fingerprint is SHA256:JFqDVbM3zTPhUPgD5oMJ4ClviH6tzIRZ2GD3BdNqGMQ.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes

Langkah 4 – Memasang Hadoop

Pertama, ubah pengguna menjadi hadoop dengan perintah berikut:

su - hadoop 

Selanjutnya, unduh Hadoop versi terbaru menggunakan perintah wget:

wget https://downloads.apache.org/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz 

Setelah diunduh, ekstrak file yang diunduh:

tar -xvzf hadoop-3.3.0.tar.gz 

Selanjutnya, ganti nama direktori yang diekstrak menjadi hadoop:

mv hadoop-3.3.0 hadoop 

Selanjutnya, Anda perlu mengonfigurasi Hadoop dan Java Environment Variables di sistem Anda.

Buka ~/.bashrc file di editor teks favorit Anda:

nano ~/.bashrc 

Tambahkan baris di bawah ini ke file. Anda dapat menemukan lokasi JAVA_HOME dengan menjalankan dirname $(dirname $(readlink -f $(which java))) command on terminal.

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HADOOP_HOME=/home/hadoop/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"

Save and close the file. Then, activate the environment variables with the following command:

source ~/.bashrc 

Selanjutnya, buka file variabel lingkungan Hadoop:

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

Sekali lagi atur JAVA_HOME di lingkungan hadoop.

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

Simpan dan tutup file setelah Anda selesai.

Langkah 5 - Mengonfigurasi Hadoop

Pertama, Anda perlu membuat direktori namenode dan datanode di dalam direktori home Hadoop:

Jalankan perintah berikut untuk membuat kedua direktori:

mkdir -p ~/hadoopdata/hdfs/namenode 
mkdir -p ~/hadoopdata/hdfs/datanode 

Selanjutnya, edit situs-inti.xml file dan perbarui dengan nama host sistem Anda:

nano $HADOOP_HOME/etc/hadoop/core-site.xml 

Ubah nama berikut sesuai nama host sistem Anda:

XHTML
123456 fs.defaultFS hdfs://hadoop.tecadmin.com:9000

Simpan dan tutup file. Kemudian, edit hdfs-site.xml berkas:

nano $HADOOP_HOME/etc/hadoop/hdfs-site.xml 

Ubah jalur direktori NameNode dan DataNode seperti yang ditunjukkan di bawah ini:

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

Simpan dan tutup file. Kemudian, edit mapred-site.xml berkas:

nano $HADOOP_HOME/etc/hadoop/mapred-site.xml 

Lakukan perubahan berikut:

XHTML
123456 mapreduce.framework.name yarn

Simpan dan tutup file. Kemudian, edit situs-benang.xml berkas:

nano $HADOOP_HOME/etc/hadoop/yarn-site.xml 

Lakukan perubahan berikut:

XHTML
123456 yarn.nodemanager.aux-services mapreduce_shuffle

Simpan dan tutup file setelah Anda selesai.

Langkah 6 - Mulai Hadoop Cluster

Sebelum memulai cluster Hadoop. Anda perlu memformat Namenode sebagai pengguna hadoop.

Jalankan perintah berikut untuk memformat Namenode hadoop:

hdfs namenode -format 

Anda akan mendapatkan output berikut:

2020-11-23 10:31:51,318 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
2020-11-23 10:31:51,323 INFO namenode.FSImage: FSImageSaver clean checkpoint: txid=0 when meet shutdown.
2020-11-23 10:31:51,323 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at hadoop.tecadmin.net/127.0.1.1
************************************************************/

Setelah memformat Namenode, jalankan perintah berikut untuk memulai cluster hadoop:

start-dfs.sh 

Setelah HDFS dimulai dengan sukses, Anda akan mendapatkan output berikut:

Starting namenodes on [hadoop.tecadmin.com]
hadoop.tecadmin.com: Warning: Permanently added 'hadoop.tecadmin.com,fe80::200:2dff:fe3a:26ca%eth0' (ECDSA) to the list of known hosts.
Starting datanodes
Starting secondary namenodes [hadoop.tecadmin.com]

Selanjutnya, mulai layanan YARN seperti yang ditunjukkan di bawah ini:

start-yarn.sh 

Anda akan mendapatkan output berikut:

Starting resourcemanager
Starting nodemanagers

Sekarang Anda dapat memeriksa status semua layanan Hadoop menggunakan perintah jps:

jps 

Anda akan melihat semua layanan yang berjalan pada output berikut:

18194 NameNode
18822 NodeManager
17911 SecondaryNameNode
17720 DataNode
18669 ResourceManager
19151 Jps

Langkah 7 - Sesuaikan Firewall

Hadoop sekarang dimulai dan mendengarkan pada port 9870 dan 8088. Selanjutnya, Anda harus mengizinkan port ini melalui firewall.

Jalankan perintah berikut untuk mengizinkan koneksi Hadoop melalui firewall:

firewall-cmd --permanent --add-port=9870/tcp 
firewall-cmd --permanent --add-port=8088/tcp 

Selanjutnya, muat ulang layanan firewalld untuk menerapkan perubahan:

firewall-cmd --reload 

Langkah 8 - Akses Hadoop Namenode dan Resource Manager

Untuk mengakses Namenode, buka browser web Anda dan kunjungi URL http://your-server-ip:9870. Anda akan melihat layar berikut:

http://hadoop.tecadmin.net:9870

Untuk mengakses Resource Manage, buka browser web Anda dan kunjungi URL http://your-server-ip:8088. Anda akan melihat layar berikut:

http://hadoop.tecadmin.net:8088

Langkah 9 - Verifikasi Cluster Hadoop

Pada titik ini, cluster Hadoop diinstal dan dikonfigurasi. Selanjutnya, kita akan membuat beberapa direktori di sistem file HDFS untuk menguji Hadoop.

Mari kita buat beberapa direktori di sistem file HDFS menggunakan perintah berikut:

hdfs dfs -mkdir /test1
hdfs dfs -mkdir /logs 

Selanjutnya, jalankan perintah berikut untuk membuat daftar direktori di atas:

hdfs dfs -ls / 

Anda akan mendapatkan output berikut:

Found 3 items
drwxr-xr-x   - hadoop supergroup          0 2020-11-23 10:56 /logs
drwxr-xr-x   - hadoop supergroup          0 2020-11-23 10:51 /test1

Juga, letakkan beberapa file ke sistem file hadoop. Misalnya, meletakkan file log dari mesin host ke sistem file hadoop.

hdfs dfs -put /var/log/* /logs/  

Anda juga dapat memverifikasi file dan direktori di atas di antarmuka web Hadoop Namenode.

Buka antarmuka web Namenode, klik Utilitas => Jelajahi sistem file. Anda akan melihat direktori yang telah Anda buat sebelumnya di layar berikut:

http://hadoop.tecadmin.net:9870/explorer.html

Langkah 10 - Hentikan Kluster Hadoop

Anda juga dapat menghentikan layanan Hadoop Namenode dan Yarn kapan saja dengan menjalankan stop-dfs.sh dan stop-yarn.sh skrip sebagai pengguna Hadoop.

Untuk menghentikan layanan Hadoop Namenode, jalankan perintah berikut sebagai pengguna hadoop:

stop-dfs.sh  

Untuk menghentikan layanan Hadoop Resource Manager, jalankan perintah berikut:

stop-yarn.sh 

Kesimpulan

Tutorial ini menjelaskan tutorial langkah demi langkah untuk menginstal dan mengkonfigurasi Hadoop di sistem Linux Ubuntu 20.04.


Ubuntu
  1. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 18.04

  2. Cara Menginstal dan Mengkonfigurasi Redmine di Ubuntu 18.04

  3. Cara Menginstal dan Mengonfigurasi Samba di Ubuntu 18.04

  1. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 20.04

  2. Cara Menginstal dan Mengonfigurasi Jenkins di Ubuntu 20.04

  3. Cara Menginstal dan Mengonfigurasi Askbot di Ubuntu 16.04

  1. Cara Menginstal dan Mengonfigurasi MongoDB di Ubuntu 14.04

  2. Cara menginstal dan mengkonfigurasi Solr 6 di Ubuntu 16.04

  3. Cara Menginstal dan Mengonfigurasi GitLab di Ubuntu 16.04