하둡 설치 신현호 이영건.

Slides:



Advertisements
Similar presentations
ⓒ 2015 NHN Entertainment Corp. Django 로 만드는 초간단 블로그 시스템운영팀 김영태 개발환경 구축.
Advertisements

을지대학교 무선 네트워크 사용 방법 2010 년 06 월 01 일. 을지대학교 무선 네트워크 사용 방법 1. PC 무선랜 카드 활성화 및 체크 1 단계 : 시작 -> 설정 -> 네트워크 설정 2 단계 : 무선 네트워크 설정 선택 -> 마우스 버튼 오른쪽 클릭 -> 사용.
1 강. 안드로이드 개요 및 개발 환경 구축 - 안드로이드 개요 -JDK 설치 -Path 설정 - 이클립스 설치 -ADT, SDK 설치 Lecturer Kim Myoung-Ho Nickname 블스
Big Data & Hadoop. 1. Data Type by Sectors Expected Value using Big Data.
Android 프로그램개발 환경. 학습 목표 ■ 교육 목표  JDK 설치  JDK 환경 설정  Eclipse 설치  Android SDK 설치  ADT Plug-in 설치  Android Virtual Device(AVD) 설치  Android 예제 프로그램.

기초C언어 제1주 실습 강의 소개, C언어 개요, Cygwin/Eclipse 사용 컴퓨터시뮬레이션학과 2016년 봄학기
뇌를 자극하는 Windows Server 2012 R2
소리가 작으면 이어폰 사용 권장!.
Image & Video processing
Hadoop 의사분산모드 환경설정.
Cross Compiler를이용한 커널 컴파일 및 포팅
Cross Compiler를이용한 커널 컴파일 및 포팅 1
CUDA Setting : Install & Compile
Hadoop 2.완전 분산 처리.
Linux/UNIX Programming
Ch. 1 LINUX SYSTEM.
ANSYS17.2 Student 제품 무료 다운로드
Windows 8 Ksystem G&I 설치.
5장 Mysql 데이터베이스 한빛미디어(주).
Mysql Install on Azure
Ubiquitous Computing Practice - Part I (Installation) -
임베디드 시스템 개론 크로스 플랫폼 설치 2일차 강의 자료 Embedded System Lab.
한국골프대학 종합정보시스템 Windows Vista 사용자를 위한 Component 설치안내서
한국골프대학 종합정보시스템 Windows 7 사용자를 위한 Component 설치안내서
Hadoop 김연왕
Hadoop 김연왕
4-1장. MySQL 제13장.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
Root Filesystem Porting
Introduction to Big Data, Summer, 2013
Root Filesystem Porting
Hadoop 김연왕
부트로더와 Self Programming
Cross Compiler 설치.
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
FTP 프로그램의 활용 FTP 프로그램의 용도 인터넷 공간에 홈페이지 파일을 업로드할 때 필요
5장 Mysql 데이터베이스 한빛미디어(주).
Cross Compiler를이용한 커널 컴파일 및 포팅
시스템 인터페이스 Lab3 Unix 사용법 실습.
2장. JSP 프로그래밍을 위한 환경구성 제2장.
㈜시스원이 제공하는 시스템 관리 통합 솔루션 SysmanagerOne Agent설치 안내서
설치 환경 □ 운영체제 버전 : CentOS Linux 7.2 □ 리눅스 커널 버전 :
IPython Notebook + Spark + TensorFlow on MacOS
툴 설치 가이드 PrimeTime SynopsysMentor.
툴 설치 가이드 Formality SynopsysMentor.
Adobe 제품 다운로드 및 설치 방법 안내 Adobe Creative Cloud Adobe License 권한을 받으신 분
Linux/UNIX Programming
DataScience Lab. 박사과정 김희찬 (목)
Nessus 4 설치 정보보호응용 조용준.
Eclipse CDT에서 프로젝트를 Export 하고 Import 하는 방법
PMIS 서버 설정 환경설정 작성자 : 배경환.
빌드 성공.
S-Work 2.0 DRM 신규 버전 설치 가이드 SOFTCAMP
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
Kernel, Ramdisk, JFFS2 Porting
STS 에서 웹 서버 설치 방법.
OpenCV 설정 2.21 만든이 딩딩.
Introduction to JSP & Servlet
KISTI Supercomputing Center 명훈주
Homework #5 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
시스템 인터페이스 Lab1 X-window 및 명령어 사용.
Homework #3 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
9 브라우저 객체 모델.
슬라이드 쇼의 설정 슬라이드 쇼의 실행 파일과 폴더의 관리 글꼴을 포함해서 저장 웹 페이지로 게시 압축 파일
FTP 스캔 설정 방법 강사 : 이성휘 대리.
Docker Study 6~7.
K PaaS-TA 앱 운영.
Presentation transcript:

하둡 설치 신현호 이영건

하둡 설치 전 작업 ssh, rsync, jdk 를 설치한다. 마스터의 경우 하둡 파일시스템의 쓰기 권한을 위해서는 root 계정으로 로그인 해야한다.

테스트 환경 리눅스 : 우분투 11.04 하둡 버전: hadoop-0.20.2 Jdk 버전: jdk1.6.0_25 하둡은 /hadoop 폴더에 설치 -/hadoop/hadoop-0.20.2 jdk 는 /usr/jdk1.6.0_25 폴더에 설치

설정 파일 설명 hadoop-env.sh - Hadoop이 실행하는 모든 프로세스에 적용되는 시스템 환경 값에 대한 스크립트 - 환경변수에 대해서 시스템 변수로 등록해 사용하는 방식이 아니라, 이 파일에 모든 환경 변수를 설정하고 이 파일을 전체 클러스터 노드에 복사해 사용 core-site.xml - Hadoop 설치 후 로그파일, 네트워크 튜닝, I/O튜닝, 파일 시스템 튜닝, 압축 등과 같이 기본적인 하부 시스템 설정 - 맵리듀스에서도 공통으로 사용 hdlf-site.xml - Hadoop파일 시스템을 위한 설정파일로 자세한 항목은 hdfs-default.xml파일을 참고 Masters - 세컨드리 네임 노드가 실행될 서버지정 Slaves - 데이터 노드가 실행될 서버지정 hadoop-metrics.properties - Hadoop에서 각 기능별(파일시스템, 맵리듀스)로 모니터링 데이터를 수집하는 방식에 대한 설정

하둡 설치 하둡 다운로드 메인 페이지 : http://hadoop.apache.org 다운로드 : http://hadoop.apache.org/core/releases.html 설치 버전 : hadoop-0.20.2 ./conf : 환경설정 파일 존재 ./bin : 실행 파일 존재 ./logs : 로그 파일 존재 ./docs : 도움말 문서 존재 압축을 풀고 자신이 원하는 폴더로 이동 tar xvzf hadoop-* 명령 이용 (* 버젼임) 하둡 설정 파일 초기화 하기 (./ 은 하둡이 설치된 폴더) ./src/core/core-default.xml 의 내용을 ./conf/core-site.xml 로 붙여 넣는다. ./src/hdfs/hdfs-default.xml 의 내용을 ./conf/hdfs-site.xml 로 붙여 넣는다. ./src/mapred/mapred-default.xml 의 내용을 ./conf/mapred-sitd.xml 로 붙여 넣는다.

/conf/hadoop-env. sh 설정 (아래 내용을 추가 또는 변경한다 ./conf/hadoop-env.sh 설정 (아래 내용을 추가 또는 변경한다. 아래 내용중 주석이 있는 경우 #제거) export JAVA_HOME=/usr/local/jdk1.6.0_25 export HADOOP_HOME=/hadoop/hadoop-0.20.2 export HADOOP_SLAVES=${HADOOP_HOME}/conf/slaves export HADOOP_LOG_DIR=${HADOOP_HOME}/log 참고 : jdk 와 hadoop이 다른 곳에 설치 되었다면 JAVA_HOME 과 HADOOP_HOME의 값을 자신이 설치된 경로로 바꾸어주면된다. ./conf/core-site.xml (아래의 속성 값을 찾아 아래와 같이 변경한다.) <property> <name>fs.default.name</name> <value>hdfs://master:9000</value> <description> The name of the default file system. Either the literal string "local" or a host:port for NDFS. </description> </property> <property> <name>hadoop.tmp.dir</name> <value>/hadoop/tmp</value> <description>A base for other temporary directories.</description> </property> 참고 : 속성 값에 지정한 경로의 실제 폴더가 없어도 하둡 실행시 자동으로 폴더가 생성되므로 폴더를 미리 만들 필요는 없다. fs.default.name : name 서버 경로 hadoop.tmp.dir : 하둡의 모든 데이터 저장과 임시 공간에 대한 최상위 경로

/conf/hdfs-site. xml (아래의 속성 값을 찾아 아래와 같이 변경한다 ./conf/hdfs-site.xml (아래의 속성 값을 찾아 아래와 같이 변경한다.) <property> <name>dfs.name.dir</name> <value>/hadoop/name</value> </property> <property> <name>dfs.data.dir</name> <value>/hadoop/data</value> </property> 참고 : dfs.name.dir : 파일의 디렉토리 정보와 파일 정보 등을 저장하는 폴더 dfs.data.dir : 하둡 파일 시스템에 저장되는 모든 파일이 저장되는 위치 /conf/mapred-site.xml (아래의 속성 값을 찾아 아래와 같이 변경한다.) <property> <name>mapred.job.tracker</name> <value>master:9001</value> <description> The host and port that the MapReduce job tracker runs at. If "local", then jobs are run in-process as a single map and reduce task. </description> </property>

<property> <name>mapred. map <property> <name>mapred.map.tasks</name> <value>2</value> <description> define mapred.map tasks to be number of slave hosts </description> </property> <property> <name>mapred.reduce.tasks</name> <value>2</value> <description> define mapred.reduce tasks to be number of slave hosts </description> </property> <property> <name>dfs.replication</name> <value>1</value> </property>

기타 속성들의 정보는 ./docs 의 문서들을 참조하기 바란다. 호스트명 등록하기 위에서 속성값에 사용 했던 호스트명 master는 master 컴퓨터를 나타내는 호스트명으로 /etc/hosts 에 명시할 수 있다. 예) master ip가 222.222.222.100 이라면 /etc/hosts 파일을 열어 222.222.222.100 master 위 내용을 추가한다. 참고: /etc/hosts 에 추가된 ip는 ip대신 호스트명으로 대신 사용할 수 있다. 설정파일들에 내용 중 ip 가 쓰여야 할 곳에 호스트명으로 대신 쓴다면 ip가 변경되는 상황일때 설정 파일들의 설정 값을 바꿀 필요 없이 /etc/hosts 파일에서 ip 만 바꾸면 되므로 유용하다. master, slaves 노드 추가하기 ./conf/masters 파일을 열어 master 컴퓨터의 ip 혹은 호스트명을 입력한다. ※ master 라고 입력한다. ./conf/slaves 파일을 열어 slave 컴퓨터들의 ip 혹은 호스트명을 입력한다. ※ ip를 입력해도 되지만 /etc/hosts에 slave 호스트명을 추가하고 호스트명을 입력하는 것도 좋은 방법이다.

ssh 공개키 만들기 설명 : hadoop은 ssh 접속을 통하여 명령을 송신,수신한다 ssh 공개키 만들기 설명 : hadoop은 ssh 접속을 통하여 명령을 송신,수신한다. 공개키를 설정하지 않으면 hadoop내 ssh 접속마다 패스워드를 요구하므로 공개키를 만드는 것이 편하다. ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa (공개키 만들기) cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys (공개키 복사) 위 두 명령을 수행하여 생성된 파일 authorized_keys 을 각 slave 컴퓨터의 ~/.ssh 에 복사한다. master , slave 컴퓨터의 hadoop 설정은 동일하게 하므로 설정이 끝난 /hadoop 폴더를 압축하여 각 slave 컴퓨터에 동일 위치에 복사하면 된다. master 의 경우 - hadoop namenode –format 명령을 수행하여 hadoop 파일 시스템을 초기화한다. - start-all.sh 명령을 수행하여 hadoop 데몬을 실행시킨다. Slave 의 경우 -start-all.sh 명령만 수행한다. 참고 : hadoop설치 경로의 bin 경로를 ~/.bashrc 나 /etc/profile 에 PATH 환경변수를 지정하여 사용할수 있다. (어떤 경로에서나 hadoop 실행가능 아래 내용을 추가한다.) HADOOP_HOME= 하둡 설치경로 export PATH=$PATH:$HADOOP_HOME/bin

설치 확인 및 명령어 브라우저를 띄워서 http://master:50030 접속 node 연결 개수 및 현재 작업이나 완료 작업 등을 확인할 수 있다. 브라우저를 띄워서 http://master:50070 접속 리소스 정보를 확인할 수 있다. stop-all.sh 명령어 hadoop 실행 종료 로그확인 하둡 경로의 logs 폴더를 확인하라 하둡 파일 시스템 제어 명령어 hadoop dfs –ls : 쉘의 ls 명령어와 동일 hadoop dfs –mkdir <경로> : mkdir 명령어와 동일 hadoop dfs –rmr <경로> : rm –R 명령어와 동일 hadoop dfs –put <로컬경로> <하둡 파일시스템경로> : 리눅스 파일시스템의 파일을 하둡 파일 시스템으로 전송한다. hadoop dfs –copyToLocal : 하둡 파일시스템의 파일을 리눅스 파일시스템으로 전송 hadoop dfs –cat <파일 경로> : cat 명령어와 동일

wordcount 테스트 wordcount 는 하둡에서 제공하는 예제 프로그램으로 하둡 파일 시스템의 지정 폴더내의 모든 파일의 word 개수를 구하는 프로그램이다.(hadoop-0.20.2-examples.jar d이름으로 하둡 폴더내에 존재) (테스트) hadoop dfs –mkdir input 명령어로 input 폴더 생성 hadoop dfs –put ~/.bashrc input 명령어로 .bashrc 파일을 input 폴더로 전송 hadoop jar $HADOOP_HOME/hadoop-0.20.2-examples.jar wordcount input output ※ 주의 사항 : output 폴더는 만들어 놓으면 안된다. (출력) 09/02/25 19:54:32 INFO mapred.FileInputFormat: Total input paths to process : 1 09/02/25 19:54:33 INFO mapred.JobClient: Running job: job_200902251718_0002 09/02/25 19:54:34 INFO mapred.JobClient: map 0% reduce 0% 09/02/25 19:54:46 INFO mapred.JobClient: map 2% reduce 0% .. .. 09/02/25 19:55:58 INFO mapred.JobClient: Job complete: job_200902251718_0002 09/02/25 19:55:58 INFO mapred.JobClient: Counters: 17 09/02/25 19:55:58 INFO mapred.JobClient: File Systems 09/02/25 19:55:58 INFO mapred.JobClient: HDFS bytes read=440015293 09/02/25 19:55:58 INFO mapred.JobClient: HDFS bytes written=11503892 09/02/25 19:55:58 INFO mapred.JobClient: Local bytes read=44472886 09/02/25 19:55:58 INFO mapred.JobClient: Local bytes written=57919061 09/02/25 19:55:58 INFO mapred.JobClient: Job Counters

문제 해결 JAVA 설정 JAVA_HOME 설정은 꼭 hadoop-env.sh에 설정해 주셔야 합니다. 무심코 ~/.bashrc 나 ~/.bash_profile 에만 설정하는 경우도 있는데, 그러면 동작 안함 WARN fs.FileSystem: "master:9000" is a deprecated filesystem name. Use "hdfs://master:9000/" instead. core-site.xml에 fs.default.name를 설정하실때 앞에 "hdfs://"를 붙이지 않은경우에 발생 slave 연결 확인(정상동작시) $ ./slaves.sh uname –a 192.168.0.101: Linux slave-02 2.6.18-53.1.4.el5vm #1 SMP Mon Mar 31 17:40:06 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux 192.168.0.102: Linux slave-01 2.6.18-53.1.4.el5vm #1 SMP Mon Mar 31 17:40:06 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux root 계정으로 master 가 동작하지 않는다면 퍼미션 문제로 hadoop dfs 실행시 문제가 생긴다 master 는 root 계정으로 실행되어야한다. 방화벽 문제로 정상 작동 하지 않을 시에는 ufw disable 로 방화벽을 끈다. 혹은 필요 포트만 허용한다.