2019/08/30 - [Dev/Spark] - VirtualBox에서 Spark Clustering 구성하기 - (1) Configuration guest OS Network
2019/08/30 - [Dev/Spark] - VirtualBox에서 Spark Clustering 구성하기 - (2) Install & port configuration
Test Clustering!
in master node
추가 설정
- conf 설정: spark/conf/spark-defaults.conf에서 spark.driver.port, spark.blockManager.port를 지정한다. 위 포트들은 별도로 지정하지 않으면 랜덤 값을 사용한다. 따라서 포트 포워딩을 할 필요 없이 네트워크가 팡팡 뚫린 상태라면 지정할 필요가 없지만, virtualbox로 테스트하는 경우에는 값을 지정하고 포트 포워딩에도 추가해줘야 한다.
Spark master 실행
- spark/sbin/start-master.sh 명령으로 실행한다.
- master가 정상적으로 실행되면 spark master web에 접속할 수 있다.
- http://[host]:8080/ (host에는 master node의 host ip)
Livy server 실행
- livy-0.5.0-incubating-bin/bin/livy-server start 명령으로 실행한다.
- 정상적으로 실행되면 웹으로 접속 가능하다.
- http://[host]:8998/ui (host에는 master node의 host ip)
Spark slave 실행
- master node에서 slave를 띄우지 않을 거면 이 과정은 생략하고 바로 worker node로 넘어가면 된다.
- spark/sbin/start-slave.sh spark://master-VirtualBox:7077 명령으로 실행한다.
- spark master web에서 slave가 정상적으로 실행됐는지 모니터링 할 수 있다.
in worker node
추가 설정
- master node가 slave로 task를 보낼 때 위와 같이 slave의 host를 지정해서 보낸다. 가상 환경에서 특별히 설정한게 없으면 ip가 10.0.2.15로 모두 같으므로 slave를 실행할 때 host ip를 입력하여 실행하는 것이 좋다.
- 매번 host ip를 입력하는 것이 번거롭다면 spark/conf/spark-env.sh에서 SPARK_LOCAL_IP 변수 값을 수정하면 된다.
Spark slave 실행
- spark/sbin/start-slave.sh spark://master-VirtualBox:7077 명령으로 실행한다.
- spark/conf/spark-env.sh에서 SPARK_LOCAL_IP를 지정하지 않은 경우 spark/sbin/start-slave.sh spark://master-VirtualBox:7077 -h [slavehost] 명령으로 실행한다.
Test!
테스트를 위해 jupyter lab에서 spark notebook을 생성한 후 샘플 코드를 실행했다. jupyter에서 실행시킨 명령은 Livy web console에서 모니터링할 수 있다. 참고로 magic을 사용하는 경우 %%spark를 통해 생성한 SparkContext에서만 %%sql로 결과를 가지고 올 수 있었다.
VirtualBox에서 Spark Clustering 구성하기
-끗-
'etc > Spark' 카테고리의 다른 글
VirtualBox에서 Spark Clustering 구성하기 - (2) Install & port configuration (0) | 2019.08.30 |
---|---|
VirtualBox에서 Spark Clustering 구성하기 - (1) Configuration guest OS Network (0) | 2019.08.30 |
Mac, Windows에서 Zeppelin 설치 및 설정 (0) | 2019.08.30 |
댓글