一、Hue概述

HUE(Hadoop User Experience)是一个开源的Apache Hadoop UI系统,最早由Cloudera Desktop演化而来,是基于Python Web框架实现的。通过Hue可以在浏览器的Web控制台上与Hadoop集群进行交互来分析处理数据,例如操作HDFS上的数据,运行mapReduce Job等等。

Hue所支持的功能特性集合:
        1.默认基于轻量级sqlite数据库管理会话数据,用户认证和授权,可以自定义为
MySQL、Postgresql,以及Oracle。
        2.基于文件浏览器(File Browser)访问HDFS。
        3.基于Hive编辑器来开发和运行Hive查询。
        4.支持基于Solr进行搜索的应用,并提供可视化的数据视图,以及仪表板(Dashboard)。
        5.支持基于Impala的应用进行交互式查询。
        6.支持Spark编辑器和仪表板(Dashboard)。
        7.支持Pig编辑器,并能够提交脚本任务。
        8.支持Oozie编辑器,可以通过仪表板提交和监控Workflow、Coordinator和Bundle。
        9.支持HBase浏览器,能够可视化数据、查询数据、修改HBase表。
        10.支持Metastore浏览器,可以访问Hive的元数据,以及HCatalog。
        11.支持Job浏览器,能够访问MapReduce Job(MR1/MR2-YARN)。
        12.支持Job设计器,能够创建MapReduce/Streaming/Java Job。
        13.支持Sqoop 2编辑器和仪表板(Dashboard)。
        14.支持ZooKeeper浏览器和编辑器。
        15.支持MySql、PostGresql、Sqlite和Oracle数据库查询编辑器。

一句话总结,Hue是一个友好的界面集成框架,一个界面就可以做到查看以及执行所有的框架。类似的还有Apache Zeppelin。

二、Hue编译安装

HUE官方网站:https://gethue.com/
        HUE官方用户手册:https://docs.gethue.com/
        官方安装文档:https://docs.gethue.com/administrator/installation/install/
        HUE下载地址:https://docs.gethue.com/releases/

官方并没有编译好的软件包,需要从github上下载源码、安装依赖、编译安装。

安装Hue的节点上最好没有安装过MySQL,否则可能有版本冲突,这里选择将Hue
安装在 linux122 上。

步骤:
        1、下载软件包、上传、解压(hue-release-4.3.0.zip、apache-maven-3.6.3-bin.tar.gz)
        2、安装依赖包
        3、安装maven
        4、hue编译
        5、修改hadoop配置
        6、修改hue配置
        7、启动hue服务

2.1 下载软件包

下载 - 上传到服务器 -解压缩
        yum install unzip
        unzip hue-release-4.3.0.zip

2.2 安装依赖

# 需要Python支持(Python 2.7+ / Python 3.5+)
        python --version

# 在 CentOS 系统中安装编译 Hue 需要的依赖库
        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
        yum install -y rsync

备注:以上安装仅适用CentOS/RHEL 7.X,其他情况请参考https://docs.gethue.com/admi
nistrator/installation/dependencies/

2.3 安装Maven

编译 Hue 还需要 Maven 环境,因此在编译前需要安装 Maven。
        下载 apache-maven-3.6.3-bin.tar.gz,上传虚拟机解压缩,添加环境变量
        vi /etc/profile
        # 添加环境变量
        export MAVEN_HOME=/opt/lagou/servers/apache-maven-3.6.3
        export PATH=$PATH:$MAVEN_HOME/bin
        source /etc/profile
        # 验证安装
        mvn --version

2.4 编译

# 进入 hue 源码目录,进行编译。 使用 PREFIX 指定安装 Hue 的路径
        cd /opt/lagou/software/hue-release-4.3.0
        PREFIX=/opt/lagou/servers make install
        cd /opt/lagou/servers

# 如果想把HUE从移动到另外一个地方,由于HUE使用了Python包的一些绝对路径,移动之后则必须执行以下命令:
        # 这里不要执行
        rm app.reg
        rm -r build
        make apps

2.5 设置Hadoop配置文件

在 hdfs-site.xml 中增加配置

<!-- HUE -->
<property><name>dfs.webhdfs.enabled</name><value>true</value>
</property>
<property><name>dfs.permissions.enabled</name><value>false</value>
</property>

在 core-site.xml 中增加配置

<!-- HUE -->
<property>
<name>hadoop.proxyuser.hue.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hue.groups</name><value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hdfs.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hdfs.groups</name>
<value>*</value>
</property>

增加 httpfs-site.xml 文件,加入配置

<configuration><!-- HUE --><property><name>httpfs.proxyuser.hue.hosts</name><value>*</value></property><property><name>httpfs.proxyuser.hue.groups</name><value>*</value></property>
</configuration>

备注:修改完HDFS相关配置后,需要把配置scp给集群中每台机器,重启hdfs服务。

2.6 Hue配置

# 进入 Hue 安装目录
        cd /opt/lagou/servers/hue
        # 进入配置目录
        cd desktop/conf
        # 复制一份HUE的配置文件,并修改复制的配置文件
        cp pseudo-distributed.ini.tmpl pseudo-distributed.ini
        vi pseudo-distributed.ini

# [desktop]
        http_host=linux122
        http_port=8000
        is_hue_4=true
        time_zone=Asia/Shanghai
        dev=true
        server_user=hue
        server_group=hue
        default_user=hue

# 211行左右。禁用solr,规避报错
        app_blacklist=search

# [[database]]。Hue默认使用SQLite数据库记录相关元数据,替换为mysql
        engine=mysql
        host=linux123
        port=3306
        user=hive
        password=12345678
        name=hue

# 1003行左右,Hadoop配置文件的路径
        hadoop_conf_dir=/opt/lagou/servers/hadoop-2.9.2/etc/hadoop

# 在mysql中创建数据库hue,用来存放元数据
        mysql -uhive -p12345678
        mysql> create database hue;
        # 初始化数据库
        build/env/bin/hue syncdb
        build/env/bin/hue migrate

# 检查数据

2.7 Hue启动服务

# 增加 hue 用户和用户组
        groupadd hue
        useradd -g hue hue
        # 在hue安装路径下执行
        build/env/bin/supervisor

在浏览器中输入:linux122:8000,可以看见以下画面,说明安装成功。
        第一次访问的时候,需要设置超级管理员用户和密码。记住它(hue/123456)。
        

三、Hue整合Hadoop、Hive

修改参数文件 /opt/lagou/servers/hue/desktop/conf/pseudo-distributed.ini

3.1 集成HDFS、YARN

# 211 行。 没有安装 Solr,禁用,否则一直报错
        app_blacklist=search

# [hadoop] -- [[hdfs_clusters]] -- [[[default]]]
        # 注意端口号。下面语句只要一个
        # fs_defaultfs=hdfs://linux121:8020
        fs_defaultfs=hdfs://linux121:9000
        webhdfs_url=http://linux121:50070/webhdfs/v1

# 211 行
        hadoop_conf_dir=/opt/lagou/servers/hadoop-2.9.2/etc/hadoop

# [hadoop] -- [[yarn_clusters]] -- [[[default]]]
        resourcemanager_host=linux123
        resourcemanager_port=8032
        submit_to=True
        resourcemanager_api_url=http://linux123:8088
        proxy_api_url=http://linux123:8088
        history_server_api_url=http://linux123:19888

3.2 集成Hive

集成Hive需要启动 Hiveserver2 服务,在linux123节点上启动 Hiveserver2

# [beeswax]
        hive_server_host=linux123
        hive_server_port=10000
        hive_conf_dir=/opt/lagou/servers/hive-2.3.7/conf

3.3 集成MySQL

# [librdbms] -- [[databases]] -- [[[mysql]]];1639行
        # 注意:1639行原文: ##[[mysql]] => [[mysql]];两个##要去掉!
        [[[mysql]]]
        nice_name="My SQL DB"
        name=hue
        engine=mysql
        host=linux123
        port=3306
        user=hive
        password=12345678

备注:name是数据库名,即 database 的名称

3.4 重启Hue

数据交互 -- HUE相关推荐

  1. 大数据交互平台Hue的优势

    本文系统地讲解了Hue作为大数据分析交互平台的优势!欢迎批评指正! Hue Web应用的架构 Hue 是一个Web应用,用来简化用户和Hadoop集群的交互.Hue技术架构,如下图所示,从总体上来讲, ...

  2. Cache 与Memory架构及数据交互

    Cache 与Memory架构及数据交互

  3. java与c/c++之间的数据交互-----jni点滴

    2019独角兽企业重金招聘Python工程师标准>>> 淡泊明志.宁静致远 A Diamond is just a piece of Coal that did well under ...

  4. AngularJs $resource 高大上的数据交互

    $resource 创建一个resource对象的工厂函数,可以让你安全的和RESFUL服务端进行数据交互. 需要注入 ngResource 模块.angular-resource[.min].js ...

  5. ajax前后台交互 .net,使用ajax进行前后台的数据交互

    1 什么是ajax: ​ 异步的JavaScript和xml,跟后台交互,都用json 2 ajax干啥用的? ​ 前后端做数据交互: 3 特点: ​ -异步(异步和同步的区别:同步是请求发过去,要等 ...

  6. django前端引用数据_「基于Python技术的智慧中医商业项目」Django前端网站篇-5.资讯的数据交互...

    如果你对中医感兴趣欢迎留言讨论,觉得我的内容对你有帮助的话,能够请我喝一杯沪上阿姨不禁万分感谢. 内容简介 本章介绍Django搭建中医网站项目平台前端建设之资讯模块的数据交互的内容.其中由于代码量较 ...

  7. Android开发之Service与Activity数据交互(源代码分享)

    Service想要与Activity进行数据交互,首先Activity先得绑定Service.bound service是service 的实现,它允许其他应用程序绑定到它并与之交互.要提供bound ...

  8. Android开发之Fragment与Activity的数据交互通过回调机制实现(源代码分享)

    上一篇文章简单介绍了Android的回调机制的使用,这一篇博文将重点介绍Fragment碎片与activity的数据交互,fragment在Android开发中起着至关重要的作用,通过官方Androi ...

  9. SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器

    SpringMVC入门(二)-- 参数的传递.Controller方法返回值.json数据交互.异常处理.图片上传.拦截器 参考文章: (1)SpringMVC入门(二)-- 参数的传递.Contro ...

最新文章

  1. 算法(5) 归并排序
  2. js 将时间戳转为日期格式
  3. opencv 直线检测笔记
  4. Nginx通过域名配置虚拟机
  5. olap与mysql_MySQL与OLAP:分析型SQL查询最佳实践探索
  6. Change handler table ESH_EX_CPOINTER
  7. 使用 Source Generator 代替 T4 动态生成代码
  8. php实现多条件查找分页,Yii2.0框架实现带分页的多条件搜索功能示例
  9. 【OpenCV 例程200篇】74. 图像的抗混叠
  10. 初识联邦学习(Federated learning)
  11. C#实现图片文件到数据流再到图片文件的转换
  12. EasyPR--中文车牌识别系统 开发详解(开源)
  13. 概率论在实际生活的例子_生活中有趣的概率论例子
  14. tomcat服务器work文件夹说明
  15. swift和swiftui_SwiftUI和UIStackflow问题
  16. CAT实时监控预警系统
  17. WrapPanel控件增加滚动条
  18. java 变量不初始化_Java之哪些情况下变量不会初始化
  19. 今年的目标 --还有两个月 我的21天计划
  20. 【火星备份软件】多样化备份方式

热门文章

  1. windows子系统Ubuntu18.04LTS换源及配置grpc编译环境
  2. 竟然卖了几百万,故宫、豆瓣、果壳们如何将日历做成生意?
  3. 1600. 皇位继承顺序
  4. excel的简单使用2-dfgs
  5. python学习day2
  6. vue,uniapp带有导航栏的轮播图swiper组件,滑动的同时点击导航栏切换,使异步滑动过程中位置发生改变,不能正常展示的问题解决(这里用uiniapp的swiper组件)
  7. Andrpid评测分析-安兔兔V6.0技术解…
  8. 基于Springboot的聊天室Web系统设计
  9. IE浏览器无法显示背景颜色问题
  10. Netty 使用教程