린아저씨의 잡학사전

Spark 를 사용하면서 Jupyter Notebook에 연동해서 사용하기도 하지만, Cli 환경에서 바로 Spark-shell에 붙어서 사용하는 경우 많다. 

 

이때, 발생할 수 있는 Warning 중 두가지 사례에 대해 정리하려고 한다.

 

현재 화면은 Spark 1.6 버전이지만, Spark 2.X 버전에서도 동일하게 발생할 수 있다.


1)

경고 메세지 Failed to created SparkJLineReader
원인

spark-shell을 실행시키는 유저의 OS 홈 디렉터리 문제로 Permission denied의 경우 유저 홈 디렉터리에 접근권한이 없는 경우 발생. 

아예 홈디렉터리 없는 경우에는 No such file or directory 라는 메시지 발생.

해결 spark-shell 유저의 OS 홈 디렉터리 접근 권한 추가 또는 홈 디렉터리 생성.

 

2)

경고 메세지 Service 'SparkUI' could not bind on port 4040. Attempting port 4041.
원인

Default로  spark.driver.appUIAddress의 포트는 4040으로 시작된다. 따라서 클러스터에서 가장 첫번째로 실행되는 spark-shell에 4040 포트가 맵핑되는데, 4040으로 맵핑된 spark-shell 실행중인데 두번째로 spark-shell이 실행될 경우에 1증가한 4041포트로 접근하겠다는 경고이다. 4040과 4041이 맵핑되어 있는 상태에서 또 shell이 실행되면 그 다음으로 4043, 4044, 4045 순으로 증가하면 포트가 맵핑 된다.

해결 에러가 발생한 것이 아니기 때문에 무시해도 무관하다.

 

공유하기

facebook twitter kakaoTalk kakaostory naver band