1. 하둡 3가지 모드 (여기서는 Pseudo-distributed 모드 설치)
Standalone (독립실행) 모드
Pseudo-distributed(가상분산) 모드
Full distributed(완전분산) 모드
1) Standalone 모드
standalone 모드는 하둡의 기본 모드이다. 하둡 소스를 받아 압축을 푼 상태에서, 하둡은 사용자의 하드웨어에 대한 정보를 가지고 있지 않다. 따라서, 하둡은 로컬 머신에서만 실행된다. 다른 노드와 통신할 필요가 없기 때문에 standalone 모드에서는 HDFS를 사용하지 않고 다른 데몬들도 실행시키지 않는다. 이 모드의 목적은 독립적으로 MapReduce 프로그램의 로직을 개발하고 디버깅하는데 있다. 따라서 다른 데몬들과 서로 주고받는 부가 작업이 필요 없다.
2) Pseudo-distributed 모드
pseudo-distributed 모드는 클러스터가 한 대로 구성되어 있고, 모든 데몬 역시 이 한 대의 컴퓨터에서 실행된다. 이 모드는 코드 디버깅 시 standalone 모드에서의 기능을 보완할 수 있는데, 메모리 사용정도, HDFS 입출력 관련 문제, 다른 데몬과의 상호작용에서 발생하는 일을 검사할 수 있다. standalone과 pseudo-distributed 모드는 모두 개발이나 디버깅 목적으로 사용된다. 실제 하둡 클러스터는 fully distributed 모드에서 실행된다.
3) Fully distributed 모드
모든 기능이 갖추어진 클러스터 구성이며, 분산 저장과 분산 연산의 장점을 누릴 수 있다. 클러스터를 설명할 때는 아래와 같은 서버명을 사용한다.
master – 클러스터의 master 노드로서, NameNode와 JobTracker 데몬을 제공한다.
backup – SNN(Secondary NameNode 데몬)을 제공하는 서버
hadoop1, hadoop2, hadoop3, … – DataNode와 TaskTracker 데몬을 실행하는 slave들
2. 자바 설치
$ sudo su 명령어 입력 후 root 계정으로 로그인
자바 설치 명령어
Terminal
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-jdk7-installer
3. 하둡 다운로드
http://ftp.daum.net/apache/hadoop/common/ 에서
hadoop-1.2.1.tar.gz 파일 다운로드 (기본 Downloads 폴더에 저장됨)
$ cd Downloads (하둡을 다운 받은 폴더로 이동)
$ cp hadoop-1.2.1.tar.gz /usr/local (/usr/local 폴더로 파일 복사)
$ tar zxvf hadoop-1.2.1.tar.gz (압축풀기)
4. PATH 설정
터미널 창에서 vim 설치
$ sudo apt-get install vim (vim 설치)
$ cd ~
$ vim .profile (열고 난 뒤)
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
export HADOOP_INSTALL=/usr/local/hadoop-1.2.1
export PATH=$PATH:$HADOOP_INSTALL/bin
작성하고 저장 후 터미널 창에서
$ source .profile 명령을 통해 등록
$ hadoop 입력시 아래와 같이 그림이 나오면 정상적으로 수행되었음
터미널에서
$ sudo vim /usr/local/hadoop-1.2.1/conf/hadoop-env.sh
파일을 열고 제일 아래에
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
export HADOOP_HOME=/usr/local/hadoop-1.2.1
추가 후 저장
5. 하둡을 실행하기 위한 원격 시스템을 설치
터미널에서
$ apt-get install openssh-server
$ /etc/init.d/ssh restart (ssh 재실행)
$ netstat –ntl 입력했을 때 0 :::22 라는 Local Addr이 있으면 정상
ssh 설치후 ssh-keygen을 통해 마스터와 슬레이브, 한쌍의 키를 생성
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ ssh localhost
차례대로 실행하는 암호입력 또는 정보 입력에 아무런 정보 입력 안하고 엔터로 진행
6. xml 수정
$ sudo vim /usr/local/hadoop-1.2.1/conf/core-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop-1.2.1/hadoop-${user.name}</value>
</property>
</configuration>
$ sudo vim /usr/local/hadoop-1.2.1/conf/hdfs-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop-1.2.1/dfs/name</value>
</property>
<property>
<name>dfs.name.edits.dir</name>
<value>${dfs.name.dir}</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop-1.2.1/dfs/data</value>
</property>
</configuration>
$ sudo vim /usr/local/hadoop-1.2.1/conf/mapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
<property>
<name>mapred.local.dir</name>
<value>${hadoop.tmp.dir}/mapred/local</value>
</property>
<property>
<name>mapred.system.dir</name>
<value>${hadoop.tmp.dir}/mapred/system</value>
</property>
</configuration>
7. 하둡 실행
하둡 설치폴더(hadoop-1.2.1)에서 ./bin/start-all.sh 명령어를 입력 후
http://localhost:50030/jobtracker.jsp 사이트에 접속하였을 때
Map/Reduce Administration 사이트가 나오면 정상적으로 실행 완료
'Linux' 카테고리의 다른 글
CentOS OpenJDK 삭제 (0) | 2014.10.22 |
---|---|
Linux(CentOS) JAVA 설치 (0) | 2014.10.22 |
Linux(CentOS) 사용자 관리 (0) | 2014.10.21 |
Linux(우분투)에 이클립스 설치하기 (2) | 2014.02.13 |