hive is not allowed to impersonate hive

hiveAprès votre configuration Hadoop, dans mon cas Hortonworks, vous pouvez être confronter au message d'erreur "hive is not allowed to impersonate hive" lorsque vous tentez d’accéder à votre cluster :
Error: Failed to open new session: java.lang.RuntimeException: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: hive is not allowed to impersonate hive (state=,code=0)
Voici les étapes à suivre pour ne avoir de problème :

1. Modification de la configuration

Dans le répertoire de configuration (/usr/hdp/2.3.6.0-3796/hadoop/conf), modifiez le fichier core-site.xml : <property><name>hadoop.proxyuser.hive.groups</name><value>*</value></property> <property><name>hadoop.proxyuser.hive.hosts</name><value>*</value></property>

2. Vérifier la prise en compte de la modification

hadoop org.apache.hadoop.conf.Configuration |grep proxy | grep hive

3. Relancer le namenode et le datanode

Arret/relance
/usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop namenode
/usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop datanode
/usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start namenode
/usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start datanode

4. Vérification Hadoop

hadoop dfsadmin -report

5. Vérification de la prise en compte

beeline
beeline> !connect jdbc:hive2://monserveur:10000
beeline> Enter username for jdbc:hive2://monserveur:10000:hive
Connected to: Apache Hive (version 1.2.1.2.3.6.0-3796) Driver: Hive JDBC (version 1.2.1.2.3.6.0-3796) Transaction isolation: TRANSACTION_REPEATABLE_READ

Effectuer la modification dans AMBARI

is-not-allowed-to-impersonate-hive-1   is-not-allowed-to-impersonate-hive-2   is-not-allowed-to-impersonate-hive-3   is-not-allowed-to-impersonate-hive-4   [embed]https://www.nicolas-housset.fr/wp-content/uploads/2017/05/hive-is-not-allowed-to-impersonate-hive.mp4[/embed]

Nicolas Housset

Passionné d'informatique, je suis Consultant et expert technique SAS VIYA, également co-fondateur de la société Flexcelite. Spécialisé dans les technologies SAS (Viya, 9.4) et les infrastructures associées (Linux, Hadoop, Azure), ce blog est mon espace pour partager mes mémos techniques et retours d'expérience.