问题1:User: root is not allowed to impersonate anonymous
我在用kettle9.1连接虚拟机上hive2.3.8时出现错误1:如下
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 anonymous
User: root is not allowed to impersonate anonymous
提示没有权限
解决办法:
修改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集群:stop-all.sh
再重启:start-all.sh
有可能还是不行,出现例如User: xqql is not allowed to impersonate anonymous
那你就把里面的root改为你的主机名
还要注意一点:记得更新你kettle里放的core-site.xml否则也会失败
问题2:
问题如下:
Error connecting to database: (using class org.apache.hive.jdbc.HiveDriver)
出现没有hive驱动的问题
解决办法:
去虚拟机上找到hive安装目录下的lib目录,把里面以hive开头的jar包复制到
F:\kettle\data-integration\plugins\pentaho-big-data-plugin\hadoop-configurations\hdp30\lib\pmr
下
建议再F:\kettle\data-integration\lib
此目录下也放一份你复制的hive的jar包
另外如果是mysql.driver找不到,你就去弄一个对应的mysql连接jar包放到data-integration\lib目录下
注意:kettle9.0以及之后版本连接mysql8.0只需要一个jar包如
mysql-connector-java-8.0.26.jar
如果用的的是kettle8.几版本去连mysql8.0还需要加一个jar包
mysql-connector-java-5.1.49-bin.jar