天天看点

hadoop离线阶段(第二十二节—2)hue的简介和安装配置hue的简介hue的安装配置

目录

  • hue的简介
    • Hue的介绍
    • Hue的架构
  • hue的安装配置
    • 第一步:下载Hue的压缩包并上传到linux解压
    • 第二步:编译安装启动
    • 第三步:hue与其他框架的集成
      • hue与hadoop的HDFS以及yarn集成
      • hue与hive集成
      • hue与impala的集成
      • hue与mysql的集成

hue的简介

Hue的介绍

HUE=Hadoop User Experience

Hue是一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera公司将其贡献给Apache基金会的Hadoop社区,它是基于Python Web框架Django实现的。

通过使用Hue我们可以在浏览器端的Web控制台上与Hadoop集群进行交互来分析处理数据,例如操作HDFS上的数据,运行MapReduce Job,执行Hive的SQL语句,浏览HBase数据库等等。

Hue的架构

hadoop离线阶段(第二十二节—2)hue的简介和安装配置hue的简介hue的安装配置

核心功能

  • SQL编辑器,支持Hive, Impala, MySQL, Oracle, PostgreSQL, SparkSQL, Solr SQL, Phoenix…
  • 搜索引擎Solr的各种图表
  • Spark和Hadoop的友好界面支持
  • 支持调度系统Apache Oozie,可进行workflow的编辑、查看

HUE提供的这些功能相比Hadoop生态各组件提供的界面更加友好,但是一些需要debug的场景可能还是需要使用原生系统才能更加深入的找到错误的原因。

HUE中查看Oozie workflow时,也可以很方便的看到整个workflow的DAG图,不过在最新版本中已经将DAG图去掉了,只能看到workflow中的action列表和他们之间的跳转关系,想要看DAG图的仍然可以使用oozie原生的界面系统查看。

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)的查询和展示

一句话总结:Hue是一个友好的界面集成框架,可以集成我们各种学习过的以及将要学习的框架,一个界面就可以做到查看以及执行所有的框架

hue的安装配置

第一步:下载Hue的压缩包并上传到linux解压

这里使用的是CDH5.14.0这个对应的版本,具体下载地址为http://archive.cloudera.com/cdh5/cdh/5/hue-3.9.0-cdh5.14.0.tar.gz。

下载后上传到linux系统,然后进行解压。

第二步:编译安装启动

1、安装依赖包:

yum -y 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
           

2、配置Hue

配置文件hue.ini在

hue的安装目录的desktop/conf

下,推荐使用notepad++修改配置文件

配置内容如下:

#通用配置

[desktop]

secret_key=hjfkdjhghsjdgfjha secret_key输入一个随机的字符串即可

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

name=hue

3、在mysql中创建名为hue的数据库

注意:实际工作中,还需要为hue这个数据库创建对应的用户,并分配权限

4、进行编译

cd /export/servers/hue-3.9.0-cdh5.14.0
make apps
           

5、linux系统添加普通用户hue

useradd hue
passwd hue
           

6、启动hue进程

cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor
           

7、测试hue的web界面

访问http://node03:8888,第一次访问的时候,需要设置管理员用户和密码,尽量保持与我们安装hadoop的用户名和密码一致,本文使用root用户,密码为123456。

第三步:hue与其他框架的集成

hue与hadoop的HDFS以及yarn集成

1、更改所有hadoop节点的core-site.xml配置

在core-site.xml添加以下内容:

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

2、更改所有hadoop节点的hdfs-site.xml

在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

直接使用Ctrl+C停止hue服务即可,然后配置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服务,测试hue与hdfs的集成。

hue与hive集成

如果需要配置hue与hive的集成,需要启动hive的metastore服务以及hiveserver2服务(impala需要hive的metastore服务,hue需要hvie的hiveserver2服务)

1、更改hue的配置hue.ini

[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
           

2、启动hive的metastore服务

在既有mysql又有hive的机器上启动hive的metastore服务,注意需要事先启动mysql服务(MySQL服务一般都是启动的,如果没有启动就使用

/etc/init.d/mysqld start

启动一下)

cd /export/servers/hive-1.1.0-cdh5.14.0
nohup bin/hive --service metastore &
nohup bin/hive --service hiveserver2 &
           

重新启动hue服务,测试hue与hive的集成。

hue与impala的集成

停止hue的服务进程

修改hue.ini配置文件

[impala]

去掉以下变量的注释以启用变量,并修改变量值
server_host=node03
server_port=21050
impala_conf_dir=/etc/impala/conf
           

重新启动hue服务,测试hue与impala的集成。

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服务,测试hue与impala的集成。

继续阅读