빅데이터분석
Ubuntu 16.04.2에 Apache Spark 2.1.0 (Dec 28 2016)설치
o블링블링o
2017. 3. 31. 10:50
장비가 2대 이상이며, 장비 하나는 Master Node로 다른 장비들은 Worker Nodes로 사용한다고 가정한다.
언어 의존성
1. Java 7+
2. Python 2.6+ / Python 3.4+
3. R 3.1+
4. Scala 2.11.x
설치
1. JDK 설치 - JDK8
$ sudo apt-add-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer
# Java 환경변수 설정
$ sudo vi /etc/enviroment
# JAVA_HOME="/usr/lib/jvm/java-8-oracle" 저장
$ source /etc/enviroment
2. Scala 설치 - Scala 2.11.6
$ sudo apt-add install scala
3. node 간 passwordless SSH 설정
Master Node 와 Slave Node 간에 비밀번호 없이 SSH 인증키로 접속하기 위한 설정
# ssh 개인용 공개키 생성
$ ssh-keygen -t rsa
# 마스터 서버에서 실행. 원격 서버에 인증키 전송(원격서버 계정명과 IP주소는 자신에 환경에 맞게 변경)
$ ssh-copy-id -i ~/.ssh/id_rsa.pub devel@10.10.0.212
4. Spark 설치 - Spark 2.1
4-1. 설치파일 다운로드
1. 버전 선택 : 2.1.0 (Dec 28 2016)
2. Pre-built for Hadoop 2.7 and later
3. Direct Download
4. spark-2.1.0-bin-hadoop2.7.tgz 링크 클릭해서 다운로드
4-2. 압축해제
# /opt/spark 폴더에 해제 $ tar -xvzf spark-2.1.0-bin-without-hadoop.tgz
4-3. Master Node 실행
# http://10.10.0.211:8080/ 에서 WebUI 사용가능
$ /opt/spark/sbin/start-master.sh
4-4. Worker Node 실행
# Master Node의 Workers 메뉴에서 연결된 Worker Node를 확인 할 수 있다.
$ /opt/spark
/sbin/start-slave.sh spark://10.10.0.211:7077
5. 실행 및 테스트
# 스파크 쉘(scala)실행 - standalone 모드로 실행
$ $SPARK_HOME/bin/spark-shell
scala> val textFile = sc.textFile("/etc/hosts")
scala> textFile.count()