Hadoop Installation
                 Tutorial for KT ucloud biz
                              Chiwan Park
                        <chiwanpark91@gmail.com>




13년 2월 22일 금요일
튜토리얼
 목표
                 •   ucloud biz 서비스를 사용하여 가상 서버를 생성한다.

                 •   서버에 Hadoop을 distributed 환경으로 설정한다.

                     •   distributed 환경이지만 ucloud biz 서비스에서 제
                         공하는 DATA 디스크를 사용하지 않으므로 실제 동
                         작 환경으로는 부적합하다.

                     •   클러스터의 세팅 방법을 학습하는 정도에서 참고자
                         료로 활용하며 production의 세팅은 다른 문서를
                         참고하자.


13년 2월 22일 금요일
KT
 ucloud
 biz
 서비스
 가입하기
                  •        http://ucloudbiz.olleh.com 에 접속하여 가입한다.

                  •        가입후 상품 청약 메뉴를 선택하여, ucloud server 상
                           품을 청약한다.

                  •        가입 및 청약시 결제 정보를 입력하는데, 비용이 청구
                           되는 경우에 사용한다.

                         •        이번 실습을 1시간안에 끝낸다는 전제 아래 소요 비
                                  용은 37원 * 1시간 * 3대 = 약 111원



13년 2월 22일 금요일
putty
 다운로드

                 • putty?
                  • Windows에서 SSH 서버를 원격으로 접속
                     하기 위한 프로그램

                 • http://putty.nl/download.html 에서 다운로드
                   받을 수 있다.



13년 2월 22일 금요일
ucloud
 server
 생성
                 • ucloud server(클라우드 가상서버)를 생성하
                  고, 외부에서 접속 할 수 있도록 설정한다.

                  • 이 예제에서는 3대를 세팅하고 1대를
                    Namenode, Jobtracker로, 나머지 2대를
                    Datanode, Tasktracker로 세팅한다.

                 • 서버 생성 후, 10분 정도 경과하면 메일 주소
                  로 서버의 비밀번호를 받는다.


13년 2월 22일 금요일
10분
 후



13년 2월 22일 금요일
ucloud
 server
 SSH
 접속


                 • putty에 hadoop1의 IP 주소와 인코딩을 적당
                  히 세팅한 후, ucloud server에 접속한다.




13년 2월 22일 금요일
Hosts
 파일
 세팅

                 • 3대의 클러스터를 매번 IP 주소를 입력해 통신
                   하는 것은 번거로운 일이므로 Hadoop 클러스
                   터들의 IP를 미리 등록하여 이름을 정해준다.

                 • vi /etc/hosts


13년 2월 22일 금요일
vi
 사용법
                 • 삽입 모드 진입 단축키: i
                 • 삽입 모드에서 명령 모드로 빠져나오려면 ESC
                  키를 누른다.

                 • 파일 수정은 항상 삽입모드 진입 - 수정 - 명
                  령 모드로 나옴 - 저장 - 종료 순으로 한다.

                 • 저장은 :w이며, 종료는 :q이고, 저장과 종료를
                  동시에 하려면 :wq를 입력하면 된다.


13년 2월 22일 금요일
SSH
 Key
 Exchange

                 • Hadoop은 SSH라는 방법으로 서버간 통신을
                  진행한다.

                 • 이 때 서로를 인증하기 위한 Key를 미리 교환
                  하여 서로를 인증 할 수 있도록 만든다.




13년 2월 22일 금요일
SSH

Hadoop Installation Tutorial for KT ucloud biz

  • 1.
    Hadoop Installation Tutorial for KT ucloud biz Chiwan Park <chiwanpark91@gmail.com> 13년 2월 22일 금요일
  • 2.
  • 3.
     목표 • ucloud biz 서비스를 사용하여 가상 서버를 생성한다. • 서버에 Hadoop을 distributed 환경으로 설정한다. • distributed 환경이지만 ucloud biz 서비스에서 제 공하는 DATA 디스크를 사용하지 않으므로 실제 동 작 환경으로는 부적합하다. • 클러스터의 세팅 방법을 학습하는 정도에서 참고자 료로 활용하며 production의 세팅은 다른 문서를 참고하자. 13년 2월 22일 금요일
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
     가입하기 • http://ucloudbiz.olleh.com 에 접속하여 가입한다. • 가입후 상품 청약 메뉴를 선택하여, ucloud server 상 품을 청약한다. • 가입 및 청약시 결제 정보를 입력하는데, 비용이 청구 되는 경우에 사용한다. • 이번 실습을 1시간안에 끝낸다는 전제 아래 소요 비 용은 37원 * 1시간 * 3대 = 약 111원 13년 2월 22일 금요일
  • 9.
  • 10.
     다운로드 • putty? • Windows에서 SSH 서버를 원격으로 접속 하기 위한 프로그램 • http://putty.nl/download.html 에서 다운로드 받을 수 있다. 13년 2월 22일 금요일
  • 11.
  • 12.
  • 13.
     생성 • ucloud server(클라우드 가상서버)를 생성하 고, 외부에서 접속 할 수 있도록 설정한다. • 이 예제에서는 3대를 세팅하고 1대를 Namenode, Jobtracker로, 나머지 2대를 Datanode, Tasktracker로 세팅한다. • 서버 생성 후, 10분 정도 경과하면 메일 주소 로 서버의 비밀번호를 받는다. 13년 2월 22일 금요일
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
     접속 • putty에 hadoop1의 IP 주소와 인코딩을 적당 히 세팅한 후, ucloud server에 접속한다. 13년 2월 22일 금요일
  • 20.
  • 21.
  • 22.
     세팅 • 3대의 클러스터를 매번 IP 주소를 입력해 통신 하는 것은 번거로운 일이므로 Hadoop 클러스 터들의 IP를 미리 등록하여 이름을 정해준다. • vi /etc/hosts 13년 2월 22일 금요일
  • 23.
  • 24.
     사용법 • 삽입 모드 진입 단축키: i • 삽입 모드에서 명령 모드로 빠져나오려면 ESC 키를 누른다. • 파일 수정은 항상 삽입모드 진입 - 수정 - 명 령 모드로 나옴 - 저장 - 종료 순으로 한다. • 저장은 :w이며, 종료는 :q이고, 저장과 종료를 동시에 하려면 :wq를 입력하면 된다. 13년 2월 22일 금요일
  • 25.
  • 26.
  • 27.
     Exchange • Hadoop은 SSH라는 방법으로 서버간 통신을 진행한다. • 이 때 서로를 인증하기 위한 Key를 미리 교환 하여 서로를 인증 할 수 있도록 만든다. 13년 2월 22일 금요일
  • 28.
  • 29.
  • 30.
     Exchange • ssh-keygen -t rsa • passphrase는 입력하지 않는다. • cat ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys • scp ~/.ssh/id_rsa.pub root@hadoop2:/root/.ssh/ authorized_keys • hadoop2의 비밀번호를 입력한다. • scp ~/.ssh/id_rsa.pub root@hadoop3:/root/.ssh/ authorized_keys • hadoop3의 비밀번호를 입력한다. 13년 2월 22일 금요일
  • 31.
  • 32.
     설치 • Hadoop은 Java 언어로 구현된 프레임워크이 므로 Java의 설치가 필수적이다. • 예제에서는 JDK (Java Development Kit) 7을 설치하나 JDK 6이상의 버전이면 예제를 수행 하는데 아무런 문제가 없다. • 예제에서의 Java의 설치 경로는 /opt/java 이 다. 13년 2월 22일 금요일
  • 33.
  • 34.
     설치 • wget http://db.tt/XX1WleBO • wget은 인터넷에서 파일을 다운 받는 명령어 다. • tar -xzvf jdk-7u15-linux-x64.tar.gz • tar는 압축을 풀거나 압축하는 명령어다. • mv ./jdk1.7.0_15 /opt/java • mv는 파일 또는 폴더를 이동하는 명령어다. 13년 2월 22일 금요일
  • 35.
  • 36.
     다운로드 • Hadoop 프레임워크를 다운로드 받아 설치한 다. • 예제에서는 안정 버전인 1.0.4를 설치할 것 이다. • 예제에서의 Hadoop의 설치 경로는 /opt/ hadoop 이다. 13년 2월 22일 금요일
  • 37.
  • 38.
     다운로드 • wget http://db.tt/auKACEwR • tar -xzvf hadoop-1.0.4.tar.gz • mv ./hadoop-1.0.4 /opt/hadoop 13년 2월 22일 금요일
  • 39.
  • 40.
  • 41.
  • 42.
     설정 • Hadoop 설정 파일을 수정하여 분산 환경을 설정 한다. • Hadoop의 구동 환경은 3가지가 있다. • standalone • pseudo-distributed • distributed • 예제에서는 distributed 환경으로 설정한다. 13년 2월 22일 금요일
  • 43.
  • 44.
  • 45.
  • 46.
     설정 • Hadoop의 동작 환경 설정 수정 • vi /opt/hadoop/conf/hadoop-env.sh • Hadoop File System 환경 수정 • vi /opt/hadoop/conf/core-site.xml • vi /opt/hadoop/conf/hdfs-site.xml • Hadoop MapReduce 환경 수정 • vi /opt/hadoop/conf/mapred-site.xml 13년 2월 22일 금요일
  • 47.
  • 48.
  • 49.
  • 50.
     설정 • Hadoop의 동작 환경 설정 수정 • vi /opt/hadoop/conf/hadoop-env.sh • Hadoop File System 환경 수정 • vi /opt/hadoop/conf/core-site.xml • vi /opt/hadoop/conf/hdfs-site.xml • Hadoop MapReduce 환경 수정 • vi /opt/hadoop/conf/mapred-site.xml 13년 2월 22일 금요일
  • 51.
  • 52.
  • 53.
  • 54.
     설정 • Hadoop의 동작 환경 설정 수정 • vi /opt/hadoop/conf/hadoop-env.sh • Hadoop File System 환경 수정 • vi /opt/hadoop/conf/core-site.xml • vi /opt/hadoop/conf/hdfs-site.xml • Hadoop MapReduce 환경 수정 • vi /opt/hadoop/conf/mapred-site.xml 13년 2월 22일 금요일
  • 55.
  • 56.
  • 57.
  • 58.
     설정 • Hadoop의 동작 환경 설정 수정 • vi /opt/hadoop/conf/hadoop-env.sh • Hadoop File System 환경 수정 • vi /opt/hadoop/conf/core-site.xml • vi /opt/hadoop/conf/hdfs-site.xml • Hadoop MapReduce 환경 수정 • vi /opt/hadoop/conf/mapred-site.xml 13년 2월 22일 금요일
  • 59.
  • 60.
  • 61.
  • 62.
     설정 • Hadoop 클러스터의 위치 설정 • vi /opt/hadoop/conf/masters • vi /opt/hadoop/conf/slaves 13년 2월 22일 금요일
  • 63.
  • 64.
  • 65.
  • 66.
     설정 • Hadoop 클러스터의 위치 설정 • vi /opt/hadoop/conf/masters • vi /opt/hadoop/conf/slaves 13년 2월 22일 금요일
  • 67.
  • 68.
     설정 • Hadoop 실행을 편리하게 하기 위해 아무 위 치에서나 실행할 수 있도록 PATH에 Hadoop, Java의 경로를 추가해 준다. • vi ~/.bash_profile 13년 2월 22일 금요일
  • 69.
  • 70.
  • 71.
     배포 • 지금까지 hadoop1에 설정한 Java, Hadoop 환경을 hadoop2에 배포한다. • scp ~/.bash_profile root@hadoop2:/ root/.bash_profile • scp /etc/hosts root@hadoop2:/etc/hosts • scp -r /opt/hadoop root@hadoop2:/opt/hadoop • scp -r /opt/java root@hadoop2:/opt/java • 같은 명령을 hadoop3에 대해서도 실행한다. 13년 2월 22일 금요일
  • 72.
  • 73.
     Format • HDFS (Hadoop File System)을 사용하기 위 해서 format을 진행한다. • hadoop namenode -format 13년 2월 22일 금요일
  • 74.
  • 75.
  • 76.
     실행 • 이제 Hadoop 데몬을 실행하여 MapReduce 프로그램을 실행할 수 있는 환경으로 만들어 보자. • start-all.sh • 정상적으로 수행되었는지 확인하고자 Java Process 유틸리티인 jps 명령을 실행한다. • jps 13년 2월 22일 금요일
  • 77.
  • 78.
  • 79.
  • 80.
     확인 • Hadoop은 데몬들의 상태 정보를 웹을 통해 제공한다. • http://hadoop1의 IP:50030/ • http://hadoop1의 IP:50030/ 13년 2월 22일 금요일
  • 81.