HBase Zookeeper AUTH_FAILED - Не удалось найти ни одного Kerberos tgt - PullRequest
0 голосов
/ 13 марта 2020

Среда

  • HBase 1.5
  • Hadoop 2.9.2
  • Zookeeper 3.5.6

Ошибка

Получение следующей ошибки после настройки Zookeeper для использования Kerberos и настройки конфигурации входа в систему HBase jaas.conf

... in hbase-master.log

ERROR org.apache.zookeeper.ClientCnxn: SASL authentication with Zookeeper Quorum member failed:
 javax.security.sasl.SaslException: An error: (java.security.PrivilegedActionException:
 javax.security.sasl.SaslException: GSS initiate failed 
               [Caused by GSSException: No valid credentials provided 
                (Mechanism level: Failed to find any Kerberos tgt)]) 
               occurred when evaluating Zookeeper Quorum Member's  received SASL token. 
               Zookeeper Client will go to AUTH_FAILED state.

HBase jaas.conf

 Client {
    com.sun.security.auth.module.Krb5LoginModule required
    useKeyTab=true
    useTicketCache=true
    storeKey=true
    keyTab="/etc/security/keytabs/hbase.keytab"
    principal="hbase/@REALM.COM";
 };

hbase-env. sh

export HBASE_OPTS="-Djava.security.auth.login.config=/opt/hbase/conf/jaas.conf"

1 Ответ

0 голосов
/ 13 марта 2020

Проблема в hbase-env.sh, для hbase нужно больше java.security.auth.login.config, установленного в HBASE_OPTS.

Правильный способ настройки Zookeeper jaas.conf:

export HBASE_SERVER_JAAS_OPTS="-Djava.security.auth.login.config=/opt/hbase/conf/jaas.conf"
export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -Djava.security.auth.login.config=/opt/hbase/conf/jaas.conf"

Если между вашими master и region у вас есть отдельные keytabs, вам понадобятся два файла JAAS, и вы должны указать оба

  • HBASE_SERVER_JAAS_OPTS
  • HBASE_MASTER_OPTS

Если вы используете только 1 принципал Kerberos для всего hbase, вам нужно только установить HBASE_SERVER_JAAS_OPTS

...