zoukankan      html  css  js  c++  java
  • 13、【Hive】hive在启动beeline客户端时报错:User: xxx is not allowed to impersonate xxx

    • 背景

      在启动完成hive服务:hive --service metastore

      启动hive2服务的过程中:hive --service hiveserver2

      启动beeline客户端时,beeline -u jdbc:hive2://pc001:10000 -n nuochengze

      报错:

      java.lang.RuntimeException: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: nuochengze is not allowed to impersonate nuochengze

    • 分析

      通过hive的thrift服务来实现跨语言访问Hive数据仓库,但是hadoop引入了一个安全伪装机制,使得hadoop不允许上层系统直接将实际用户传递到hadoop层,而是将实际用户传递给一个超级代理,由此代理在hadoop上执行操作,从而避免任意客户端随意操作hadoop。

    • 解决措施

      在hive-site.xml中添加

      <!-- yarn作业获取到的hiveserver2用户都为hive用户,设置成true则为实际的用户名-->
      <property>
       <name>hive.server2.enable.doAs</name>
       <value>true</value>
      </property>     
      

      之后在hadoop的core-site.xml中添加

      <property>
        <name>hadoop.proxyuser.yourusename.groups</name>
      <value>*</value>
      </property>
      
      <property>
       <name>hadoop.proxyuser.yourusename.hosts</name>
       <value>*</value>
      </property>
      
    • 效果

  • 相关阅读:
    JS基础_自增和自减
    计算机组成原理
    SyntaxHighlighter
    10个经典的C语言面试基础算法及代码
    知名互联网公司面试题
    计算机网络基础知识(笔试题)
    面试准备之常见上机题目搜罗
    小米2013年校园招聘笔试题-简单并查集
    2014华为上机试题
    C++学习笔记
  • 原文地址:https://www.cnblogs.com/nuochengze/p/15343407.html
Copyright © 2011-2022 走看看