Instalasi Hadoop 3.2.2 pada Windows 10 WSL

cara instalasi Hadoop di Windows

Seringkali kita terkendala dengan infrastruktur ketika ingin memulai belajar Hadoop beserta ecosystemnya. Jika kita hanya memiliki notebook dengan Windows 10 sebagai sistem operasinya maka Windows Subsystem for Linux adalah salah satu solusinya. Artikel ini akan menjelaskan cara instalasi Hadioop di Windows 10 WSL.

WSL (Windows Subsystem for Linux) adalah virtualisasi pada Windows 10 yang memungkinkan sistem operasi Linux berjalan diatas Windows. Lakukan instalasi Ubuntu 18.04 pada WSL sesuai dengan yang dibutuhkan pada artikel ini. Langkah-langkahnya dapat mengikuti pada site berikut: https://docs.microsoft.com/en-us/windows/wsl/install-win10

Pada artikel ini akan membahas mengenai bagaimana memulai mempelajari Hadoop 3.2.2 pada Ubuntu 18.04 yang berjalan diatas Windows 10. Artikel ini mengasumsikan bahwa Ubuntu 18.04 telah terinstal pada Windows 10.

 

Instalasi OpenJDK 8

Seperti yang sudah kita ketahui bahwa Hadoop merupakan aplikasi yang berbasis Java. Oleh sebab itu kita memerlukan layanan Java Runtime Environment (JRE) dan Java Development Kit (JDK). Sebelum melakukan instalasi OpenJDK, sebaiknya kita melakukan update pada Ubuntu agar bisa lebih menjamin sistem dapat kompatibel dengan OpenJDK. Jalankan perintah berikut :

sudo apt update

Lakukan instalasi OpenJDK 8 dengan perintah berikut:

sudo apt-get install openjdk-8-jdk

Setelah instalasi OpenJDK 8 selesai, periksa kembali versi yang telah diinstall

java -version

 

 jdk-version

Gambar - Versi OpenJDk yang telah terinstall

 

 

Instalasi OpenSSH

Lakukan instalasi OpenSSH Server dan OpenSSH Client dengan menjalankan perintah berikut:

sudo apt install openssh-server openssh-client -y

 

Pastikan ssh server dan ssh client telah terinstall dengan baik, dengan cara mencoba ssh ke localhost :

ssh localhost

 

Hadoop memerlukan koneksi ssh tanpa perlu memasukkan kata sandi  atau passwordless ssh. Untuk mengkonfigurasi passwordless ssh, hal pertama yang harus dilakukan adalah membuat authentication keys dengan menggunakan ssh-keygen

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

 

Masukkan public authentication keys yang dihasilkan ke dalam file authorized_key

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

 

Jalankan kembali perintah ssh localhost, maka tidak akan diminta untuk memasukkan kata sandi atau password

 

Unduh dan Instal Hadoop 3.2.2

Untuk mengunduh Hadoop versi 3.2.2 dapat melalui https://hadoop.apache.org/releases.html dan pilih format binary.

 

download-hadoop-bin
Gambar - Unduh Hadoop 3.2.2

 

Atau jika ingin langsung mengunduh langsung menggunakan perintah wget

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

 

Ekstrak file yang telah diunduh tadi

tar -xvzf hadoop-3.2.2.tar.gz

 

Ubah nama folder menjadi hadoop (opsional)

mv hadoop-3.2.2 hadoop

Tutorial ini folder hadoop tersebut berada dalam home user directory: /home/devin

 

Lokasi Data-data Hadoop

Kita akan membuat folder sebagai lokasi hdfs. Kita buat folder ini dalam home user directory

mkdir hdfs

 

Saat ini kita memiliki 2 folder yang akan digunakan untuk Hadoop yaitu:

  • hadoop
  • hdfs

 

Konfigurasi Hadoop Single Node

Masuk ke dalam folder hadoop untuk memudahkan dalam mengkonfigurasi

cd hadoop

 

Pastikan JAVA_HOME telah terdefinisi dengan benar pada file etc/hadoop/hadoop-env.sh

export JAVA_HOME=/user/lib/jvm/java-8-openjdk-amd64
java-home.

Gambar - JAVA_HOME pada file hadoop-env.sh

 

Untuk mengkonfigurasi Hadoop Single Node, kita akan mengedit file-file berikut:

  • core-site.xml
  • hdfs-site.xml
  • mapred-site.xml
  • yarn-site.xml

Untuk mengedit file-file tersebuat diatas dapat dilakukan dengan menggunakan nano atau vi.

1. Edit file core-site.xml dan tambahkan konfigurasi berikut

vi etc/hadoop/core-site.xml
<configuration> 
     <property> 
         <name>fs.defaultFS</name> 
         <value>hdfs://0.0.0.0:9000</value> 
     </property> 
</configuration>

 

2. Edit file hdfs-site.xml dan tambahkan konfigurasi berikut

vi etc/hadoop/hdfs-site.xml
<configuration> 
     <property> 
         <name> dfs.replication </name> 
         <value> 1 </value> 
     </property> 

     <property>
        <name>dfs.name.dir</name>
        <value>file:///home/devin/hdfs/namenode</value>
     </property>

     <property>
        <name>dfs.data.dir</name>
        <value>file:///home/devin/hdfs/datanode</value>     
     </property>
</configuration>

/home/devin adalah home directory karen menggunakan user devin

 

3. Edit file mapred-site.xml dan tambahkan konfigurasi berikut

vi etc/hadoop/mapred-site.xml
<configuration>
     <property>     
          <name>mapreduce.framework.name</name>
          <value>yarn</value>
     </property>
</configuration>

 

4. Edit file yarn-site.xml dan tambahkan konfigurasi berikut

vi etc/hadoop/yarn-site.xml
<configuration>
     <property>
          <name>yarn.nodemanager.aux-services</name>
          <value>mapreduce_shuffle</value>
     </property>
</configuration>

 

Untuk memudahkan pengoperasian kita tambahkan environment JAVA_HOME dan HADOOP_HOME pada file .bashrc

vi ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
export HADOOP_HOME=/home/devin/hadoop
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

<user-name> diganti dengan user account yang kita gunakan. Dan jangan lupa untuk menjalankan perintah berikut, supaya enviroment tadi dapat langsung digunakan

source ~/.bashrc

 

Mengaktifkan Hadoop Single Node

Sebelum kita mengaktifkan Hadoop Single Node, terlebih dahulu kita harus memformat namenode pada Hadoop kita

hdfs namenode -format

 

Aktifkan namenode dan datanode

$HADOOP_HOME/sbin/start-dfs.sh

 

Untuk mengaktifkan YARN kita jalankan perintah berikut

$HADOOP_HOME/sbin/start-yarn.sh

 

Jika tidak ada error maka Hadoop Single Node yang kita miliki sudah dapat digunakan.

 

Akses Hadoop Service Melalui Web Browser

Untuk mengakses NameNode UI melalui web browser dengan membuka url berikut:

http://localhost:9870

 

namenode-ui

Gambar - NameNode UI melalui web browser

 

Yarn Resource Manager UI dapat diakses melalui web browser dengan membuka url berikut

http://localhost:8088

 

Gambar - Resource Manager UI
Gambar - Resource Manager UI

 

Dengan menggunakan Resource Manager UI, kita dapat memonitor aplikasi atau proses yang berjalan menggunakan Hadoop melalui YARN.

 

HDFS User Home Directory

Untuk mengorganisir penggunaan HDFS, diperlukan home directory untuk user account yang digunakan. Pada tutorial ini menggunakan user devin

hdfs dfs -mkdir -p /user/devin

 

Buat file untuk menguji folder yang kita buat

hdfs dfs -touchz test-file

 

Periksa hasilnya

hdfs dfs -ls
hdfs dfs -ls /user/devin

 

Jika tidak ada error, maka HDFS sudah siap untuk digunakan