본문 바로가기
data processing/spark

SPARK 서버 환경 구성

by nothing-error 2022. 12. 28.

계정관련 설정

1. user 계정 생성

$sudo useradd dahy -m -s /bin/bash

 

2. 계정 암호 설정

$sudo passwd dahy

 

3. 계정 삭제(option)

$sudo userdel -r dahy

 

4. sudo 권한 설정

$sudo visudo

 

dahy ALL =(ALL) NOPASSWD:ALL

 

5. 계정 전환

$sudo su - dahy

 

6. 디렉토리 생성

$sudo mkdir /dahy

 

7. 디렉토리 소유자 변경

$sudo chown dahy:dahy /dahy

 

8. 각종 필요 유틸 설치

$ sudo apt install -y wget unzip bzip2 net-tools

 

 

HOSTS 설정

 

1. hostname 변경(서버별)

$sudo hostnamectl set-hostname spark-master-01

$sudo hostnamectl set-hostname spark-worker-01

$sudo hostnamectl set-hostname spark-worker-02

$sudo hostnamectl set-hostname spark-worker-03

 

2. hostname 확인

$hostname

 

3. hosts 파일편집

$sudo vi /etc/hosts

#공통
내부ip주소 spark-master-01
내부ip주소 spark-worker-01
내부ip주소 spark-worker-02
내부ip주소 spark-worker-03

 

4. 서버간 통신을 위한 ssh키 생성(공통)

$ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

 

5. 생성된 key 확인(공통)

$ls -al ~/.ssh

 

6. key 내용 확인(공통)

$cat ~/.ssh/id_rsa.pub

 

 

7. authorized_keys 구성(공통)

$cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

$cat ~/.ssh/authorized_keys

 

8. 각서버별(master-01, worker-01, worker-02, worker-03) id_rsa.pub 내용을  authorized_keys에 복붙하기

$vi ~/.ssh/authorized_keys

ssh-rsa ~~~ spark-master-01
ssh-rsa ~~~ spark-worker-01
ssh-rsa ~~~ spark-worker-02
ssh-rsa ~~~ spark-worker-03

 

9. 소유자만 변경 가능(읽기/쓰기)하도록 권한변경(공통)

$chmod 600 ~/.ssh/authorized_keys

 

10. ssh로 비밀번호 없이 연결 가능한지 테스트

$ssh spakr-master-01

$ssh spakr-worker-01

$ssh spakr-worker-02

$ssh spakr-worker-03

 


로컬 윈도우10 hosts 설정(option)

1. 관리자권한으로 메모장 실행

2. c:\Windows\System32\drivers\etc 에서 모든파일 보기 선택

3. hosts 파일 선택후 내용 수정

ip주소 spark-master-01
ip주소 spark-worker-01
ip주소 spark-worker-02
ip주소 spark-worker-03

 


 

 

 

spark설치(디렉토리 : dahy)

파일 다운로드, 압축해제, 파일명 변경

$wget https://archive.apache.org/dist/spark/spark-3.2.1/spark-3.2.1-bin-hadoop3.2.tgz

$tar xvfz spark-3.2.1-bin-hadoop3.2.tgz
$mv spark-3.2.1-bin-hadoop3.2 spark3

 

자바 설치(디렉토리 : dahy)

1. 파일 다운로드, 압축해제, 파일명 변경

$ wget https://github.com/ojdkbuild/contrib_jdk8u-ci/releases/download/jdk8u232-b09/jdk-8u232-ojdkbuild-linux-x64.zip

$ unzip jdk-8u232-ojdkbuild-linux-x64.zip
$ mv jdk-8u232-ojdkbuild-linux-x64 jdk8

 

 

2. JAVA_HOME 환경변수

$ cd /dahy/spark3/conf
$ cp spark-env.sh.template spark-env.sh
$ vi spark-env.sh

JAVA_HOME=/dahy/jdk8

 

3. spark-shell 실행 테스트

$ cd /dahy/spark3
$ ./bin/spark-shell

 

 

4. jps 명령어 세팅

$ vi ~/.profile

export PATH=/dahy/jdk8/bin:$PATH

$ source ~/.profile

$ jps

 

* SparkSubmit 은 spark-shell 드라이버프로세스임.

 

 

 

Spark HistoryServer 세팅

1. LogDirectory 설정(for HistoryServer, SparkApp) 

$ cd /dahy/spark3/conf
$ cp spark-defaults.conf.template spark-defaults.conf


$ vi spark-defaults.conf

spark.history.fs.logDirectory file:///dahy/spark3/history

$mkdir -p /dahy/spark3/history

$/dahy/spark3/sbin/start-history-server.sh

$ /dahy/spark3/sbin/stop-history-server.sh (종료할거면)

 

$ vi /dahy/spark3/conf/spark-defaults.conf

spark.eventLog.enabled true
spark.eventLog.dir file:///dahy/spark3/history

$ cd /dahy/spark3
$ ./bin/spark-shell

 

 

2. history server 시작과 종료 명령어

$ /dahy/spark3/sbin/start-history-server.sh

$ /dahy/spark3/sbin/stop-history-server.sh

 

3. 웹UI 주소

http://spark-master-01:18080

 

 

 

 

'data processing > spark' 카테고리의 다른 글

Spark RDD 프로그래밍  (0) 2023.01.24
spark 소개  (0) 2023.01.24
Zeppelin(spark) 인터프리터 설정  (0) 2022.12.29
Zeppelin 환경구성  (0) 2022.12.29

댓글