메모장

우분투16.04 하둡2.7.3 설치 본문

프로그래밍/하둡

우분투16.04 하둡2.7.3 설치

hiandroid 2017. 9. 6. 13:18
반응형

우분투 16.04에서 하둡2.7.3 설치


hadoop-2.7.3.tar.gz 파일을 다운로드 받는다.


.bash_profile에 export정보 저장


# java

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64


# Hadoop

export HADOOP_HOME=~/dev/hadoop-2.7.3

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

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

 

source .bash_profile

 


모드 설정

독립모드(Standalone), 의사분산(Pseudo-distributed), 완전분산(Fully distributed)

$HADOOP_HOME/etc/hadoop 폴더 내 -site.xml 파일수정


시작하는데 사용할 환경은 하나의 NameNode 와 DataNode, Secondary NameNode 를 갖는 가상분산 모드이다.

환경설정 작업은 ~/.bashrc 파일의 각종 PATH 설정과 SSH 키의 생성, 

$HADOOP_HOME/etc/hadoop 아래의 core-site.xml , hdfs-site.xml, yar-site.xml, mapred-site.xml 을 수정하는 작업으로 이뤄진다.


- SSH 설정

ubuntu

$ sudo apt-get install ssh

$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

$ ssh localhost


 – core-site.xml 파일 수정

    <configuration>

        <property>

            <name>fs.defaultFS</name>

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

        </property>

    </configuration>


  – hdfs-site.xml 파일 수정

    <configuration>

        <property>

            <name>dfs.replication</name>

            <value>1</value>

        </property>

        <property>

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

            <value>/data/hadoop/dfs/name</value>

        </property>

        <property>

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

            <value>/data/hadoop/dfs/data</value>

        </property>

    </configuration>


    ※ namenode foler 와 datanode folder 는 개인마다 다를 수 있다.


 – yarn-site.xml 파일 수정

    <configuration>

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

    </configuration>


    – mapred-site.xml 파일 수정 (mapred-site.xml.template 로 되어 있는데 이름을 변경하여 복사해 둔다.)

    <configuration>

        <property>

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

            <value>yarn</value>

        </property>

    </configuration>


임시경로 생성

sudo mkdir /data

sudo mkdir /data/hadoop

sudo chown nation909:nation909 /data/*

sudo chmod 755 /data/

mkdir /data/hadoop/tmp

mkdir /data/hadoop/dfs

mkdir /data/hadoop/dfs/name

mkdir /data/hadoop/dfs/data


HDFS 파일시스템 포멧

(datanode format : /tmp/hadoop-nation909/dfs/data 를 삭제후)

 – 서비스 최초 실행시 namenode 를 포맷한다. (이후 실행 이후부터는 포맷할 필요없다.)

hdfs namenode -format

 

- HDFS, YARN, 맵리듀스 데몬 구동

 – 이제 하둡 서비스를 실행하자. hadoop 2.x 버전부터 Yarn 기반의 MapReduce 작업이므로 1.x 의 start-all.sh 를 사용하지 않는다.

$ start-dfs.sh

$ start-yarn.sh

$ mr-jobhistory-daemon.sh start historyserver


 – 정상적으로 실행된다면, 처리단계의 로그가 terminal 에 표시될 것이다. 클러스터 구성요소들이 확인되는지 확인하기 위해

    jps

수행해 본다. 정상적이라면, 다음과 같은 화면이 출력될 것이다.

    9008 NodeManager

    6242 SecondaryNameNode

    9797 Jps

    5865 NameNode

    8619 ResourceManager

    6028 DataNode

 

- HDFS, YARN, 맵리듀스 데몬 정지

$ mr-jobhistory-daemon.sh stop historyserver

$ stop-yarn.sh

$ stop-dfs.sh




기본적인 hdfs 연산

디렉토리 생성

hdfs dfs -mkdir /Users

hdfs dfs -mkdir /Users/whitexozu

 

hadoop fs -mkdir /Users

hadoop fs -mkdir /Users/whitexozu

 

HDFS 로 파일복사

hadoop fs -copyFromLocal input/file.txt /Users/whitexozu/output.txt

 

HDFS 파일을 로컬로 복사

hadoop fs -copyToLocal output.txt output.copy.txt

 

디렉토리 확인

hadoop fs -ls /

hdfs dfs -ls /

 


- amdin site 확인

네임노드 : http://localhost:50070/

데이터노드 : http://localhost:50030/

리소스 매니저 : http://localhost:8088/

히스토리 서버 : http://localhost:19888/



참고

http://115.137.34.186/hadoop_2-7-3_install/

반응형