이번 포스트에는 virtualbox에 하둡을 설치하겠습니다.
virtualbox에 ubuntu를 설치하지 못하신 분이나, windows의 powershell로 ssh통신을 할 줄 모르시는 분이면 아래URL의 포스트부터 선행하여 주세요!
vitual box와 ubuntu 설치하기
ssh 통신하기
1.ubuntu에 open-jdk 설치하기
1) sudo apt update
2) sudo apt install openjdk-8-jdk -y
3) java -version; javac -version
2. 하둡만을 위한 계정 만들기
-클러스터를 효과적으로 관리할 수 있고, 보안에도 좋기때문에 하둡만을 위한 계정을 따로 만들어줍니다.
1) sudo apt install openssh-server openssh-client -y
-localhost랑 ssh통신을 위한 openssh-server openssh-clinet 설치
2. sudo adduser hdoop
-계정 추가 및 비밀번호 설정
3. su - hdoop
hdoop 계정으로 접속
4.하둡 유저를 위한 비밀번호없는 ssh통신 가능하게 하기
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
->
chmod 0600 ~/.ssh/authorized_keys
->
ssh localhost
3. 하둡 설치
1) 하둡 다운로드 공식 홈페이지에서 하둡 다운로드
cd ~(root 디렉토리로 이동) 를 쳐서 거기서 하둡을 다운받겠습니다.
*버전은 계속 바뀌기 때문에 https://downloads.apache.org/hadoop/common
에서 업데이트된 버전으로 받으시길 바랍니다. 현재는(hadoop3.2.1은 없고, hadoop3.2.2버전이 있습니다, 2021-07-18)
wget https://downloads.apache.org/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz
하둡 설치 확인
2) 하둡 설치파일 압축 해제
tar xzf hadoop-3.2.1.tar.gz
하둡을 single node로 설치하는 pseudo-distributed mode로 설치하겠습니다.
(각 하둡 데몬이 단일 자바 프로세스로 운영될 수 있도록 해줍니다.)
configuration files to set up(설정값 파일들 목록)
- bashrc
- hadoop-env.sh
- core-site.xml
- hdfs-site.xml
- mapred-site-xml
- yarn-site.xml
3) 하둡환경변수 설정하기 (.bashrc 파일 설정)
nano .bashrc
nano .bashrc 했을 때 ↓키로 맨 마지막으로 내려가서 아래의 텍스트(하둡환경변수를 추가합니다.)
#Hadoop Related Options export HADOOP_HOME=/home/hdoop/hadoop-3.2.1
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/native"
ctrl+x - y - enter 로 저장하고 nano환경을 빠져나옵니다.
4) 하둡환경변수 설정한 것 적용시키기
source ~/.bashrc
5) hadoop-env.sh 파일 편집하기
nano $HADOOP_HOME/etc/hadoop/hadoop-env.sh
-yarn, HDFS, MapReduce 하둡관련된 프로젝트 셋팅에 관한 파일입니다.
#export JAVA_HOME= 부분의 #을 제거하고(주석제거)
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64를 적어놓습니다.
마찬가지로 ctrl+x - y -enter로 저장하고 nano환경을 나옵니다.
which javac
readlink -f /usr/bin/javac 를 통해 java path 확인해 봅니다.
6) core-site.xml 편집하기
core-site.xml 은 HDFS와 Hadoop 핵심 property들을 정의하는 파일입니다.
nano $HADOOP_HOME/etc/hadoop/core-site.xml
core-site.xml 파일에 아래의 텍스트를 붙여넣고 저장하고 나옵니다.
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hdoop/tmpdata</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://127.0.0.1:9000</value>
</property>
</configuration>
빠져나온 이후에 tmpdata 디렉토리를 만들어줍니다(mkdir tmpdata)
7) hdfs-site.xml 파일 편집하기
-데이터 노드와 네임노드의 저장소 디렉토리를 설정하는 파일입니다.
nano $HADOOP_HOME/etc/hadoop/hdfs-site.xml
hdfs-site.xml 파일에 아래의 텍스트를 붙여놓고 저장하고 나옵니다.
<configuration>
<property>
<name>dfs.data.dir</name>
<value>/home/hdoop/dfsdata/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hdoop/dfsdata/datanode</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
8) mapred-site.xml 파일 편집하기
-mapreduce 파일의 값을 정의하기 위한 파일입니다.
nano $HADOOP_HOME/etc/hadoop/mapred-site.xml
mapred-site.xml 파일에 아래의 텍스트를 붙여놓고 저장하고 나옵니다.
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
9) yarn-site.xml 파일 편집하기
-yarn-site.xml은 YARN에 관련된 세팅들을 정의하는 파일이다.
-node manager, Resource manager, containers, application master설정에 관한거를 포함합니다.
nano $HADOOP_HOME/etc/hadoop/yarn-site.xml
yarn-site.xml 파일에 아래의 텍스트를 붙여놓고 저장하고 나옵니다.
<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>0.0.0.0</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>0.0.0.0:8032</value>
</property>
<property>
<name>yarn.web-proxy.address</name>
<value>0.0.0.0:8089</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>
10) Format HDFS Namenode
-Hadoop 서비스를 처음 시작하기전에 namenode를 format(네임노드 초기화)하는 것은 중요합니다.
hdfs namenode -format
11) 하둡클러스터 시작하기
hadoop-3.2.1/sbin/start-dfs.sh
hadoop-3.2.1/sbin/start-yarn.sh
jps
12)Hadoop UI browser 접속하기
NameNode UI
http://localhost:9870
DataNode
http://localhost:9864
YARN resource manager
http:localhost:8088
이것으로 가상 분산 모드 hadoop을 설치해봤습니다.
다음 포스트에는 hive를 설치해보겠습니다.
완전 분산 모드 하둡클러스터를 구축 해보고 싶으신 분은 아래의 링크를 참조해주세요.
2021.08.08 - [BigData] - [BigData] 완전 분산 하둡 클러스터(hadoop cluster)구축하기(4개 노드) 1. 4개의 가상 노드 띄우기
출처:
phoenixnap.com/kb/install-hadoop-ubuntu
댓글