
Aprè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

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