项目场景:
hive 远程部署中
虚拟机Node_03执行通过Hive客户端工具Beeline远程连接虚拟机Node_02的HiveServer2服务。
命令:beeline -u jdbc:hive2://node02:10000 -n root -p
问题描述1
输入密码后出现如下错误
Error: Could not open client transport with JDBC Uri: jdbc:hive2://node-4:10000: 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 root (state=08S01,code=0)
原因分析:
hiveserver2增加了权限控制,需要在hadoop的配置文件中加一些配置信息
解决方案:
在hadoop的core-site.xml中添加如下内容
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
重启hadoop
重新执行一遍hive远程部署的流程
问题描述2
输入密码后出现如下错误
hadoop is not allowed to impersonate anonymous
解决方案2:
在hadoop的core-site.xml中添加如下内容
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
重启hadoop
重新执行一遍hive远程部署的流程