hue基本功能介绍
Hue是一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera公司将其贡献给Apache基金会的Hadoop社区,它是基于Python Web框架Django实现的。
通过使用Hue我们可以在浏览器端的Web控制台上与Hadoop集群进行交互来分析处理数据,例如操作HDFS上的数据,运行MapReduce Job,执行Hive的SQL语句,浏览HBase数据库等等。
hue代码地址
https://github.com/zzjackaa/hue4.2.0ambari2.7.3
项目代码hue的实现,使用的是我自己打的docker容器,因为本人环境是arm架构的,非x86的,需要的可以官网下载docker容器自行修改。
hue适配功能列表
当前hue适配ambari2.7.3版本,需配合ambari一起安装才可使用,现阶段适配功能有:
hive
上图可查看通过编辑栏编写可提示的hivesql,点击运行即可查看结果,结果可以以多种样式展示。
使用此项功能需要注意以下几点
- 由于hive默认使用spark作为计算引擎,且hue的hive依赖与spark的thrift server ,hue对于不同平台之间不同代码的通讯采用thrift协议,因此必须安装spark thrift。
2.由于tez on yarn 和 spark on yarn 中只可以同时运行一个 ,因此默认hive及 spark 通用计算引擎为spark,此设定会导致左侧编辑栏无法查看表结构预览,但可通过show tables等操作查看。如果需要tez作为计算引擎,需要在ambari平台停止spark2 thrift服务(通过点击 SPARK2 THRIFT SERVERS 找到安装的主机节点将其停止即可),
并且将hue的pseudo-distributed中修改 hive_server_host 和hive_server_port 的参数(将其改为tez on yarn的节点和端口),最后重启hue服务,但这样会导致spark2无法与hue通讯 ,hue的sparksql将无法使用,且tez on yarn 和spark on yarn 不属于同一库,在spark on yarn的会在tez on yarn中无法找寻。
hbase
如图所示,左侧编辑栏选定正方形图标即可查看到hbase的表结构,点击某一表可查看其rowkey与 Column Family相关信息。
使用此项功能需要注意以下几点
1.由于hue的hbase依赖与hbase thrit服务,因此ambari需要安装并开启thrift服务。
由于ambari的hbase并没有thrift功能,此项功能为二次开发后续添加。并集成至rpm安装包,由此包安装即可发现hbase thrift安装选项,安装即可。
spark
如上图所示点击查询下拉框。找到sparksql点击即可编辑。
spark暂时只支持spark sql 需开启thrift服务及livy服务。scala及pyspark等模块暂时没有与ambari适配,后期会添加。
oozie
点击计划程序查找workflow即可添加job 支持hive sql shell hdfs 等添加
点击作业即可查看任务详情。具体每个类型如何使用不再详述,参考其余博客即可。
作业详情可通过作业查看
solr
如上图所示操作即可
mysql
点击查询下拉框即可找到mysql编辑,左侧为表结构展示,长按拖住某一表入编辑框,即可查看到默认sql语句。
需要注意事项
1.安装hue时需要创建hue库,且此用户必须拥有hue节点访问mysql节点的权限
安装时即可查看,且为必填项。
hdfs
左侧编辑点击文本图标即可查看预览hdfs下的文件结构,如需详看,右键点击在浏览器中展示即可在右侧查看文件详细信息,且此文件支持编辑修改(hdfs本身不支持修改,但hue可以)。
需要注意事项:
1.安装此文档需要在core-site添加proxy代理。否则无权访问
<property>
<name>hadoop.proxyuser.hue.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hue.groups</name>
<value>*</value>
</property>
在ambari中hdfs的高级中条件hadoop.proxyuser就可以查看。安装时会默认添加,一般不用修改。
hue权限功能管理
由于各个组建需要获取对应的权限。因此需要给admin hue获取大数据集群的超级用户权限。
我们需要开启ambari的ranger服务来实现此功能
启动hdfs ranger 点击右侧 hdfs ranger ui 进入 ranger界面
在主界面中点击 test3_hadoop
点击all-path 右侧修改图标进行权限赋予
为admin hue添加hdfs的读写执行权限,这样hue就可以正常访问hdfs上的文件目录了。其余组件也按照此类方法配置即可。