Apache Hadoop adalah kumpulan utilitas perangkat lunak open-source yang memfasilitasi penggunaan jaringan multi komputer untuk memecahkan masalah yang melibatkan data dan komputasi dalam jumlah besar. Hadoop merupakan framework perangkat lunak untuk penyimpanan terdistribusi dan pemrosesan data besar menggunakan model pemrograman MapReduce. Awalnya dirancang untuk klaster komputer yang dibangun dari perangkat keras komoditas dan juga digunakan pada kluster perangkat keras kelas atas. Semua modul di Hadoop dirancang dengan asumsi mendasar bahwa kegagalan perangkat keras adalah kejadian umum dan harus ditangani secara otomatis oleh framework.
Persiapan
Arsitektur
- hadoop02 - 192.168.7.35 - NameNode
- hadoop03 - 192.168.7.36 - DataNode
- hadoop04 - 192.168.7.37 - DataNode
- hadoop05 - 192.168.7.38 - DataNode
Setup Server (All Server)
- Konfigurasi Hostname dan Host masing-masing server
$ sudo hostnamectl set-hostname hadoop02 # sesuaikan dengan arsitektur
$ sudo vi /etc/hosts
# tambahkan pada akhir baris
192.168.7.35 hadoop02
192.168.7.36 hadoop03
192.168.7.37 hadoop04
192.168.7.38 hadoop05
- Disable firewall dan SELinux
$ sudo systemctl stop firewalld
$ sudo systemctl disable firewalld
$ sudo vi /etc/selinux/config
# ubah SELINUX menjadi
SELINUX=disabled
$ sudo reboot now
- Buat user hadoop
$ sudo useradd hadoop
$ sudo usermod -aG wheel hadoop
$ sudo passwd hadoop # set password hadoop
- Konfigurasi Paswordless SSH
$ sudo su - hadoop
$ ssh-keygen -t rsa # kosongkan passphrase / enter sampai selesai
$ ssh-copy-id hadoop@hadoop02
$ ssh-copy-id hadoop@hadoop03
$ ssh-copy-id hadoop@hadoop04
$ ssh-copy-id hadoop@hadoop05
- Install Java 8
$ sudo yum update
$ sudo yum install -y epel-release java-1.8.0-openjdk
- Konfigurasi environment variables ~/.bashrc
$ vi ~/.bashrc
# tambahkan pada akhir baris
export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which javac)))))
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
export HADOOP_HOME=/usr/local/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_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_COMMON_LIB_NATIVE_DIR"
export HADOOP_CLASSPATH=${JAVA_HOME}/lib/tools.jar
export YARN_HOME=$HADOOP_HOME
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$JAVA_HOME/bin
$ source ~/.bashrc
Setup NameNode (Master) - 192.168.7.35
- Download hadoop-3.2.1
$ cd ~/
$ wget https://www-us.apache.org/dist/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz
$ tar -zxvf hadoop-3.2.1.tar.gz
$ sudo mv hadoop-3.2.1 /usr/local/hadoop
$ sudo chown -R hadoop:hadoop /usr/local/hadoop
$ sudo chmod -R g+rwx /usr/local/hadoop
- Konfigurasi Hadoop Core Site core-site.xml
$ cd $HADOOP_HOME/etc/hadoop
$ vi core-site.xml # core-site.xml
# tambahkan di dalam tag <configuration>
...
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop02:9000</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
...
- Konfigurasi HDFS hdfs-site.xml
$ cd $HADOOP_HOME/etc/hadoop
$ vi hdfs-site.xml # hdfs-site.xml
# tambahkan di dalam tag <configuration>...
<configuration>
<!-- Setting path direktori namenode -->
<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop/data/nameNode</value>
</property>
<!-- Setting path direktori datanode -->
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop/data/nameNode</value>
</property>
<!-- Jumlah replikasi -->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
...
- Konfigurasi Worker (slave / data node) workers
$ cd $HADOOP_HOME/etc/hadoop
$ vi workers
#isi dengan list hostname slave / data node
hadoop03
hadoop04
hadoop05
- Copy hadoop direktori ke semua server data node
$ sudo scp -R /usr/local/hadoop hadoop03:/usr/local/hadoop
$ sudo scp -R /usr/local/hadoop hadoop04:/usr/local/hadoop
$ sudo scp -R /usr/local/hadoop hadoop05:/usr/local/hadoop
- Format HDFS filesystem
Setup DataNode (Slave) - 192.168.7.[36-38]
- Atur owner / permission direktori hadoop
$ sudo chown -R hadoop:hadoop /usr/local/hadoop
$ sudo chmod -R g+rwx /usr/local/hadoop
- Konfigurasi Hadoop Yarn Site yarn-site.xml
...
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop02</value>
</property>
</configuration>
...
Start DFS (on NameNode server)
Start Yarn (on NameNode server)
Check JVM Process
Check / List Yarn Node
Running Hadoop Web Monitoring
|
Hadoop Web Health Check |
|
Hadoop Data Node Usage |
0 Komentar