[빅데이터] 하둡 스파크 실습
Updated:
Intro
빅데이터 강의 시간의 스파크 실습 내용을 정리한 것입니다. 실습 환경 준비
스파크의 실행 동작 모드
스파크 다운로드 및 압축 해제
마스터 노드에서 설치 한 후, 슬레이브 노드에 복사할 예정입니다. 먼저 마스터 노드에서 설치하고 압축 해제하는 과정입니다.
$ wget http://mirror.apache-kr.org/spark/spark-2.4.5/spark-2.4.5-bin-hadoop2.7.tgz
$ tar –xvzf spark-2.4.5-bin-hadoop2.7.tgz
환경 변수 설정
아래 사진과 같이 하둡 환경 변수를 설정하여 줍니다.
$ sudo nano ~/.bashrc
환경 변수 추가 후 아래 명령어를 통해 적용합니다. source[환경 설정 파일명] 명령은 리부팅이나 쉘에 재로그인 하지 않고 수정된 새로운 환경 설정 내용을 즉시 적용하기 위해서 사용합니다.
$ source ~/.bashrc
스파크 설정
설정 파일 복사
기존 스파크 설정 파일들을 복사한 후, 변경 해줍니다. 경로는 ~/spark-2.4.5-bin-hadoop2.7/conf/ 입니다. template파일들을 각각 복사하여 기존의 default 설정을 사용하면서 일부만 수정해서 설정해줍니다. 경로는 ~/spark-2.4.5-bin-hadoop2.7/conf/
$ cp slaves.template slaves
$ cp spark-defaults.conf.template spark-defaults.conf
$ cp spark-env.sh.template spark-env.sh
저는 WinSCP를 사용하여 스파크 환경 변수를 설정하여주었습니다. 경로는 ~/spark-2.4.5-bin-hadoop2.7/conf/spark-env 입니다. 스파크 워커 메모리를 2g로 설정하고 빌트인 해주었습니다.
경로는 ~/spark-2.4.5-bin-hadoop2.7/conf/spark-defaults.conf 이며, jar/spark-jars/*.jar 를 추가하였습ㅂ니다.
~/spark-2.4.5-bin-hadoop2.7/conf/slaves에서 스파크 슬레이브를 설정하였습니다.
하둡을 실행하고 다운 받은 모든 스파크의 jar 파일을 하둡 파일 시스템으로 적재 해줍니다. 이는 –master yarn 모드 실행을 위한 작업입니다. start-all.sh 명령으로 하둡을 실행시키고 잘 실행 되었는지 jps 명령으로 확인해 주었습니다.
$ start-all.sh
$ jps
$ hadoop fs -mkdir /jar
$ hadoop -mkdir /jar/spark-jars
$ hadoop fs -put $SPARK_HOME/jar/* /jar/spark-jars/
그 후, 네임노드 웹(192.168.0.1:50070)에 접속하여 파일 복사를 확인합니다.
각 서버로 스파크 설치 디렉토리를 배포하고, scp 명령어로 .bashrc 파일을 slave1에 복사합니다. 설치한 스파크의 모든 내용을 slave1에 복사합니다.
$ scp .bashrc slave1:~/
$ scp -r ~/spark-2.4.5-bin-hadoop2.7 slave1:~/
스파크 실행 및 동작 확인
master에서 스파크를 실행시키고 jps 명령어로 master와 slave1에서의 하둡과 스파크의 실행을 확인 합니다. 아래 화면과 같이 출력되면 잘 실행 되고 있는 것 입니다.
$ $SPARK_HOME/sbin/start-all.sh
$ jps
스파크 마스터 포트 웹(192.168.0.1:8080)으로 접속 확인 합니다.
스파크 쉘(Spark shell)
스파크 쉘 실행
yarn 환경에서 스파크 쉘을 실행시킵니다. 쉘이 시작하면서 스파크 세션 객체가 초기화 되고, 변수 spark가 이를 가리킴니다. spark 변수를 이용해 프로그래밍 합니다.
$ $SPARK_HOME/bin/spark-shell --master yarn
Yarn Web(192.168.0.1:8088)에서 스파크 쉘을 확인을 합니다.
실습이 끝나면 꼭 spark를 종료하고 하둡을 종료 해주어야 합니다.
$ $SPARK_HOME/sbin/stop-all.sh
$ stop-all.sh
참고 자료
빅데이터 수업자료_7.SparkIntro
Leave a comment