3
에 의해 Kerberos 지원 HDFS의 데이터에 액세스하기 위해 Spark 1.6.0
을 사용하고있었습니다.스파크 얀 클라이언트 모드에서 Kerberos 티켓을 갱신하는 방법은 무엇입니까?
내 응용 프로그램은 클라이언트 모드의 스파크 온 실 (spark on yarn)으로 배포됩니다. 기본적으로 Kerberos 티켓은 24 시간마다 만료됩니다. 모든 것이 처음 24 시간에는 정상적으로 작동하지만 24 시간 (또는 그 이상, 예를 들면 27 시간) 후에 파일을 읽지 못합니다.
나는 티켓을 갱신하고 갱신하는 몇 가지 방법을 시도했지만 작동하지 않습니다.
spark-submit
명령 줄- 시작에
spark-defaults.conf
- 설정
--keytab
및--principal
에spark.yarn.keytab
및spark.yarn.principal
설정 코드에서 타이머UserGroupInformation.getLoginUser().checkTGTAndReloginFromKeytab()
2 시간마다 호출합니다.
오류 정보는 다음과 같습니다
WARN [org.apache.hadoop.ipc.Client$Connection$1.run(Client.java:671)] - Couldn't setup connection for adam/[email protected] to cdh01/192.168.1.51:8032
DEBUG [org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1632)] - PrivilegedActionException as:adam/[email protected] (auth:KERBEROS) cause:java.io.IOException: Couldn't setup connection for adam/[email protected] cdh01/192.168.1.51:8032
ERROR [org.apache.spark.Logging$class.logError(Logging.scala:95)] - Failed to contact YARN for application application_1490607689611_0002.
java.io.IOException: Failed on local exception: java.io.IOException: Couldn't setup connection for adam/[email protected] to cdh01/192.168.1.51:8032; Host Details : local host is: "cdh05/192.168.1.41"; destination host is: "cdh01":8032;
Spark 앱을 어떻게 시작합니까? 스파크 제출? 오지? –
spark-submit - spool-submit-spawn -deploy-mode 클라이언트로 spark 앱 제출 --principal xxx --keytab xxx – Adam
이 링크는 도움이 될 수 있습니다. https://community.hortonworks.com/questions/35261/what-is -correct-strategy-for-spark-streaming-kerbe.html –