[de] Hadoop 설치
2023. 9. 5. 23:05ㆍdata engineer/big data
약 1년 전 1개월의 짧은 빅데이터 인력 양성교육 과정이 끝나고
추가적으로 빅데이터 저장 처리하는 Hadoop + Spark 에 대해 알려주신적 있다!
아니나 다를까, 설치과정부터 에러나서 포기했는데
이번에 KDT를 들으면서 엔지니어링의 하이라이트 !!!
Ubuntu + Linux + Hadoop + Spark + ... 실습을 열나게 하는중이다~~
그래서 오늘 정리할 내용은
리눅스서버에 hadoop 설치하고 실행하는 과정
(java, python 사전 설치 필요)
1단계
- apt update & upgrade
- Key 발급 받기
- java와 python 설치 후 확인
sudo apt update //업데이트
sudo apt install openssh-server -y //
//sudo apt install openssh-client -y
sudo apt install ssh-askpass -y
// -P 뒤에 single quatation 2개 (키 생성)
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
chmod 0600 ~/.ssh/authorized_keys
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
//java 확인
java --version
javac --version
//python 설치
python -V
python3 -V
2단계
- 하둡 설치 후 압축해제
- 하둡 symbolic link 걸어주기
- 링크가 잘 걸렸다면 하늘색 색상으로 바뀜
//하둡 설치 및 압축 풀기
wget [하둡주소]
tar xvzf hadoop[풀네임 자동완성]
//심볼릭 링크 걸기
ln -s hadoop-3.3.6 hadoop
3단계
part 1. Hadoop 관련 경로 설정하기 (추가중)
//hadoop, hadoop user PATH 설정
vim ~/.bashrc
# hadoop
export
# hadoop user
export
//경로파일 저장 후 적용
source ~/.bashrc
part2. HADOOP_CONF_DIR
경로 설정 이후 HADOOP_CONF_DIR dir에서 각 파일(5개, 4개:spark 연결시)에 들어가서
<configuration>
여기에
</cofiguration> 아래 내용 추가
(해당 코드에서 계정명은 guest로 지정했습니다)
- hadoop-env.sh
- core-site.xml
- hdfs-site.xml
- mapred-site.xml
- yarn-site.xml
1. hadoop-env.sh
vim hadoop-env.sh
//54th line
export JAVA_HOME=/home/guest/java
//58th line
export HADOOP_HOME=/home/guest/hadoop
//68th line 주석해제
//198th line
export HADOOP_PID_DIR=$HADOOP_HOME/pids
2. core-site.xml
vim core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
주석아님
3. hdfs-site.xml
vim hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/guest/hadoop/namenode_dir</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/guest/hadoop/datanode_dir</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>localhost:9868</value>
</property>
4. mapred-site.xml
vim mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
</property>
<property>
<name>mapreduce.map.env</name>
<value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
</property>
<property>
<name>mapreduce.reduce.env</name>
<value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
</property>
5. yarn-site.xml
<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>
모든 파일 저장 후
4단계
- namenode 올리기
- datanode 올리기
- start-all.sh
- jps
//home directory로
cd
//namenode, datanode 올리기
hdfs namenode -format
hdfs datanode -format
//시간걸림
start-dfs.sh
start-yarn.sh
start-all.sh //위에 두 코드를 한번에
//jps 포함 6개 뜨면 성공
jps
stop-dfs.sh
stop-yarn.sh
stop-all.sh
웹에서 localhost:9870, 8088 실행하면 해당 페이지가 보임
5단계 : 제일 중요!!
- 실습하는 학생들에게만 해당
- 안전하게 끄기!!
stop-dfs.sh
stop-yarn.sh
stop-all.sh //한번에 처리
'data engineer > big data' 카테고리의 다른 글
[de] Spark on hadoop (0) | 2023.09.10 |
---|