集群外访问hyperbase(hbase shell)

  其他常见问题
内容纲要

概要描述

本篇KB介绍多种情况下,外部服务器访问集群内hyperbase的多种配置方法。


详细说明

本篇文章会详细介绍在集群未开启安全、开启安全的情况下以及对于普通低权限用户,如何去访问hyperbase。

集群未开启安全

1.manager页面上下载tdh-client客户端包,上传至集群外服务器上。

2.上传后解压

tar -xvf tdh-client.tar

3.执行source /*/TDH-Client/init.sh 后,hbase shell即可访问

集群开启安全

1.开启安全后需要重新到manager页面下载新的tdh-client包(开启安全后与未开启时的客户端是不一样的),下载后上传至集群外服务器上

2.在集群外的服务器上新建目录

mkdir -p /etc/hyperbase1/conf/

3.拷贝集群manager节点下的/etc/krb5.conf到集群外tdh client执行机上,放在/etc目录下

4.拷贝集群manager节点下的/etc/hyperbase1/conf中的krb5.conf,jaas.conf,hyperbase.keytab,client-credential.jks到执行机的/etc/hyperbase1/conf中

5.解压后,执行source /****/TDH-Client/init.sh 后,hbase shell即可访问

PS:若不拷贝krb5.conf,jaas.conf,hyperbase.keytab,client-credential.jks等配置文件到/etc及/etc/hyperbase1/conf目录下,hbase shell访问会有如下报错

客户环境有所限制

某些客户出于对生产环境的安全的考虑,会限制普通用户去访问/etc 目录下文件的权限,这种情况下普通用户source init.sh后,执行hbase shell就会出现如上的报错。在这种情况下,进行如下配置即可。

1.下载正确的tdh-client包(安全对应安全的包,非安全对应分安全的包)上传至执行机服务器,按照如上的命令解压。

2.修改客户端包中/****/TDH-Client/conf/hyperbase下的hbase-env.sh脚本

vi /****/TDH-Client/conf/hyperbase/hbase-env.sh

修改export KRB_OPTS部分为客户端包路径下的配置文件路径
如原本配置为指向/etc 目录下的配置文件

export KRB_OPTS="-Djava.security.krb5.conf=/etc/hyperbase1/conf/krb5.conf -Djava.security.auth.login.config=/etc/hyperbase1/conf/jaas.conf"

当前客户端hyperbase相关的配置文件路径为/TDH-Client/conf/hyperbase1/

则修改为
export KRB_OPTS="-Djava.security.krb5.conf=/TDH-Client/conf/hyperbase1/krb5.conf -Djava.security.auth.login.config=/TDH-Client/conf/hyperbase1/jaas.conf"

3.执行source /****/TDH-Client/init.sh 后,hbase shell即可访问

通过java对接访问

此种场景可参考KB https://nj.transwarp.cn:8180/?p=4005

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。