1. hadoop 설치
Mirror Site에서 bigpi1으로 설치 파일 다운 받으면 된다.
버전은 3.2.2로 하였고, 파일은 맨 마지막 hadoop-3.2.2.tar.gz로 하면 된다.
$ wget http://mirror.navercorp.com/apache/hadoop/common/hadoop-3.2.2/hadoop-3.2.2.tar.gz
Hadoop 설치 파일 압축 해제 및 설정
$ sudo tar -xvf hadoop-3.2.2.tar.gz -C /opt/
$ rm hadoop-3.2.2.tar.gz
$ cd /opt
$ sudo mv hadoop-3.2.2 hadoop
$ sudo chwon pi:pi -R /opt/hadoop
~/.bashrc 파일에 환경변수 추가
$ cd ~
$ nano .bashrc
export JAVA_HOME=$(readlink –f /usr/bin/java | sed "s:bin/java::")
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
## 내용 추가
hadoop-env.sh에 환경변수 추가
$ sudo nano /opt/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")
.bashrc 변경사항 적용 후 hadoop 설치 버전 확인
$ source .bashrc
$ hadoop version
하둡이 정상적으로 설치되었다면 위와 같이 Hadoop 3.2.2 버전이 나와야 한다.
2. Spark 설치
Hadoop과 똑같이 Mirror Site에서 birpi1에 설치 파일을 다운 받으면 된다.
버전은 3.2.0이고 spark-3.2.0-bin-hadoop3.2.tgz 파일로 설치하면 된다.
$ wget http://mirror.navercorp.com/apache/spark/spark-3.2.0/spark-3.2.0-bin-hadoop3.2.tgz
Spark 설치 파일 압축 해제 및 설정
압축해제 후 spark 디렉토리로 이동해서 권한 설정
$ sudo tar –xvf spark-3.2.0-bin-hadoop3.2.tgz –C /opt/
$ rm spark-3.0.0-preview2-bin-hadoop3.2.tgz
$ cd /opt
$ sudo mv spark-3.2.0-bin-hadoop3.2 spark
$ sudo chown pi:pi –R /opt/spark
~/.bashrc 파일에 환경변수 추가
$ cd ~
$ nano .bashrc
export JAVA_HOME=$(readlink –f /usr/bin/java | sed "s:bin/java::")
export HADOOP_HOME=/opt/hadoop
export SPARK_HOME=/opt/spark # 추가
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$SPARK_HOME/bin # SPARK_HOME 추가
.bashrc 변경사항 적용 후 spark 설치 버전 확인
$ source .bashrc
$ spark-shell --version
3. HDFS 설정 및 실행
/opt/hadoop/etc/hadoop 하위 설정 파일들 수정
1. core-site.xml 파일 수정
$ sudo nano /opt/hadoop/etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://bigpi1:9000</value>
</property>
</configuration>
2. hdfs-site.xml 파일 수정
$ sudo nano /opt/hadoop/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/hadoop_tmp/hdfs/datanode</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///opt/hadoop_tmp/hdfs/namenode</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
3. DataNode와 NameNode 관련 디렉터리 작성 및 권한 설정
$ sudo mkdir –p /opt/hadoop_tmp/hdfs/datanode
$ sudo mkdir –p /opt/hadoop_tmp/hdfs/namenode
$ sudo chown pi:pi –R /opt/hadoop_tmp
4. mapred-site.xml 파일 수정
$ sudo nano /opt/hadoop/etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
5. yarn-site.xml 파일 수정
$ sudo nano /opt/hadoop/etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>
6. HDFS 포멧
$ hdfs namenode -format -force
7. HDFS 서비스 시작
$ start-dfs.sh
$ start-yarn.sh
8. HDFS 정상 동작하는지 임시 디렉터리 만들어서 테스트
$ hadoop fs -mkdir /tmp
$ hadoop fs -ls /
9. 실행되는 JAVA 가상머신 목록 확인
$ jps
위의 화면처럼 Jps, ResourceManager, NameNode, SecondaryNameNode, DataNode, NodeManager 나와야 함
10. Spark와 Hadoop 동시에 동작하는지 확인
$ hadoop fs -put $SPARK_HOME/README.md /
$ spark-shell
11. Spark shell에서 README.md 파일 읽어서 출력
scala> val textFile = sc.textFile("hdfs://bigpi1:9000/README.md")
scala> textFile.first()
scala> :quit # 종료
12. Execstack Warning 메세지 숨기기
"You have loaded library ... which might have disabled stack guard." 에러 메시지 숨기기
$ sudo nano /opt/hadoop/etc/hadoop/hadoop-env.sh
export HADOOP_OPTS="-XX:-PrintWarnings –Djava.net.preferIPv4Stack=true"
위의 화면처럼 해당 위치에 코드를 추가해야 함.
13. NativeCodeLoader Warning 메시지 숨기기
$ nano .bashrc
export HADOOP_HOME_WARN_SUPPRESS=1
export HADOOP_ROOT_LOGGER="WARN,DRFA"
서비스 재시작 후 수정된 .bashrc 적용한다
$ stop-dfs.sh && stop-yarn.sh
$ start-dfs.sh && start-yarn.sh
$ source .bashrc
'HDFS' 카테고리의 다른 글
Sqoop (0) | 2021.12.22 |
---|---|
Apache Flume (0) | 2021.12.22 |
HDFS Cluster 설정 (0) | 2021.12.20 |
Cluster 설정 (0) | 2021.12.16 |
가상환경 설치(virtual hadoop cluster 구성) (0) | 2021.12.16 |