Я настроил Hadoop для использования Kerberos (следуя Руководство по безопасности Cloudera), но неясно, как я подключаюсь к hadoop с обычными пользователями (например, username = myuser).
В настоящее время я аутентифицирован с помощью Kerberos с моим администратором Keberos (через kinit kerbadmin/admin
), но это, похоже, не помогает. Нужно ли мне сообщать Hadoop, что пользователю Kerberos kerbadmin разрешено использовать Hadoop?
Запуск чего-то вроде hadoop fs -ls /
приводит к проблеме с разрешением:
11/09/13 11:13:03 WARN ipc.Client: Exception encountered while connecting to the server : javax.security.sasl.SaslException: GSS initiate failed [Caused by GSSException: No valid credentials provided (Mechanism level: Failed to find any Kerberos tgt)]
Bad connection to FS. command aborted. exception: Call to <myservername>/127.0.1.1:54310 failed on local exception: java.io.IOException: javax.security.sasl.SaslException: GSS initiate failed [Caused by GSSException: No valid credentials provided (Mechanism level: Failed to find any Kerberos tgt)]
Также, sudo -u hdfs hadoop fs -ls /
возвращает то же сообщение об ошибке.
Только что заметил приложение в руководстве по установке Cloudera это указывает на наличие известной ошибки с Kerberos, которая вызывает это, поэтому исправление должно выполняться kinit -R
после аутентификации на сервере