DOCKER – UBUNTO – HADDOP 1.2.1 – R, RHipe 설치
- 2018-07-03 시작
#
은 root 명령$
hduser 사용자 명령
DOCKER
설치
Windows7
- havdetectiontool.exe 로 컴퓨터 하드웨어 가상화 지원 여부 확인
- DockerToolbox.exe 로 설치
UBUNTU
설치
도커에서 설치
- 우분투 설치시는 버전 명시
- docker pull ubuntu:16.04 (버전 설치)
- docker pull ubuntu:latest (최신 번전 설치)
UBUNTU 접속 및 컨테이너 확인
- docker run -it –name ubuntu_hadoop ubuntu:latest
- docker ps -a
필수 패키지 설치
- apt-get update
- 에디터 설치 : apt-get install vim nano
- wget 설치 : apt-get install wget
- apt-get install autoconf automake libtool curl make g++ unzip
서버 인코딩 설정 : ko_KR.UTF-8
자바 8 설치 (openjdk)
- 우분투 14버전의 PPA repository에는 자바 8이 기본적으로 포함되어있지않다고 함
- apt-get install openjdk-8-jdk
- apt-get install default-jdk (미확인)
- ln -s java-1.8.0-openjdk-amd64 java8
- /etc/profile 에 환경변수 등록
- vi /etc/profile, 계정 .bashrc 에 JAVA_HOME, PATH 설정
export JAVA_HOME=/usr/lib/jvm/java8
export PATH=$PATH:$JAVA_HOME/bin
export CLASS_PATH="."
- java -version
하둡 계정 설정
- apt-get install sudo
- addgroup hadoop
- adduser –ingroup hadoop hduser
- adduser hduser sudo
- groups hduser
SSH 설치 및 설정
- atp-get install ssh
- atp-get install openssh-server
- /etc/init.d/ssh start
- which ssh sshd
- su hduser
- ssh-keygen -t rsa
- cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
- service ssh start
- ssh localhost
- yes 선택
- exit
하둡(Hadoop) 다운로드 및 압축 해제
- cd ~
- wget "https://archive.apache.org/dist/hadoop/common/hadoop-1.2.1/hadoop-1.2.1.tar.gz"
- sudo mkdir /usr/local/hadoop
- sudo mv haoop* /usr/local/hadoop
- sudo chown -R hduser:hadoop /usr/local/hadoop
- tar xvfz hadoop-1.2.1.tar.gz
- ln -s hadoop-1.2.1 hadoop
- vi /etc/profile, 계정 .bashrc 에 HADOOP_HOME, PATH 설정
export HADOOP_HOME=/usr/local/hadoop/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
하둡 환경설정 파일 수정
- hadoop-env.sh
export JAVA_HOME=/usr/lib/jvm/java8
export HADOOP_HOME_WARN_SUPPRESS="TRUE"
export HADOOP_PID_DIR=/usr/local/hadoop/hadoop/pids
- core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/hadoop/hadoop-data</value>
</property>
</configuration>
- hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
- mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
- 초기화 : ./bin/hadoop namenode – format
- 실행 : ./bin/start-all.sh
- 브라우저에서 확인 : apt-get install w3m
- w3m "http://localhost:50070"
하둡 예제 실행
- HDFS에 파일 업로드: ./bin/hadoop fs -put conf/hadoop-env.sh conf/hadoop-env.sh
- jar 파일 실행 : ./bin/hadoop jar hadoop-exmaple-*.jar wordcount conf/hadoop-evn.sh wordcount_output
- HDFD에 저장된 출력 값 확인 : ./bin/hadoop fs -cat wordcount_output/part-r-0000
R 설치
#
apt-get install r-base
프로토콜 버퍼 설치 : 데이터 직렬화
-
#
wget https://github.com/google/protobuf/releases/download/v2.4.1/protobuf-2.4.1.tar.gz
http://notetoday.tistory.com/entry/Ubuntu-Protocol-Buffer-%EC%84%A4%EC%B9%98-protoc -
protobuf-2.4.1.tar.gz 설치 후 RHipe 설치 시 오류남
-
protobuf-2.5.0.tar.gz 설치 후 RHipe v0.74 설치 시 오류남
-
protobuf-2.5.0.tar.gz 설치 후 RHipe v.0.75.1.7 이나 v.0.75.2 설치
-
protobuf-2.6.1.tar.gz 설치 후 RHipe 설치 시 오류남
-
tar -xzf /protobuf-2.4.1.tar.gz
-
cd /protobuf-2.4.1
-
./configure # –prefix=…
-
make
-
make install
-
protoc –version
-
ldconfig
-
protoc –version
소스파일로 된 패키지를 설치하실 때 기본적으로 내리는 3가지 명령어
configure, make, make install
여기서 소스파일이란 것은 설치파일에 대한 소스 파일
컴파일을 하고나면 설치파일이 생기는 것
configure 는 환경설정을 해주는 명령어
옵션은 소스를 제작한 자가 readme 파일 등에 명시
make 는 소스를 컴파일 하는 것
make install 은 설치를 하는 과정
RHIPE 설치(R 과 하둡 연결)
~/.bashr에 환경변수 추가
- export PKG_CONFIG_PATH=/usr/local/lib
- export LD_LIBRARY_PATH=/usr/local/lib
/etr/R/Renviron에 환경변수 추가
- HADOOP_HOME=/usr/local/hadoop/hadoop
- HADOOP_BIN=/usr/local/hadoop/hadoop/bin
- HADOOP_CONF_DIR=/usr/local/hadoop/hadoop/conf
R에서 작업
- update.packages()
- install.package("rJava") 설치
- install.package("testthat")
- wget http://ml.stat.purdue.edu/rhipebin/archive/Rhipe_0.74.0.tar.gz
- R CMD INSTALL Rhipe_0.74.0.tar.gz
- R CMD INSTALL Rhipe_0.75.1.7_hadoocdp.tar.gz
- export HADOOP_LIBS=
hadoop classpath | tr -d '*'
- Sys.getenv("HADOOP_LIBS")