본문 바로가기
Coding/Hadoop & Spark

Ubuntu에서 하둡 HDFS 시작하기

Ubuntu : 20.04.3 (Focal Fossa)

Hadoop : 3.3.1


$ cd ~/hadoop/sbin

$ ./start-dfs.sh

왜 ... 또 ... 에러가 났지요?

 

WARN util.NativeCodeLoader : Unable to load native-hadoop library for your platform....

// 이건 에러까지는 아니고 경고라서 결과가 나오는데 지장없다

// 하지만 이왕 뜬 거 해결하고 싶은데 아직 해결 못했다 아는 사람 댓글 달아주세요

// .bashrc에 native경로 추가하는 방법 안됨

 

localhost connection refused

문제는 ssh 연결이 안된다는 것이다.

우선 우분투를 설치하고 ssh를 설치한 기억이 없으니 설치부터 진행.

 

$ sudo apt install openssh-server

 

 

다른 에러가 났다.

Permission denied (publickey,password)

승인 거절 (공개키, 비밀번호)

 

ssh 키와 비번을 생성하지 않았으니 생성해야 한다.

참고 : https://velog.io/@somnode/ssh-localhost-Permission-denied-해결

 

ssh localhost Permission denied 해결

ssh localhost를 위해서 기본적으로 아래 과정을 진행해야 한다.이렇게 설정을 했는데도 아래와 같은 에러가 발생했다.이럴 땐 ~/.ssh 디렉터리의 권한을 700으로 변경하자.권한이 775였을 때 안 되었

velog.io

 

~/.ssh/config

BatchMode yes
CheckHostIP no
StrictHostKeyChecking no
PubkeyAuthentication yes
PasswordAuthentication no
ForwardX11 no

 

 

이후 start-dfs.sh가 정상적으로 작동하는 모습을 볼 수 있다. 

 

 

아 여기서 계속 ./hdfs 라고 쓰기 귀찮으니까 hdfs로만 쓸 수 있게 추가 설정 해준다. 

=> PATH에 hadoop/bin, hadoop/sbin 추가

$ vi ~/.bashrc

 

마지막 줄에

export PATH=$PATH:~/hadoop/bin:~/hadoop/sbin

추가

 

hdfs에서 홈 디렉토리 만들기

$ cd ~/hadoop/bin

$ hdfs dfs -mkdir /user

$ hdfs dfs -mkdir /user/bigdata

 

$ hdfs dfs -mkdir input

 

Local에 있는 파일을 hdfs로 넣기

$ hdfs dfs -copyFromLocal ~/hadoop/README.txt input