hbase远程连接之权限问题

在本地IDEA开发方便代码调试,测试通过后,才会打包上传服务器运行。

hbase客户端连接hbase服务端读写时,会出现莫名的异常,有时会报错看日志可以解决问题,有时控制台没有日志

本次遇到的问题是权限问题

服务器部署了ranger,当然hbase中也可以设置权限,因为集群不是我搭建的,不确定是哪种原因导致的权限问题。

下面说一下遇到的问题及思路和解决办法:

异常的现象:

1、idea控制台阻塞,不报错、不结束执行

2、查看hbase日志,没有看到有用的信息

 

思路:

1、如果本地和服务器通信有问题,应该会报host、port相关的问题,虽然知道可能不是这个问题,但还是检查ip和端口是否开放

检查命令:

//测试ip是否正常
ping ip 
//测试端口是否正常
telnet ip port

2、检查zookeeper是否正常

查看zookeeper、hbase的服务都正常

单点测试读取zookeeper是否正常

检查结果正常

3、用自己的测试服务器执行相同的代码,说明代码是正常的

4、ip、port、zookeeper、代码都正常,说明问题出在hbase上

 

解决办法:

1、在服务器端,进入Hbase客户端:hbase shell

 

2、对用户授权(一定是hbase可以执行操作的用户):grant "用户" ,"RWXCA"

 这是在hbase服务授予某个用户权限,RWXCA,是授权的权限的范围,这里授予全范围

3、在代码中,添加设置以什么用户访问

System.setProperty("HADOOP_USER_NAME","admin")

如果是打包运行在服务器运行

config.set("hadoop.user.name","admin")

 

 

你可能感兴趣的:(flink,hbase,大数据,flink,hbase,zookeeper,远程连接,权限)