Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
oozie Could not authenticate, GSSException: No valid credentials provided (Mechanism level: Failed to find any kerberos tgt)
kerberos환경에서 oozie admin -oozie http://node03.gooper.com@GOOPER.COM:11000 -status 수행시 아래와 같은 오류가 발생할 수 있는데
이때는 "sudo -su oozie"를 실행하여 oozie계정으로 전환 후
klist명령을 수행하여 Ticket cache의 정보를 확인한다.
- Default principal이 oozie/node03.gooper.com@GOOPER.COM인지 확인한다.
- Valid starting과 Expires, renew until 의 날짜와 시간을 보면 현재 날짜가 아닌 한참 이전의 날짜가 보일 수 있다.
- 이것은 당연히 principal의 유효일이 만료된 상태이므로 이 principal정보를 보내서는 kerberos tgt를 정상적으로 받을 수 없어 오류가 발생하는 것이다.
- 이때는 kdestroy를 수행하여 Ticket cache정보를 삭제하고 "kinit -kt /var/lib/keytab/oozie.keytab oozie/node03.gooper.com@GOOPER.COM"를 수행하여 Ticket cache정보를 재생성 해주면 일정 시간이 지난후 "oozie admin -oozie http://node03.gooper.com@GOOPER.COM:11000 -status" 를 수행했을때 오류없이 System mode: NORMAL이 표시 되는것을 확인할 수 있다.
* oozie서버 : http://node03.gooper.com@GOOPER.COM:11000
* 오류 메세지 :
ERROR: IO_ERROR : java.io.IOException: Error while connecting Oozie server: No of retries = 1. Exception = Could not authenticate, GSSException: No valid credentials provided (Mechanism level: Failed to find any kerberos tgt)