天天看点

安装hue-3.11.0

1) 配置HDFS HttpFS和WebHDFS

如果HDFS是HA方式部署的,则只能使用HttpFS,而不能用WebHDFS。

2) 安装依赖:

apr-iconv-1.2.1

confuse-3.0

apr-util-1.5.4

libpng-1.6.26

apr-1.5.2 

expat-2.2.0

pcre-8.38

libxml2-devel

libxslt-devel

sqlite-devel

。。。。。。

3) 编译安装Hue

解压Hue安装包,然后执行

make install PREFIX=/usr/local

进行安装!

可以考虑修改下Makefile.vars.priv中的INSTALL_DIR值为$(PREFIX),而不是默认的$(PREFIX)/hue,

这样改为执行:

make install PREFIX=/usr/local/hue-3.11.0

带上版本号是个好习惯,安装好后再建一个软链接,如:ln -s /usr/local/hue-3.11.0 /usr/local/hue。

编译安装过程中最常遇到的是缺乏依赖库,只需要按提示进行补充然后重复继续即可。

4) 修改desktop/conf/hue.ini

A) [desktop]

I) 为secret_key指定一个值,如ABC123,可以不指定,但Hue Web将不能保持会话。

II) 修改http_port为Web端口,如80或8080等。

III) 建议time_zone为北京时区Asia/Shanghai

B ) [[hdfs_clusters]]

I) 修改fs_defaultfs的值为core-site.xml中的fs.defaultFS的值

II) logical_name值HDFS集群名

III) webhdfs_url值为http://$host:14000/webhdfs/v1,其中“$host”值需为提供HttpFS服务的IP或主机名

IV) 修改hadoop_conf_dir的值为hadoop配置目录路径

C) [[yarn_clusters]]

I) 修改resourcemanager_host值为主ResourceManager的IP地址(默认为8032端口所在地址),

注意不能为备ResourceManager的IP,原因是备ResourceManager不会打开端口8032。

II) 修改logical_name值为集群名。

III) 修改resourcemanager_api_url的值,将localhost替换成ResourceManager的8088端口地址。

D) [hbase]

I) 修改hbase_conf_dir为HBase的配置目录路径

II) 修改thrift_transport为HBase Thrift2 Server采用的Transport,两者必须一致。

III) 注意截止hue-3.11.0版本,只支持HBase ThriftServer,而不支持HBase Thrift2Server

因此hbase_clusters的值要配置指向ThriftServer,其中Cluster可以为其它自定义值,只是为在Web上显示,

Cluster后面的值必须为HBase ThriftServer的服务地址和端口。

如果需要同时运行HBase ThriftServer和HBase Thrift2Server,请为两者指定不同的服务端口和信息端口。

E) [beeswax]

修改hive_conf_dir为Hive的配置目录路径。

5) 启动Hue

进入Hue的build/env/bin目录,然后执行supervisor即可启动Hue服务。

6) 打开Web

假设Hue安装在192.168.1.22,服务端口号为8080,则只需要在浏览器中输入:http://192.168.1.22:8080即可进入Hue Web界面。

如果是第一次运行,则必须先创建好管理员帐号才能进入。

如果遇到错误,则可以检查Hue的错误日志文件error.log来了解是什么错误。

Hue ERROR日志:

1) Failed to obtain user group information: org.apache.hadoop.security.authorize.AuthorizationException

is not allowed to impersonate (error 403)

一般是因为core-site.xml或httpfs-site.xml没配置正确。

////////////////////////////

附)配置HDFS HttpFS和WebHDFS

HDFS支持两种RESTful接口:WebHDFS和HttpFS。

WebHDFS默认端口号为50070,HttpFS默认端口号为14000。

默认启动WebHDFS而不会启动HttpFS,而HttpFS需要通过sbin/httpfs.sh来启动。

WebHDFS模式客户端和DataNode直接交互,HttpFS是一个代理模式。如果HDFS是HA方式部署的,则只能使用HttpFS模式。

HttpFS是独立的模块,有自己的配置文件httpfs-site.xml、环境配置文件httpfs-env.sh和日志配置文件httpfs-log4j.properties,需独立启动。

而WebHDFS是HDFS内置模块,无自己的配置文件、环境配置文件和日志配置文件,随HDFS而启动。

WebHDFS配置,在core-site.xml中加入以下内容:

    hadoop.proxyuser.$username.hosts

    *

    hadoop.proxyuser.$groupname.groups

“$username”的值为启动HDFS的用户名,“$groupname”为启动HDFS的用户组名。

HttpFS配置,在core-site.xml中加入以下内容:

    hadoop.proxyuser.httpfs.hosts

    hadoop.proxyuser.httpfs.groups

对于HttpFS,还需要在httpfs-site.xml中加入以下内容:

    httpfs.proxyuser.$username.hosts

    httpfs.proxyuser.$groupname.groups

“$username”的值为启动HttpFS的用户名,“$groupname”为启动HttpFS的用户组名。

环境配置文件httpfs-env.sh可以不用修改,直接使用默认的值,当使用sbin/httpfs.sh来启动HttpFS时会屏幕输出HTTPFS_HOME等值。

继续阅读