hue 的基本介绍: 主要是用于与其他各个框架做整合的, 提供一个 web 界面可以供我们去操作其他的大数据框架
可以理解为这个 hue 就是一个与其他各个框架整合的工具, hue 本身不提供任何的功能, 所有的功能, 都是借助其他的框架来完成
hue 的架构:
第一个 UI 界面: 主要是提供我们 Web 界面供我们使用的
第二个 hue server: 就是一个 tomcat 的服务
第三个 hue DB: hue 的数据库, 主要用于保存一起我们提交的任务
==================================================
1,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 链接
- Site: http://gethue.com/
- GitHub: https://github.com/cloudera/hue
- Reviews: https://review.cloudera.org/
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 是一个友好的界面集成框架, 可以集成我们各种学习过的以及将要学习的框架, 一个界面就可以做到查看以及执行所有的框架
2,Hue 的安装
Hue 的安装支持多种方式, 包括 rpm 包的方式进行安装, tar.gz 包的方式进行安装以及 cloudera manager 的方式来进行安装等, 我们这里使用 tar.gz 包的方式来记性安装
第一步: 下载 Hue 的压缩包并上传到 Linux 解压
Hue 的压缩包的下载地址:
http://archive.cloudera.com/cdh5/cdh/5/
我们这里使用的是 CDH5.14.0 这个对应的版本, 具体下载地址为
下载然后上传到 Linux 系统, 然后进行解压
- cd /export/softwares/
- tar -zxvf hue-3.9.0-cdh5.14.0.tar.gz -C ../servers/
第二步: 编译安装启动
2.1,Linux 系统安装依赖包:
联网安装各种必须的依赖包
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
2.2, 开始配置 Hue
- cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf
- VIM hue.INI
- # 通用配置
- [desktop]
- 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
- name=hue
2.3, 创建 MySQL 数据库
创建 hue 数据库
create database hue default character set utf8 default collate utf8_general_ci;
注意: 实际工作中, 还需要为 hue 这个数据库创建对应的用户, 并分配权限, 我这就不创建了, 所以下面这一步不用执行了
grant all on hue.* to 'hue'@'%' identified by 'hue';
2.4, 准备进行编译
- cd /export/servers/hue-3.9.0-cdh5.14.0
- make apps
2.5,Linux 系统添加普通用户 hue
- useradd hue
- passwd hue
2.6, 启动 hue 进程
- cd /export/servers/hue-3.9.0-cdh5.14.0/
- build/env/bin/supervisor
2.7, 页面访问
http://node03:8888/
第一次访问的时候, 需要设置管理员用户和密码
我们这里的管理员的用户名与密码尽量保持与我们安装 hadoop 的用户名和密码一致,
我们安装 hadoop 的用户名与密码分别是 root root
初次登录使用 root 用户, 密码为 root
进入之后发现我们的 hue 页面报错了, 这个错误主要是因为 hive 的原因, 因为我们的 hue 与 hive 集成的时候出错了, 所以我们需要配置我们的 hue 与 hive 进行集成, 接下里就看看我们的 hue 与 hive 以及 hadoop 如何进行集成.
来源: http://www.bubuko.com/infodetail-3115803.html