Spark 독립실행형 클러스터 배포
1. 클러스터 토폴로지 계획 및 여러 시스템 스파크 설치
- 스파크 마스터
- 스파트 워커 1,2,3
2. 네트워크 구성
hosts 파일 활용
vi /etc/hosts
000.000.000 sparkworker1
...
이 후 ping 으로 확인
3. 각 호스트에 spark-default.conf 파일 생성/편집
스파크 마스터, 워커 호스트에서 다음 명령 실행
cd $SPARK_HOME/conf
sudo cp spark-defaults.conf.template spark-default.conf
sudo sed -i "\$aspark.master\tspark://sparkmaster:7077" spark-defaults.conf
4. 각 호스트에서 spark-env.sh 파일 생성/편집
cd $SPARK_HOME/conf
sudo cp spark-env.sh.template spark-env.conf
sudo sed -i "\$aSPARK_MASTER_IP=sparkmaster" spark-env.sh
5. 스파크 마스터/워커 시작하기
스파크 마스터 호스트에서 다음 명령 실행
sudo $SPARK_HOME/sbin/start-master.sh
스파크 워커에서 다음 명령 실행
sudo $SPARK_HOME/sbin/start-slave.sh spark://sparkmaster:7077
http://sparkslaveN:8081/ 에서 스파크 워커 UI를 확인한다.
6. 다중 노드 클러스터 테스트
Pi 추정 예제
spark-submit --class org.apache.spark.examples.SparkPi \
--master spark://sparkmaster:7077 \
--driver-memory 512m \
--executor-memory 512m \
--executor-cores 1\
$SPARK_HOME/examples/jars/spark-eamples*.jar 10000