Instalasi Hadoop 3.2.1 pada Ubuntu 18.04
Apache Hadoop adalah salah satu kerangka kerja untuk mengolah big data. Saya sering mendengar topik Hadoop begitu hangat dalam berbagai diskusi pengolahan data besar saat masih kuliah sehingga saya berpendapat bahwa pemahaman tentang hadoop adalah penting.
Artikel ini membahas pemasangan hadoop pada ubuntu. Hadoop hanya dipasang pada satu komputer (single node). Saya menggunakan spesifikasi:
- Ubuntu 18.04 LTS. Pastikan Anda mendapatkan root access dalam sistem operasi ini. Berkas pemasangan dapat diunduh pada https://releases.ubuntu.com/18.04.5/
- Hadoop versi 3.2.1. Berkas pemasangan dapat diunduh pada https://hadoop.apache.org/releases.html
Saya asumsikan sistem operasi berhasil dipasang dan berkas hadoop berhasil diunduh dan disimpan dalam direktori tertentu. Langkah pemasangan hadoop terdiri dari enam langkah:
- Pasang Java.
Saya sarankan untuk memasang JDK, bukan JRE. Setelah Java berhasil dipasang, uji instalasi dengan perintah:
java -version; javac -version
Saya menggunakan JDK 8 sebagaimana terdapat pada luaran berikut.
java version “1.8.0_202”
Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)
javac 1.8.0_202
2. Akses ssh ke localhost tanpa password.
Ketik perintah berikut:
ssh-keygen -t rsa -P ‘’ -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh localhost
Ulangi hingga ubuntu tidak meminta password saat Anda akses localhost via ssh.
3. Konfigurasi berkas .bashrc
Buka berkas .bashrc. Tambahkan kode berikut pada akhir berkas.
export HADOOP_HOME=/home/alamat_hadoop_anda
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export 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/nativ”
Hindari penggunaan spasi pada skrip diatas. Inisialisasi ulang berkas diatas dengan perintah source .bashrc.
4. Konfigurasi berkas hadoop-env.sh
Ketahui dimana berkas instalasi Java berada. Ketik:
which javac
Kemudian baca symlink (untuk menuju berkas sebenarnya) yang didapatkan dari perintah tersebut dengan:
readlink -f direktori_hasil_perintah_which_javac
Buka berkas $HADOOP_HOME/etc/hadoop/hadoop-env.sh
(dengan catatan hasil konfigurasi berkas .bashrc berhasil dilakukan). Pada baris 54, uncomment baris export $JAVA_HOME dengan hasil dari perintah diatas. Contohnya adalah seperti:
export JAVA_HOME=direktori_hasil_perintah_readlink
5. Konfigurasi berkas core-site.xml
Buka berkas $HADOOP_HOME/etc/hadoop/core-site.xml
. Kemudian berikan konfigurasi berikut:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>alamat_hadoop_anda/tmpdata</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://127.0.0.1:9000</value>
</property>
</configuration>
Pada konfigurasi core-site.xml diatas, tidak ada keharusan untuk memilih nomor port 9000. Silahkan konfigurasi nomor port sendiri yang tidak digunakan oleh aplikasi lain. Nilai hadoop.tmp.dir juga bisa Anda atur sendiri, namun pastikan alamat yang Anda berikan ada.
6. Konfigurasi berkas hdfs-site.xml
Buka berkas $HADOOP_HOME/etc/hadoop/hdfs-site.xml
, kemudian ketik:
<configuration>
<property>
<name>dfs.data.dir</name>
<value>direktori_dfs/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>direktori_dfs/datanode</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
Nilai dfs.replication bernilai 1 karena kita sedang konfigurasi hadoop untuk satu komputer saja (node).
7. Konfigurasi berkas mapred-site.xml
Buka berkas $HADOOP_HOME/etc/hadoop/mapred-site.xml
kemudian ketik:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
Karena kita menggunakan yarn, maka $HADOOP_HOME/etc/hadoop/yarn-site.xml
dengan mengetik:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>127.0.0.1</value>
</property>
<property>
<name>yarn.acl.enable</name>
<value>0</value>
</property>
<property>
<name>yarn.nodemanager.env-whitelist</name>
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PERPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
</property>
</configuration>
8. Uji Pemasangan Hadoop
Pertama, uji dengan perintah:
hdfs namenode -format
./start-dfs.sh
./start-yarn.sh
jps
Berkas ./start-dfs.sh dan ./start-yarn.sh berada pada direktori hadoop-3.2.1/sbin. Jika tidak ada masalah, maka perintah jps menghasilkan proses Java DataNode, SecondaryNameNode, NameNode, NodeManager, ResourceManager, jps.