Hue是开源的Apache Hadoop UI系统,最早是由Cloudera Desktop演化而来,由Cloudera贡献给开源社区,它是基于Python Web框架Django实现的。通过使用Hue我们可以在浏览器端的Web控制台上与Hadoop集群进行交互来分析处理数据,例如操作HDFS上的数据,运行MapReduce Job等等。Hue所支持的功能特性集合:
1.认基于轻量级sqlite数据库管理会话数据,用户认证和授权,可以自定义为MySQL、Postgresql,以及Oracle等;
2.基于文件浏览器(File Browser)访问HDFS;
3.基于Hive编辑器来开发和运行Hive查询;
4.支持基于Solr进行搜索的应用,并提供可视化的数据视图,以及仪表板(Dashboard);
5.支持基于Impala的应用进行交互式查询;
6.支持Spark编辑器和仪表板(Dashboard);
7.支持Pig编辑器,并能够提交脚本任务;
8.支持Oozie编辑器,可以通过仪表板提交和监控Workflow、Coordinator和Bundle;
9.支持HBase浏览器,能够可视化数据、查询数据、修改HBase表;
10.支持Metastore浏览器,可以访问Hive的元数据,以及HCatalog;
11.支持Job浏览器,能够访问MapReduce Job(MR1/MR2-YARN);
12.支持Job设计器,能够创建MapReduce/Streaming/Java Job;
13.支持Sqoop 2编辑器和仪表板(Dashboard);
14.支持ZooKeeper浏览器和编辑器;
15.支持MySql、PostGresql、Sqlite和Oracle数据库查询编辑器

Hue的安装并不是那么简单,因为官方并没有编译好的,需要我们自己从github上下载源码、安装依赖、自己编译安装,编译的过程中最难也就是各种依赖缺失报错,本文将实际来进行下载-编译-安装-配置-运行hue的完整的操作过程。

环境准备

1.CentOS7.2系统(虚拟机)
2.Hue4.1源码包: 下载地址:https://codeload.github.com/cloudera/hue/zip/branch-4.1
3.Maven环境

编译环境

在CentOS系统中安装编译Hue需要的依赖库:
yum install krb5-devel cyrus-sasl-gssapi cyrus-sasl-deve libxml2-devel libxslt-devel mysql mysql-devel openldap-devel python-devel python-simplejson sqlite-devel



以上需要的依赖就安装完了,在编译过程中还有需要的依赖我们再安装。
编译Hue还需要Maven环境,因此在编译前需要安装Maven,可以参考之前的Linux安装Maven的内容。

编译过程

上传源码

本文是在虚拟机的CentOS环境中进行的,我们首先上传hHue源码包到虚拟机系统中

解压源码

由于源码包是从github上下载的,下载的格式是zip,我们使用unzip命令解压

注:如果没有unzip服务,使用yum install unzip安装

开始编译

进入hue源码目录使用 make apps进行编译

编译问题

1>.解决maven 权限问题
编译时提示maven的权限不够

解决办法:进入maven的bin目录将mvn权限修改 chmod 777 mvn

2>.gcc命令错误
编译提示commod gcc命令错误

解决办法:yum install gcc

3>.ffi.h致命错误
编译时出现缺失ffi.h致命错误

解决办法:yum install libffi-devel openssl-devel

4>.gmp.h致命错误
编译时出现缺失gmp.h致命错误

解决办法:yum install gmp-devel

5>.缺失execvp错误
编译时出现缺失execvp错误
解决办法: yum install gcc-c++

编译完成

经过上面的步骤Hue编译完成了,编译完成后Hue目录下多出一个app.reg文件和build文件夹

完整的依赖:
yum install krb5-devel cyrus-sasl-gssapi cyrus-sasl-deve libxml2-devel libxslt-devel mysql mysql-devel openldap-devel python-devel python-simplejson sqlite-devel libffi-devel openssl-devel gmp-devel gcc gcc-c++

启动验证

启动服务

进入编译目录下cd build/env/bin/ 然后输入启动命令:./hue runserver 0.0.0.0:8000,注意如果不加0.0.0.0:8000参数就是只有本机能访问,或者使用 ./supervisor命令启动

此时Hue服务已经启动完成

访问验证

在电脑浏览器上输入192.168.1.50:8000,如果是第一次登陆则是需要先创建一个用户

最后总结

本文主要是实践了Hue的编译安装过程,后面的文章中我们会继续深入Hue操作和集成Hdfs、Hive、Hbase、Mysql等