Hue的安装
Hue的安装支持多种方式,包括rpm包的方式进行安装,tar.gz包的方式进行安装以及cloudera manager的方式来进行安装等,我们这里使用tar.gz包的方式来安装。
下载Hue的压缩包并上传linux解压
Hue的压缩包的下载地址:
http://archive.cloudera.com/cdh5/cdh/5/
我们这里使用的是CDH5.14.0这个对应的版本,具体下载地址为
http://archive.cloudera.com/cdh5/cdh/5/hue-3.9.0-cdh5.14.0.tar.gz
下载然后上传到linux系统,然后进行解压
cd /export/softwares/
tar -zxvf hue-3.9.0-cdh5.14.0.tar.gz -C ../servers/
编译安装启动
linux系统安装依赖包
联网安装各种必须的依赖包(70M左右)必须下载完整,不然后续会报错
yum install ant asciidoc cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-plain gcc gcc-c++ krb5-devel libffi-devel libxml2-devel libxslt-devel make mysql mysql-devel openldap-devel python-devel sqlite-devel gmp-devel
配置Hue
cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf
#修改 hue.ini
#使用编译器打开该文件进行编辑(文件内容过多)
#通用配置
[desktop]
#该key自己随意编写
secret_key=jFE93j;2[290-eiw.KEiwN2s3['d;/.q[eIW^y#e=+Iei*@Mn<qW5o
#主节点
http_host=node03.hadoop.com
#界面
is_hue_4=true
#时区
time_zone=Asia/Shanghai
#用户
server_user=root
server_group=root
default_user=root
default_hdfs_superuser=root
#配置使用mysql作为hue的存储数据库,大概在hue.ini的587行左右
[[database]]
engine=mysql
host=node03.hadoop.com
port=3306
user=root
password=123456
#使用hue这个数据库,没有会报错
name=hue
创建mysql数据库
create database hue default character set utf8 default collate utf8_general_ci;
注意:一般需要为Hue这个数据库创建对应的用户,并分配权限
grant all on hue.* to 'hue'@'%' identified by 'hue';
进行编译
cd /export/servers/hue-3.9.0-cdh5.14.0
make apps
添加用户hue
useradd hue
passwd hue
启动hue进程
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
页面访问
http://node03:8888
第一次访问的时候,需要设置管理员用户和密码
我们这里的管理员的用户名与密码尽量保持与我们安装hadoop的用户名和密码一致
hue与其他的框架的集成
hue与hadoop的HDFS以及yarn集成
1、更改所有hadoop节点的core-site.xml配置
#添加如下配置
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
2、更改所有节点的hdfs-site.xml
#添加如下配置
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
3、重启hadoop集群
cd /export/servers/hadoop-2.6.0-cdh5.14.0
sbin/stop-dfs.sh
sbin/start-dfs.sh
sbin/stop-yarn.sh
sbin/start-yarn.sh
4、停止hue服务,并继续配置hue.ini
配置hue与hdfs集成
cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf
vim hue.ini
#配置hue与hdfs集成
[[hdfs_clusters]]
[[[default]]]
#修改如下内容
fs_defaultfs=hdfs://node01.hadoop.com:8020
webhdfs_url=http://node01.hadoop.com:50070/webhdfs/v1
hadoop_hdfs_home=/export/servers/hadoop-2.6.0-cdh5.14.0
hadoop_bin=/export/servers/hadoop-2.6.0-cdh5.14.0/bin
hadoop_conf_dir=/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
#hue与yarn集成
[[yarn_clusters]]
[[[default]]]
#修改如下内容
resourcemanager_host=node01
resourcemanager_port=8032
submit_to=True
resourcemanager_api_url=http://node01:8088
history_server_api_url=http://node01:19888
配置hue与hive集成
如果需要配置hue与hive的集成,我们需要启动hive的metastore服务以及hiveserver2服务(impala需要hive的metastore服务,hue需要hvie的hiveserver2服务)
修改hue配置
[beeswax]
hive_server_host=node03.hadoop.com
hive_server_port=10000
hive_conf_dir=/export/servers/hive-1.1.0-cdh5.14.0/conf
server_conn_timeout=120
auth_username=root
auth_password=123456
[metastore]
#允许使用hive创建数据库表等操作
enable_new_create_table=true
启动hive的metastore服务
去node03机器上启动hive的metastore以及hiveserver2服务
cd /export/servers/hive-1.1.0-cdh5.14.0
#后台启动
nohup bin/hive --service metastore &
nohup bin/hive --service hiveserver2 &
配置hue与impala的集成
修改配置文件
[impala]
server_host=node03
server_port=21050
impala_conf_dir=/etc/impala/conf
配置hue与mysql的集成
找到databases 这个选项,将这个选项下面的mysql注释给打开,然后配置mysql即可,大概在1547行
[[[mysql]]]
nice_name="My SQL DB"
engine=mysql
host=node03.hadoop.com
port=3306
user=root
password=123456
启动hue服务
cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
然后就可以通过浏览器页面操作:
1、访问HDFS和文件浏览
2、通过web调试和开发hive以及数据结果展示
3、查询solr和结果展示,报表生成
4、通过web调试和开发impala交互式SQL Query
5、spark调试和开发
7、oozie任务的开发,监控,和工作流协调调度
8、Hbase数据查询和修改,数据展示
9、Hive的元数据(metastore)查询
10、MapReduce任务进度查看,日志追踪
11、创建和提交MapReduce,Streaming,Java job任务
12、Sqoop2的开发和调试
13、Zookeeper的浏览和编辑
14、数据库(MySQL,PostGres,SQlite,Oracle)的查询和展示
解决hive以及impala执行权限不足的问题
在hive当中执行任意的查询,只要是需要跑MR的程序,就会报错,发现权限不够的异常
只需要给hdfs上的目录执行权限就行
hdfs dfs -chmod o+x /tmp
hdfs dfs -chmod o+x /tmp/hadoop-yarn
hdfs dfs -chmod o+x /tmp/hadoop-yarn/staging
#或者
hdfs dfs -chmod -R o+x /tmp
可以将/tmp目录下所有的文件及文件夹都赋予权限
继续执行hive的任务就不会报错了