메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


Hadoop Hadoop 설치 및 시작하기

구퍼 2013.03.06 09:45 조회 수 : 1951

Hadoop 설치 및 시작하기

 

Hadoop 의 구축 방법으로는

단독 작업 모드 (Stand-Alone Operation), 가상 분산 모드 (Pseudo-Distributed Operation), 완전 분산 모드 (Fully-Distributed Operation) 이렇게 3가지 방법이 있다.

본 포스팅에서는 가상 분산 모드(Pseudo-Distributed Operation)로 구축해 보도록 하겠다.

하둡 설치하기

 

아래의 아파치 하둡 페이지에서 다운로드를 받는다.

http://www.apache.org/dyn/closer.cgi/hadoop/common/

필자는 hadoop_1.1.1 버전을 받았으나, 다른 버전을 사용해도 상관없을 것이다.

tar.gz 로 끝나는 파일(hadoop-1.1.1.tar.gz)을 받으면 된다.

다운이 완료되었으면 알FTP를 통해 다운받은 파일을 전송한다.

전송이 완료되면

PuTTY 를 통해 원격접속하여 hadoop 설치를 진행하겠다.

서버에는 Ubuntu 12.04 버전이 설치되어있다.

그리고 자바는 필수적으로 설치되어 있어야 한다.(jdk1.6.x 권장)

알FTP로 전송한 hadoop-1.1.1.tar.gz가 있는 위치로 이동하여 tar파일의 압축을 푼다.

압축해제 명령어

tar -xvzf hadoop-1.1.1.tar.gz

hadoop-1.1.1.tar.gz 의 압축을 푼 것으로 설치는 완료되었다.

하둡 설치경로를 환경 변수설정 해주어야 한다.

# cd

# vi .profile

export JAVA_HOME=/usr/lib/jvm/java-6-sun

export HODOOP_INSTALL=/usr/local/hadoop-1.1.1

export PATH=$PATH:$HADOOP_INSTALL/bin

환경 설정을 적용한다.

# source .profile

가상 분산 모드(Pseudo-Distributed Operation) 설정하기

압축해제한 폴더경로로 이동하여 파일들을 살펴보면 대략 이러한 파일들이 나올것이다.

input, output 폴더는 테스트과정에서 생성된것임

xml 문서작성하기

vi 편집기를 이용하여 다음 3개의 xml 을 아래와 같이 수정한다.

vi conf/core-site.xml

vi conf/hdfs-site.xml

vi conf/mapred-site.xml

1. conf/core-site.xml

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>

2. conf/hdfs-site.xml

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

3. conf/mapred-site.xml

<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>


passphraseless ssh 설치하기

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

 

실행하기

다음의 명령어를 차례로 입력한다.

$ mkdir input
$ cp conf/*.xml input

$ bin/hadoop namenode -format
$ bin/start-all.sh
$ bin/hadoop fs -put conf input
$ bin/hadoop jar hadoop-examples-*.jar grep input output 'dfs[a-z.]+'
$ bin/hadoop fs -get output output
$ cat output/*

bin/start-all.sh 입력시 정상적으로 실행된다면 아래의 목록들이 확인될 것이다.

# jps

NameNode

SecondaryNameNode

JobTracker

DataNode

TaskTracker

만약 bin/start-all.sh 입력시 'JAVA_HOME is not set' 이라는 에러가 뜬다면

$ vi conf/hadoop-env.sh 문서에서

export JAVA_HOME='자바경로' 를 입력한다.

export앞에 #은 주석처리이니 빼줄것

정상적으로 진행됬을 경우

cat output/* 입력시 결과가 출력된다.

1개의 일치하는 파일을 찾았다.

  
설치 과정에서의 troubleshooting
- start-all.sh 실행시 데몬 프로세스가 구동되지 않거나 JAVA_HOME 못찾는 경우
> vi conf/hadoop-env.sh 에 JAVA_HOME 환경 설정 부분 주석 제거하고 JAVA 설치 정보 수정해 줌

- java.io.IOException: Not a file: 오류 발생 시
> bin/hadoop fs -rmr input          (input 삭제)
> bin/hadoop fs -put conf input   (로컬의 conf경로에 있는 파일을 hadoop의 input에 다시적재)

 

- 구동 확인 방법
. http://localhost:50030/jobtracker.jsp
. http://localhost:50070/dfshealth.jsp

번호 제목 글쓴이 날짜 조회 수
21 [Impala jdbc]CDP7.1.7환경에서 java프로그램을 이용하여 kerberized impala cluster에 접근하여 SQL을 수행하는 방법 gooper 2023.08.22 58
20 [Oracle 11g]Kudu table의 meta정보를 담고 있는 table_params의 백업본을 이용하여 특정 컬럼값을 update하는 Oracle SQL문 gooper 2023.09.04 13
19 [CDP7.1.7]EncryptionZone에 table생성및 권한 테스트 gooper 2023.09.26 14
18 [보안/인증]javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target발생 원인/조치내용 gooper 2023.10.24 236
17 [Hadoop Encryption] Encryption Zone에 생성된 table에 Hue에서 insert 수행시 User:hdfs not allowed to do 'DECRYPT_EEK' ON 'testkey' 오류 gooper 2023.11.01 12
16 [EncryptionZone]User:hdfs not allowed to do 'DECRYPT_EEK on 'enc_key'오류 gooper 2023.11.02 16
15 임시 테이블에서 데이터를 읽어서 partitioned table에 입력하는 impala SQL문 예시 gooper 2023.11.10 16
14 kudu table와 impala(hive) table정보가 틀어져서 테이블을 읽지 못하는 경우(Error Loading Metadata) 조치방법 gooper 2023.11.10 25
13 [CDP7.1.7]Encryption Zone내부/외부 간 데이터 이동(mv,cp)및 CTAS, INSERT SQL시 오류(can't be moved into an encryption zone, can't be moved from an encryption zone) gooper 2023.11.14 11
12 [CDP7.1.7]impala-shell수행시 간헐적으로 "-k requires a valid kerberos ticket but no valid kerberos ticket found." 오류 gooper 2023.11.16 11
11 [CDP7.1.7]impala-shell을 이용하여 kudu table에 insert/update수행시 발생하는 오류(Transport endpoint is not connected (error 107)) 발생시 확인할 내용 gooper 2023.11.30 45
10 [CDP7.1.7, Hive Replication]Hive Replication진행중 "The following columns have types incompatible with the existing columns in their respective positions " 오류 gooper 2023.12.27 7
9 [CDP7.1.7][Replication]Table does not match version in getMetastore(). Table view original text mismatch gooper 2024.01.02 4
8 [CDP7.1.7]Oozie job에서 ERROR: Kudu error(s) reported, first error: Timed out: Failed to write batch of 774 ops to tablet 8003f9a064bf4be5890a178439b2ba91가 발생하면서 쿼리가 실패하는 경우 gooper 2024.01.05 7
7 [CDP7.1.7, Replication]Encryption Zone내 HDFS파일을 비Encryption Zone으로 HDFS Replication시 User hdfs가 아닌 hadoop으로 수행하는 방법 gooper 2024.01.15 1
6 [CDP7.1.7]BDR작업후 오류로 Diagnostic Data를 수집하는 동안 "No content to map due to end-of-input at [Source: (String)""; line: 1, column: 0]" 오류 발생시 조치 gooper 2024.02.20 234
5 [Active Directory] AD Kerberos보안 설정 변경 방법 (Maximum lifetime for user ticket, Maximum lifetime for user ticket renewal) gooper 2024.03.12 16
4 [CDP7.1.7]Hive Replication수행중 Specified catalog.database.table does not exist : hive.db명.table명 오류 발생시 조치방법 gooper 2024.04.05 1
3 [CDP7.1.7] oozie sqoop action으로 import혹은 export수행시 발생한 오류에 대한 자세한 로그 확인 하는 방법 gooper 2024.04.19 0
2 [Impala] alter table구문수행시 "WARNINGS: Impala does not have READ_WRITE access to path 'hdfs://nameservice1/DATA/Temp/DB/source/table01_ccd'" 발생시 조치 gooper 2024.04.26 0

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로