-
Mac에 Hadoop 설치 / 실행 해보기💾 big data/🐘 hadoop 2022. 10. 3. 17:24
Install / Setting
$ wget <https://archive.apache.org/dist/hadoop/core/hadoop-2.7.6/hadoop-2.7.6.tar.gz>
수정해야 하는 파일들
- hadoop-env.sh (하둡 사용)
- core-site.xml (Pseudo-Distributed Mode)
- hdfs-site.xml (Pseudo-Distributed Mode)
- mapred-site.xml (yarn)
- yarn-site.xml (yarn)
Pseudo-Distributed Mode???
- 각 하둡 daemon이 각각의 분리된 Java 프로세스에서 실행되는 모드
- standalone 모드와 다르게 가상으로 분산시스템을 경험할 수 있다.
hadoop-env.sh
$ vi hadoop-env.sh ## Java 경로 설정 export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0.13.jdk/Contents/Home
⇒ 하둡 클러스터 사용할 준비 완료
하둡 최상위 경로에서 아래 명령어를 입력하여 정상 실행 되는지 확인
$ bin/hadoop
core-site.xml 변경
$ vi core-site.xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>
hdfs-site.xml
$ vi hdfs-site.xml <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
- yarn으로 mapreduce 및 resourceManager, nodeManager daemon을 실행할 수 있다.
mapred-site.xml
$ vi mapred-site.xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.application.classpath</name> <value >$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value > </property> </configuration>
yarn-site.xml
$ vi yarn-site.xml <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.env-whitelist</name> <value >JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_HOME,PATH,LANG,TZ,HADOOP_MAPRED_HOME</value > </property> </configuration>
하둡 실행
SSH
ssh 설치 여부 및 권한 확인
$ ssh localhost
→ password 입력하라고 뜬다면 권한을 부여해주어야 함.
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys $ chmod 0600 ~/.ssh/authorized_keys
HDFS 포맷
## 파일 시스템 포맷 $ bin/hdfs namenode -format
실행
$ sbin/start-all.sh ## 로컬에서 mapreduce 실행 $ sbin/start-dfs.sh ## yarn에서 실행 $ sbin/start-yarn.sh
맵 리듀스를 실행하기 위해서 HDFS 디렉토리가 필요하다.
bin/hdfs dfs -mkdir /user bin/hdfs dfs -mkdir /user/<username>
실행 확인
$ jps ## 결과 46401 DataNode 46307 NameNode 45028 ResourceManager 55415 Jps 38792 Launcher 46521 SecondaryNameNode 474 49517 NodeManager
접속
Cluster status : http://localhost:8088
HDFS status : http://localhost:50070
실행 종료
sbin/stop-all.sh # 또는 sbin/stop-dfs.sh # 또는 sbin/stop-yarn.sh
출처
https://key4920.github.io/docs/bigdata_platform/Hadoop/hadoop_install_M1/
https://hadoop.apache.org/docs/r2.7.6/hadoop-project-dist/hadoop-common/SingleCluster.html