Hbase Thrift安装
Hue中访问Hbase是通过Hbase Thrift Server服务进行访问,所以第一步,我们需要添加Hbase Thrift Server。
1.在CM进入Hbase组件,点击添加角色实例
2.选择需要添加的主机进行添加
3.添加成功并启动Hbase Thrift Server服务
Hbase Thrift配置
再添加一个httpfs的服务 不然会报注:您是 Hue 管理员,但不是 HDFS 超级用户(即 ""hdfs"")。"""
选择一个服务器 部署 启动
服务添加完成后,进行Hbase的一些配置
1.从CM进入Hbase,点击配置,搜索thrift,按照下图配置
这个注意 必须要做 很容易漏 不然会报cdh6 Api 错误:TSocket read 0 bytes
2.在Hbase代理用户组和Hbase代理用户主机都配置为*
普通环境到这里就结束了
3.Hbase Thrift身份验证选择auth或者auth-int都可以。这里如果选择auth-conf会提示需要启用ssl,导致Hbase Thrift Server启动失败。
这个也注意 容易漏 会报 Api 错误:HTTPConnectionPool(host='slave2.zhendao.com', port=9090): Max retries exceeded with url: / (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))
4.在hbase-site.xml 的 Hbase 服务高级配置代码段(安全阀)这里添加下面的参数
这里的HTTP/cdh01.hadoop.com@HADOOP.COM 替换成trift 所在的节点
hbase.thrift.spnego.principal HTTP/cdh01.hadoop.com@HADOOP.COM hbase.thrift.spnego.keytab.file hbase.keytab
Hue集成Hbase配置
1.进入Hue服务的配置界面,搜索hue_safety_valve.ini添加如下配置
[hbase] hbase_conf_dir=/etc/hbase/conf thrift_transport=buffered
配置完成,重启Hbase和Hue。
Hue中测试Hbase
1.进入Hue服务界面点击“Web UI”
2.使用admin用户登录Hue,由于admin没有Hbase的访问权限,所以看不到表
3.使用hbase用户登录进行测试,如下图,可以看到Hbase中已经建好的表
点击进去,,和命令行显示相同查看数据也正常,集成成功。
总结
1.Hbase Thrift身份验证选择auth-conf会导致Thrift Server启动失败,因为没有启用hbase.thrift.ssl ,把身份验证修改为auth或者auth-int即可
2.hbase.thrift.support.proxyuser(启用 Hbase Thrift 代理用户)这个配置必须勾选,如果不勾选,不论你用什么用户登陆Hue,都显示的是user=hue,没有操作Hbase的权限。



