스파크쉘의 마스터를 yarn
으로 설정하고 yarn 클러스터 외부의 클라이언트에서 실행할 때 다음의 오류가 발생하는 경우가 있습니다.
오류
$ ./spark-shell --master yarn
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
20/09/09 16:01:26 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
20/09/09 16:01:26 WARN util.Utils: Service 'sparkDriver' could not bind on a random free port. You may check whether configuring an appropriate binding address.
20/09/09 16:01:26 WARN util.Utils: Service 'sparkDriver' could not bind on a random free port. You may check whether configuring an appropriate binding address.
해결방법
스파크 쉘은 --deploy-mode=client
모드로 고정됩니다. 따라서 클러스터에서 실행된 작업이 스파크 쉘과 통신하기 위해서 주소를 알아야 합니다. 따라서 다음의 설정을 해주면 실행 됩니다.
./spark-shell --master yarn \
--conf spark.driver.host=<spark-driver-host-name> \
--conf spark.driver.port=18080 \
--conf spark.driver.bindAddress=0.0.0.0
동작참고
반응형
'빅데이터 > spark' 카테고리의 다른 글
[pyspark] pyspark 실행시 python: command not found 오류 (0) | 2021.03.18 |
---|---|
[spark] __spark_libs__.zip does not exist 오류 해결 방법 (0) | 2020.09.14 |
[pyspark] pyspark에서 udf를 이용하는 방법 (0) | 2020.06.08 |
[pyspark] pyspark와 Hive 연동 (0) | 2020.06.08 |
[pyspark] 데이터프레임 생성 (0) | 2020.06.08 |