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中完成