User root is not allowed to impersonate anonymous

使用HiveServer2 and Beeline模式运行时,启动好HiveServer后运行

beeline -u jdbc:hive2://localhost:10000 -n root 连接server时
 
出现
java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): 
User root is not allowed to impersonate anonymous 错误。
 
  • 修改hadoop 配置文件 etc/hadoop/core-site.xml,加入如下配置项

    hadoop.proxyuser.root.hosts
    *


    hadoop.proxyuser.root.groups
    *

 

    Hadoop.proxyuser.root.hosts配置项名称中root部分为报错User:* 中的用户名部分

    例如User: zhaoshb is not allowed to impersonate anonymous则需要将xml变更为如下格式

    主要注意的是proxyuser.这部分是你要用来登录hive的用户名,比如是root,就是root,如果是lin,就是hadoop.proxyuser.lin.hosts


    hadoop.proxyuser.zhaoshb.hosts
    *


    hadoop.proxyuser.zhaoshb.groups
    *

 

  • 重启hadoop
  • 测试:./beeline -u 'jdbc:hive2://localhost:10000/userdb' -n username(替换为上述的用户名部分)

你可能感兴趣的:(hive)