1. 下载依赖

首先按照官方手册提供的列表,安装所有依赖


PS:yum install mvn没有的话使用yum install maven

2. 配置maven

公司有自己maven仓库的话可以用自己的。

vi /etc/maven/settings.xml

3. 配置hue并make

3.1 修改pom.xml

进入hue解压出来的maven目录,修改pom.xml。之所以做这样的修改时默认的pom.xml都是按照CDH hadoop来的,为了在apache hadoop上用,需要进行相关配置。

  1. 修改版本信息(修改成自己的版本)

  1. 修改hadoop-core为hadoop-common(hadoop-core的话会找不到依赖的jar)

  1. 修改hadoop-test的version信息为具体值

3.2 删除会引起编译出错的类

rm -rf $HUE_HOME/desktop/libs/hadoop/java/src/main/java/org/apache/hadoop/thriftfs/ThriftJobTrackerPlugin.java

rm -rf $HUE_HOME/desktop/libs/hadoop/java/src/main/java/org/apache/hadoop/mapred/ThriftJobTrackerPlugin.java

3.3 编译

执行完以上操作后,在hue主目录直接执行:

make apps

3.4 修改hue配置

修改hue配置(根据自己实际情况做改动)

vi $HUE_HOME/desktop/conf/hue.ini 

主要修改如下内容

 #[desktop]
 # ...
  # Webserver listens on this address and port
  http_host=10.45.10.32
  http_port=8888

  # Time zone name
  time_zone = Asia/Shanghai

  # Webserver runs as this user
  server_user=root
  server_group=root
  
 # This should be the hadoop cluster admin
  default_hdfs_superuser=root

# [hdfs_clusters]
fs_defaultfs=hdfs://10.45.10.33:9000
webhdfs_url=http://10.45.10.33:50070/webhdfs/v1

# [yarn_clusters]
  # Enter the host on which you are running the ResourceManager
  resourcemanager_host=10.45.10.33

  # The port where the ResourceManager IPC listens on
  resourcemanager_port=8032
  
  # URL of the ResourceManager API
 resourcemanager_api_url=http://10.45.10.33:8088

  # URL of the ProxyServer API
  proxy_api_url=http://10.45.10.33:8088

  # URL of the HistoryServer API
  history_server_api_url=http://10.45.10.33:19888
  
  #[zookeepr]
      # Zookeeper ensemble. Comma separated list of Host/Port.
      # e.g. localhost:2181,localhost:2182,localhost:2183
      host_ports=10.45.9.139:2181,10.45.10.33:2181,10.45.10.34:2181,10.45.10.35:2181

#[hbase]
hbase_clusters=(Cluster|10.45.10.33:9090)

# hbase-site.xml也可以拷贝一份到hue
hbase_conf_dir=/root/Downloads/hue-3.10.0/conf


# [hive相关配置]
# hive地址
  hive_server_host=10.45.10.33

# 拷贝过来的hive-site.xml所在位置
hive_conf_dir=/root/Downloads/hue-3.10.0/conf
  1. 在$HUE_HOME/build/env/bin下执行supervisor即可成功开启hue服务

可以使用nohup sh supervisor &来后台执行

4.配置HDFS(namenode上修改即可)

HUE访问HDFS可以采用2种方式:

  1. webhdfs: 默认随着集群一起启动,在50070端口上。当hue server和namenode在一个节点上可以使用这种方法。
  2. httpfs: 通过HTTP来访问HDFS,也同样支持RESTFul API。 默认启动在14000端口。是个独立服务,需要单独启动。

4.1 webhdfs

在NameNode的hdfs-site.xml增加如下配置:

<property>
  <name>dfs.webhdfs.enabled</name>
  <value>true</value>
</property>

在NameNode的core-site.xml增加如下配置(root可以用自己的用户名替换,取决于你hue WEB UI里创建的用户名):

<property>
  <name>hadoop.proxyuser.root.hosts</name>
  <value>*</value>
</property>
<property>
  <name>hadoop.proxyuser.root.groups</name>
  <value>*</value>
</property> 

修改完毕后,重启服务器即可

4.2 httpfs

在NameNode的httpfs-site.xml增加如下配置:

<property>
  <name>httpfs.proxyuser.root.hosts</name>
  <value>*</value>
</property>
<property>
  <name>httpfs.proxyuser.root.groups</name>
  <value>*</value>
</property>

在$HADOOP_HOME/sbin下使用如下命令启动httpfs。在启动前在/etc/profile下添加个环境变量CATALINA_PID防止把PID存到/tmp下

# httpfs
export CATALINA_PID=$HADOOP_HOME/pids/httpfs.pid

然后启动$HADOOP_HOME/sbin/httfs.sh start

检查下14000端口占用情况:

5. 配置HBASE

首先正常启动hbase集群
然后将$HBASE_HOME/conf/hbase-site.xml拷贝至配置文件中指定的目录,我们这里是/root/Downloads/hue-3.10.0/conf

然后直接用hbase thrift server命令来启动hbase thrift server

6. 配置hive

然后将$HIVE_HOME/conf/hbase-site.xml拷贝至配置文件中指定的目录,我们这里是/root/Downloads/hue-3.10.0/conf

启动hiveserver2

7. 登入HUE WEB

我这里HBASE本来就没东西,所以为空

参考资料:

  1. Hue3.9 安装教程:华丽的Spark,Hadoop UI
  2. 官方文档