먼저 환경에 JDK 설치는 필수
1.8버전을 설치 후 적용시켜 놓았다.
다음 바로 하둡 설치
https://hadoop.apache.org/releases.html
에 들어가서 3.1.3버전 binary 클릭
(3.1.2버전은 http://archive.apache.org/dist/hadoop/common/hadoop-3.1.2/) 혹시몰라 링크 넣어둠
*****3.1.3.버전으로 독립구축하였지만 워드카운터 부분에서 에러 발생... 원인 모름.. 3.1.2.로 하세요..*****
이 중 아무거나 오른쪽 클릭하여 링크 복사 후 다운로드
이후 압축 파일 풀고 난 뒤
vi /etc/profile에 환경설정
그다음 hadoop version 확인
3.1.3버전 다운된것을 확인 할 수 있음
워드 카운터 예제 실행
이후 cat wordcount_output/part-r-00000을 확인하면 됩니다.
기본 하둡에 서버 설치 완료!
openssh 설치
yum install openssh*
공개키와 비밀키를 설정
ssh-keygen -t rsa -P ""을 수행하여 디폴트로 생성 (엔터 한번 더 치면댐)
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
인증기 등록
ssh localhost 이후 최초에만 연결하겠냐고 물어보고 그 뒤는 안물어봄
JDK 경로 추가
$HADOOP_HOME/etc/hadoop/core-site.xml
$Hadoop_home/etc/hadoop/hdfs-site.xml
새로운 tronix 계정으로 실행을 했지만
Permission denied 에러 발생
검색결과 [ 참고::https://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=any&wr_id=32191 ]
이후
hdfs namenode -format 하여 포맷 한 뒤
start-dfs.sh 실행
결과는 잘 실행된듯 하다
그 다음에는 접근할수 있도록 포트를 개방해줘야한다
방화벽 개방!
ip:9870 접속 완료~
2.9대 버전까지는 port가 50070이었으나 3.x대 부터는 9870으로 바뀌었다.
그 다음
start-yarn.sh 실행!!
포트는 8088을 열어야 한다.
성공!!
다음 마스터 노드와 슬레이브 노드 구분하여 설정하기
기존에 구축한 서버를 master01로 만들고 새로운 서버를 slave01로 만들 생각이다.
*slave01에 하둡을 설치해야 한다.
먼저 hostname변경과 hosts에 slave01에 대한 내용을 연결해줄 것이다.
vi /etc/hostname에서 기존 localhost:localdomain를 삭제 후 master01로 변경
그 다음
vi /etc/hosts 에서
밑에다가 설정!!
slave01 서버에도 동일하게 적용해준다
그리고 터미널을 껐다가 키면
호스트 네임이 변경된 것을 확인할 수 있다.
그리고 데이터를 주고 받을때는 ssh 통신을 이용하기 때문에
기존 master01에서 만들어 놓은 인증 키를 보내야한다.
slave01서버에 yum install ssh 및 설정을 필수 !!
scp -rp /home/tronix/.ssh/authorized_keys tronix@slave01: /home/tronix/.ssh/
명령어를 날리면 인증키값이 해당경로로 복사가 된다~
그리고 각 ssh master01 , ssh slave01 명령어를 날려서 접속되는지 확인!!
확인 완료!!
이제 설정을 해보자
vi $HADOOP_HOME/etc/hadoop/core-site.xml 에는
변경해주고
hadoop-env.sh에는
HADOOP_PID_DIR의 대한 경로를 지정해주었다. 그리고
hdfs-site.xml에는 master와 slave 다르게 지정해야 되는데
master01 -
slave01 -
master01: mapre-site.xml
모든 노드에 yarn-site.xml
이렇게 설정해주면 된다.
****** slave에서 중간에 hostname부분을 원래 master01로 했었는데 워드카운터 실행시
jar 부분에서 안넘어가는 에러가 발생했었다.. 그래서 고정 ip를 넣어주었더니 실행 되었다...
워드 카운터 실행!!
hdfs dfs -mkdir /user
hdfs dfs -mkdir /user/root
hdfs dfs -mkdir /user/root/cont
hdfs dfs -mkdir /input
hdfs dfs -copyFromLocal $HADOOP_HOME/README.txt /input
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.2.jar wordcount /input/README.txt ~/wordcount-output
실행이 잘 된다면 이렇게 뜰것이다..
만약에 jar에서 안넘어 가거나 map 0% reduce 0%에서 안넘어갈수도 있다.. 왜냐면 내가 그랬으니깐..
이틀째... 찾아본 결과..
메모리 부족이라고 한다
yarn-site.xml(마스터, 슬레이브) 둘다
이렇게 넣어주고 실행하니.. 아주 잘되는것을 확인했다~
hdfs dfs -cat ~/wordcount-output/part-t-00000해보면 확인할 수 있다!!
하둡 설치 끝~
'빅데이터 > Hadoop' 카테고리의 다른 글
스파크 카프카 실시간 연동 구축 (0) | 2020.07.01 |
---|---|
SPARK 설치 후 zepplien까지 ~ (0) | 2020.06.25 |
CentOs7 - Python 3.6.8 설치 (12) | 2020.06.23 |
카프카 구축하기 (0) | 2020.06.23 |
CentOs7 방화벽 설정 부분 정리 (0) | 2020.06.22 |
댓글