KnP House for Daily

CentOS 기반 Hadoop 2.2 설치 세팅 본문

Programming/Etc..

CentOS 기반 Hadoop 2.2 설치 세팅

K.ung 2014.08.26 17:31

 

1      Hadoop 2.x 다운

n  http://apache.mirror.cdnetworks.com/hadoop/common/ (stable version 다운)

 

2      JDK 설치 & 설정

2.1       JDK 다운 & 설정

n  http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html (v1.7 or v1.6 다운)

n  tar xvf (jdk파일이름.tar.gz)

n  mv (설치dri) /usr/local

n  chmod 755 (설치경로)

n  vi /etc/profile

n  export JAVA_HOME=/usr/local/jdk이름

n  export PATH=$PATH:$JAVA_HOME/bin

n  which java 또는 java –version 으로 체크

n  source /etc/profile

 

3      Hadoop 설치시 필요한 것

n  Development Tools: 필요한 패키지 존재

n  Additional Tools

n  maven : Hadoopmaven으로 설치

n  cmake, libssl-dev : 하둡 설치 시 Common Lib 와 컴파일로 사용

n  ssh : 하둡에서 ssh설정에 필요

 

 

4      Maven 설치 & 설정

n  다운 : http:.//mirror-apache-kr.org/maven

n  tar xvf 메이븐파일.tar.gz

n  ln –s /메이븐경로 /경로/maven  (심볼릭 링크)

n  vi /etc/profile 열기

n  export M2_HOME=/usr/local/maven (( 이 경로에 설치했음 ))

n  export PATH=$PATH:$M2_HOME/bin

n  source /etc/profile

n  mvn –version (확인하기)

 

5      cmake 설치

n  yum install cmake (자동 설치)

 

6      Development Tools & Additional Tools 설치

n  yum groupinstall “Development tools”

n  yum groupupdate “Development tools”

n  Additional Tools 도 상동

 

7      Proto buffer 설치

n  통신을 통해 데이터를 주고 받을 때 각종 데이터를 byte형태로 바꾸어준다. (Hadoop 컴파일시 2.5.0을 사용해야 하기 때문에 설치)

n  mk tools

n  cd tools

n  /tools#  wget http://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz

n  tar –zxvf protobuf-2.5.0.tar.gz

n  cd protobuf-2.5.0

n  ./configure

n  make

n  make install

 

8      Hadoop Compile

n  소스 컴파일 용 tar 다운

n  /tools#  wget http://mirror-apache-kr.org/hadoop/common/hadoop-2.2.0/hadoop-2.2.0-src.tar.gz

n  tar xfz Hadoop-2.2.0-src.tar.gz

n  > Hadoop Auth 에러 패치용

n  tools/Hadoop-2.2.0-src$  wget http://issues.apache.org/jira/secure/attachment/12614482/HADOOP-10110.patch

n  patch –p0 < HADOOP-10110.patch

n  > Hadoop Compile 작업

n  mvn package –Pdist,native –DskipTests –Dtar

 

9      Hadoop path setting

n  vi ~/.bashrc

n  


n  위 경로 작성(각자의 경로에 맞게 수정)

n  HADOOP_PREFIX=”~/hadoop-2.2.0-src/hadoop-dist/target/Hadoop-2.2.0   이다.

n  source ~/.bashrc

 

10  ssh설정

n  ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

n  cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

n  chmod 644 ~/.ssh/authorized_keys

n  ssh localhost  (localhost 계정 생성)

 

11  Hadoop 환경 세팅

11.1   hadoop-env.sh

n  하둡이 실행하는 모든 프로세스에 적용 되는 시스템 환경값에 대한 스크립트 파일로 전체 클러스터 노드에 복사해 사용하는 설정 파일이다.

n  export JAVA_HOME=”/usr/bin/jvm/java-7-openjdk-amd64”

n  export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_PREFIX/lib/native

n  export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib/native"

11.2   yarn-env.sh

n  분산된 환경을 운영 할 수 있도록 제공하는 환경설정파일이다.

n  export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_PREFIX}/lib/native

n  export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib/native"

11.3   core-site.xml

n  HDFSMapReduce에서 공통으로 사용하는 로그파일, 네트워크 튜닝, I/O튜닝, 파일 시스템 튜닝, 압축 등과 같은 하둡 코어를 위한 환경 설정이다.

n  <property>

n     <name>fs.default.name</name>

n      <value>hdfs://localhost:9000</value>

n      <final>true</final>

n  </property>

11.4   hdfs-site.xml

n  네임노드, 보조 네임노드, 데이터노드 등과 같은 HDFS 데몬을 위한 환경 설정을 구성한다. dfs.namenode.name.dir은 파일의 디렉토리 정보와 파일 정보등을 저장하는 폴더이다. 해당 저장위치는 hdfs가 아닌 로컬에 저장을 한다. dfs.datanode.name.dir은 하둡 파일 시스템에 저장되는 모든 파일이 저장되는 위치이다.

n  <property>

    <name>dfs.namenode.name.dir</name>

    <value>file:${HADOOP_PREFIX}/hadoop/dfs/name</value>

    <final>true</final>

</property>

<property>

    <name>dfs.datanode.data.dir</name>

    <value>file:${HADOOP_PREFIX}/hadoop/dfs/data</value>

    <final>true</final>

</property>

<property>

    <name>dfs.permissions</name>

    <value>false</value>

</property>

11.5   mapred-site.xml

n  JobTracker TaskTrack과 같이 맵 리듀스 데몬을 위한 환경설정 파일이다.

n  mapred-site.xml로 변경하여 사용

n  <property>

    <name>mapreduce.framework.name</name>

    <value>yarn</value>

</property>

<property>

    <name>mapred.system.dir</name>

    <value>file:${HADOOP_PREFIX}/hadoop/mapred/system</value>

    <final>true</final>

</property>

<property>

    <name>mapred.local.dir</name>

    <value>file:${HADOOP_PREFIX}/hadoop/mapred/local</value>

    <final>true</final>

</property>

11.6   yarn-site.xml

n  yarn과 관련된 데몬을 설정하는 파일

n  <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>        

 

11.7   환경 세팅에 맞게 디렉토리 생성

n  ~$ mkdir –p ${HADOOP_PREFIX}/hadoop/dfs/name

n  ~$ mkdir –p ${HADOOP_PREFIX}/hadoop/dfs/data

n  ~$ mkdir –p ${HADOOP_PREFIX}/hadoop/mapred/system

n  ~$ mkdir –p ${HADOOP_PREFIX}/hadoop/mapred/local

n  >> ${HADOOP_PREFIX}를 직접 경로 써서 하는게 나은듯.

 

12  Hadoop 시작

12.1   최초 실행시 NameNode 포맷

n  ~#  hdfs namenode –format

n  ${HADOOP_PREFIX{/sbin/start-all.sh

n  ${HADOOP_PREFIX{/sbin/stop-all.sh

n  jps  ( 실행 확인 )

n  http://localhost:8088 (web interface )

저작자 표시 비영리 변경 금지
신고
0 Comments
댓글쓰기 폼