Я подготовил кластер из двух узлов с простым Apache Hadoop. Эти узлы действуют как клиент Kerberos на другие компьютеры, которые действуют как сервер Kerberos. KDC Db, руководители hdfs на каждой машине создаются с помощью своих файлов kaytab с надлежащими типами шифрования с использованием AES. Изменены необходимые файлы hdfs-site, core-site, mapred-site, yarn-site и container-executor.cfg. Кроме того, для неограниченной защиты, файлы политики JCE также хранятся в каталоге $ JAVA_HOME/lib/security.Проверка подлинности Kerberos на кластере Hadoop
При запуске демонов namenode он работает нормально. Но при обращении к HDFS, как
Hadoop фс -ls/
мы получили ошибку ниже:
15/02/06 15:17:12 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)] ls: 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)]; Host Details : local host is: "xxxxxxx/10.122.48.12"; destination host is: "xxxxxxx":8020;
Если кто-то имеет предшествующее знание или работал на Kerberos поверх Hadoop, любезно предложить нам некоторое решение по вышеуказанному вопросу.