일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- hadoop2
- 텐서플로
- 알고리즘
- 파이썬
- HelloWorld
- hive
- Java
- yarn
- C언어
- 딥러닝
- LSTM
- 그래프이론
- RNN
- 하둡2
- python
- 선형대수
- codingthematrix
- 주식분석
- NumPy
- 하이브
- Sort
- scrapy
- graph
- GRU
- tensorflow
- effective python
- C
- 코딩더매트릭스
- collections
- recursion
- Today
- Total
EXCELSIOR
하둡2 설치 및 실행 (가상 분산 모드) 본문
1. 프로토콜 버퍼 설치 (Protocol Buffer)
: 프로토콜 버퍼는 데이터를 연속된 비트로 만들고, 이렇게 만들어진 비트를 해석해 원래의 데이터를 만들 수도 있ㄷ. 현재 다양한 시스템이 이기종 혹은 내부 프로세스 간의 통신에 프로토콜 버퍼를 사용하고 있으며, 하둡2도 내부 데몬 간의 데이터 통신을 위해 프로토콜 버퍼를 적용했다.
하둡2에서 사용하는 프로토콜 버퍼 버전은 protobuf-2.5.0이다. 프로토콜 버퍼는 버전 간의 상호호환성을 지원하지 않으므로 다른 버전을 설치하지 않도록 주의해야 한다. 설치 파일을 내려받은 뒤 (/usr/local 디렉터리에 다운받았다고 가정)
cd /usr/local tar xvfz protobuf-2.5.0.tar.gz cd protobuf-2.5.0 ./configure make make install
설치가 완료되면 다음과 같이 protoc 명령어를 실행해 정확한 버전이 출력되는지 확인한다.
protoc --version libprotoc 2.5.0
ldconfig protoc --version libprotoc 2.5.0
2. 하둡2 다운로드 및 설치
1) 하둡2 다운로드 및 압축 파일 해제
wget "http://mirror.apache-kr.org/hadoop/common/stable2/hadoop-2.7.3.tar.gz" cd /usr/local tar xvfz hadoop-2.7.3.tar.gz #압축풀고 난 뒤 hadoop-2.7.3 디렉터리에 대한 심볼릭 링크를 생성 ln -s hadoop-2.7.3 hadoop2
# The java implementation to use. export JAVA_HOME=/usr/lib/jvm/java-8-oracle export HADOOP_PID_DIR=/usr/local/hadoop-2.7.3/pids export HADOOP_SECURE_DN_PID_DIR=${HADOOP_PID_DIR}
② masters 수정 및 slaves 수정
: 가상 분산 모드로 설치할 경우 보조네임노드를 실행해야 한다. 네임노드HA를 구성할 경우 스탠바이 네임노드가 보조네임노드의 기능을 대체한다. 하지만 가상 분산 모드로는 네임노드 HA를 구성할 수 없기 때문에 보조네임노드를 반드시 실행해야 한다. 참가로 하둡과는 달리 하둡2의 환셩설정 디렉터리에는 masters 파일이 생성돼 있지 않다. 따라서 vi에디터로 masters 파일을 생성해야 한다.
slaves 파일에는 데이터노드 호스트 목록을 설정해야 한다. 가상 분산 모드에서는 다음과 같이 설정한다.
vi masters localhost #혹은 hostname vi slaves localhost #혹은 hostname
: 하둡2에서는 fs.default.name 속성은 사용 중지(deprecated)됐기 때문에 fs.defaultFS를 사용한다.
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9010</value> </property> </configuration>
④ hdfs-site.xml 수정
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/usr/local/hadoop-2.7.3/data/dfs/namenode</value> </property> <property> <name>dfs.namenode.checkpoint.dir</name> <value>/usr/local/hadoop-2.7.3/data/dfs/namesecondary</value> </property> <property> <name>dfs.dataode.data.dir</name> <value>/usr/local/hadoop-2.7.3/data/dfs/datanode</value> </property> <property> <name>dfs.http.address</name> <value>localhost:50070</value> </property> <property> <name>dfs.secondary.http.address</name> <value>localhost:50090</value> </property> </configuration>
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
⑥ yarn-site.xml 수정
<configuration> <!-- Site specific YARN configuration properties --> <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> <property> <name>yarn.nodemanager.local-dirs</name> <value>/usr/local/hadoop-2.7.3/data/yarn/nm-local-dir</value> </property> <property> <name>yarn.resourcemanager.fs.state-store.uri</name> <value>/usr/local/hadoop-2.7.3/data/yarn/system/rmstore</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>localhost</value> </property> <property> <name>yarn.web-proxy.address</name> <value>0.0.0.0:8089</value> </property> </configuration>
3. 하둡2 실행
#네임노드 초기화 bin/hdfs namenode -format #하둡2 실행 sbin/start-all.sh #확인 jps 17974 NameNode 18118 DataNode 18461 ResourceManager 18301 SecondaryNameNode 18878 Jps 18767 NodeManager
하둡2는 얀을 위한 웹 인터페이스 외에도 맵리듀스 잡의 이력만 별도로 볼 수 있는 서버를 제공한다. 이 서버는 다음과 같이 mr-jobhistory-daemon.sh 스크립트를 이용해 실행한다.
sbin/mr-jobhistory-daemon.sh start historyserver starting historyserver, logging to /usr/local/hadoop-2.7.3/logs/mapred-root-historyserver-cjh.out
sbin/yarn-daemon.sh start proxyserver starting proxyserver, logging to /usr/local/hadoop-2.7.3/logs/yarn-root-proxyserver-cjh.out jps 2754 DataNode 3684 WebAppProxyServer 3108 ResourceManager 3595 JobHistoryServer 2604 NameNode 3420 NodeManager 3725 Jps 2943 SecondaryNameNode
1) 하둡2 웹 인터페이스
: localhost:50070 을 입력하면 아래와 같은 창이 나타난다.
2) 얀(YARN) 인터페이스
: localhost:8088을 입력하면 아래와 같은 화면이 나타난다.
3) 히스토리 서버
: localhost:19888에 접속하면 아래와 같은 화면이 나타난다. 이 화면에서는 얀 클러스터에서 실행된 맵리듀스 잡의 이력만 제공한다.
'DataBase > Hadoop' 카테고리의 다른 글
하이브 (Apache Hive) 개념 및 설치 (아파치 더비 사용) (0) | 2016.11.14 |
---|---|
하둡2 예제실행 (0) | 2016.11.11 |
하둡2 - 네임노드 HA (0) | 2016.11.07 |
하둡2 - 얀(YARN) (0) | 2016.11.04 |
매퍼(Mapper) 와 리듀서(Reducer) 클래스 (0) | 2016.10.14 |