Hadoop

Hadoop3를 설치해보자! 윈도우 위에!

케키키케 2021. 6. 7. 16:41

참고 

https://kontext.tech/column/hadoop/246/install-hadoop-300-in-windows-single-node

 

설치

http://mirror.navercorp.com/apache/hadoop/common/hadoop-3.2.2/

 

Index of /apache/hadoop/common/hadoop-3.2.2

 

mirror.navercorp.com

 

환경변수 설정

시스템-고급시스템설정-환경변수-시스템변수-새로만들기 HADOOP_HOME 추가

*설치 주의 ! 경로에 공백이 포함되면 안된다. ex) program file/hadoop....

 

path에 HADOOP_HOME/bin 추가

 

 

참고 링크에 가서 설정 파일들을 수정한다.

그냥 복붙.

 

그리고 hadoop namenode -format 실행

 

에러 발생 

java.lang.RuntimeException: java.io.FileNotFoundException: Could not locate Hadoop executable: C:\hadoop-3.2.2\bin\winutils.exe -see https://wiki.apache.org/hadoop/WindowsProblems
        at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:736)
        at org.apache.hadoop.util.Shell.getSetPermissionCommand(Shell.java:271)
        at org.apache.hadoop.fs.FileUtil.execSetPermission(FileUtil.java:1346)
        at org.apache.hadoop.fs.FileUtil.setPermission(FileUtil.java:1299)
        at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.clearDirectory(Storage.java:456)
        at org.apache.hadoop.hdfs.server.namenode.NNStorage.format(NNStorage.java:591)
        at org.apache.hadoop.hdfs.server.namenode.NNStorage.format(NNStorage.java:613)
        at org.apache.hadoop.hdfs.server.namenode.FSImage.format(FSImage.java:188)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:1230)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1673)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1783)
Caused by: java.io.FileNotFoundException: Could not locate Hadoop executable: C:\hadoop-3.2.2\bin\winutils.exe -see https://wiki.apache.org/hadoop/WindowsProblems
        at org.apache.hadoop.util.Shell.getQualifiedBinInner(Shell.java:619)
        at org.apache.hadoop.util.Shell.getQualifiedBin(Shell.java:592)
        at org.apache.hadoop.util.Shell.<clinit>(Shell.java:689)
        at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:78)
        at org.apache.hadoop.hdfs.server.common.HdfsServerConstants$RollingUpgradeStartupOption.getAllOptionString(HdfsServerConstants.java:128)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.<clinit>(NameNode.java:332)
2021-06-07 16:20:58,193 INFO util.ExitUtil: Exiting with status 1: java.lang.RuntimeException: java.io.FileNotFoundException: Could not locate Hadoop executable: C:\hadoop-3.2.2\bin\winutils.exe -see https://wiki.apache.org/hadoop/WindowsProblems

 

에러 원인 파악 

https://cwiki.apache.org/confluence/display/HADOOP2/WindowsProblems

 

WindowsProblems - HADOOP2 - Apache Software Foundation

Problems running Hadoop on Windows Hadoop requires native libraries on Windows to work properly -that includes to access the file:// filesystem, where Hadoop uses some Windows APIs to implement posix-like file access permissions. This is implemented in HAD

cwiki.apache.org

HADOOP.DLL and WINUTILS.EXE.를 연결된 github링크에서 다운받아서 HADOOP_HOME/bin에 추가한다.

아휴 짱나

난 여기서 가져왔다. https://github.com/steveloughran/winutils/tree/master/hadoop-3.0.0/bin

 

steveloughran/winutils

Windows binaries for Hadoop versions (built from the git commit ID used for the ASF relase) - steveloughran/winutils

github.com

 

두개 추가하고 네임노드 포맷 재실행하니 네임노드는 포맷되었따.

 

이제 HADOOP_HOME/sbin으로 이동해서 start-dfs.cmd 실행

 

에러

이번엔 데이터노드가 안켜진다. 네임노드는 켜짐

Too many failed volumes - current valid volumes: 0, volumes configured: 1, volumes failed: 1, volume failures tolerated: 0

 

볼륨이 제대로 등록이 안된 것 같다.

아휴 짱나