Hue / Hive用户root不允许冒充Hue

情况:我已经在不同的Docker容器中设置了Hive,Hue和Hadoop。 在同一个Dockernetworking中。 我为每个Hadoop Namenode,2个Datanodes,1个Hue实例,1个Hive Server和一个Postgres Metastore创build了一个容器。 我能够在namenode的hdfs-site.xml中configurationhue代理用户,并且可以通过webhdfs浏览文件系统。 然而,对于Hive,我得到了Hue中的错误:

Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException (org.apache.hadoop.security.authorize.AuthorizationException): User: root is not allowed to impersonate hue 

我可以在Hive中创buildHive表格,或者在Sparkjobs中写入Hive表格。

我到目前为止所尝试的是:

我试过添加类似的属性

  • hive.server2.proxy.user = hue
  • hive.server2.enable.impersonation =真
  • hadoop.proxyuser.hue.hosts = *
  • hive.server2.authentication = NONE

在不同的configuration文件中,如:

  • core-site.xml在hdfs-namenodeconfiguration文件夹中
  • hive-hadoop文件夹中的core-site.xml
  • 两者都是hdfs-site.xml
  • hive-conf文件夹中的hive-site.xml

这个问题大部分都是在类似的问题上提出的,但是现在看起来并不是最新的。 对于一些房产蜂房说:财产不明

我需要澄清的是:

  • 什么是正确的文件添加configuration?
  • 什么是正确的财产补充?
  • 我是否必须添加一些configuration到色调的metaore?

附加信息: – Hive版本:2.3.1 – Hive Hadoop版本:2.7.4 – Hadoop集群版本:2.7.2(我认为版本差异不应该成为这里的问题!

色调版本:4(gethue / hue:最新的formsdocker集线器)

  • 完整的错误日志在这里
  • 蜂巢configuration在这里
  • 这里 HDFS站点configuration

好的,我find了一个解决scheme:

将以下属性添加到hadoop namenodes和datanodes core-site.xml:

 <property> <name>hadoop.proxyuser.root.groups</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.root.hosts</name> <value>*</value> </property> 

此外,如果Hive在hue .ini文件中的另一台机器/容器上运行,并将hive-config文件夹复制到色相容器/机器,则需要将path设置为Hiveconfiguration。

请注意,在Hue文档中,WebHdfs的configuration在hdfs-site.xml中完成, configuration单元hive-site.xml中完成