Hive报错 | User: root is not allowed to impersonate root (state=08S01,code=0) Beeline version 3.1.2 by Apache Hive

  • 错误信息:

  • 修改hadoop 配置文件 etc/hadoop/core-site.xml,加入如下配置项

<!--  表示设置 hadoop 的代理用户-->
    <property>
        <!--表示代理用户的组所属-->
        <name>hadoop.proxyuser.root.groups</name>
        <value>*</value>
    </property>
    
    <property>
        <!--表示任意节点使用 hadoop 集群的代理用户 hadoop 都能访问 hdfs 集群-->
        <name>hadoop.proxyuser.root.hosts</name>
        <value>*</value>
    </property>
  • 测试后成功

  • 原因:主要原因是hadoop引入了一个安全伪装机制,使得hadoop 不允许上层系统直接将实际用户传递到hadoop层,而是将实际用户传递给一个超级代理,由此代理在hadoop上执行操作,避免任意客户端随意操作hadoop

参考:原文链接

posted @ 2021-08-02 17:38  —清风碎心—  阅读(971)  评论(0编辑  收藏  举报