• 数据交互工具 -- HUE


    相关资料包:https://pan.baidu.com/s/1y0cmzWN9VwrXVzSKEeIG1Q?pwd=5j0o 

    1、Hue概述

            Hue(Hadoop User Experience)是一个开源的 Apache Hadoop UI 系统,最早是由Cloudera Desktop 演化而来,由 Cloudera 贡献给开源社区,它是基于 PythonWeb 框架 Django 实现的。通过使用 Hue 可以在浏览器端的 Web 控制台上与Hadoop 集群进行交互来分析处理数据,例如操作 HDFS 上的数据,运行MapReduce Job 等等。Hue所支持的功能特性集合:

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

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

    类似的产品还有 Apache Zeppelin。 

    2、Hue编译安装

    Hue官方网站:https://gethue.com/

    HUE官方用户手册:https://docs.gethue.com/

    官方安装文档:https://docs.gethue.com/administrator/installation/install/

    HUE下载地址:https://docs.gethue.com/releases/

    • Hue的安装并不是那么简单,官方并没有编译好的软件包,需要从github上下载源码、安装依赖、编译安装。以下详细讲解Hue下载、编译、安装的操作过程。
    • 安装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、下载软件包

    到官方网站下载 hue-release-4.3.0.zip;上传至服务器,并解压缩

    1. yum install unzip
    2. unzip hue-release-4.3.0.zip

    2.2、安装依赖

    1. # 需要Python支持(Python 2.7+ / Python 3.5+)
    2. python --version
    3. # 在 CentOS 系统中安装编译 Hue 需要的依赖库
    4. 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
    5. yum install -y rsync

    备注:

    2.3、安装Maven

    编译 Hue 还需要 Maven 环境,因此在编译前需要安装 Maven。

    下载 apache-maven-3.6.3-bin.tar.gz,上传虚拟机解压缩,添加环境变量

    1. vi /etc/profile
    2. # 添加环境变量
    3. export MAVEN_HOME=/opt/lagou/servers/apache-maven-3.6.3
    4. export PATH=$PATH:$MAVEN_HOME/bin
    5. source /etc/profile
    6. # 验证安装
    7. mvn --version

    2.4、编译

    1. # 进入 hue 源码目录,进行编译。 使用 PREFIX 指定安装 Hue 的路径
    2. cd /opt/lagou/software/hue-release-4.3.0
    3. PREFIX=/opt/lagou/servers make install
    4. cd /opt/lagou/servers
    5. # 如果想把HUE从移动到另外一个地方,由于HUE使用了Python包的一些绝对路径,移动之后则必须执行以下命令:
    6. # 这里不要执行
    7. rm app.reg
    8. rm -r build
    9. make apps

    备注这一步持续的时间比较长,还会从网上下载 jar;需要联网

    2.5、修改 Hadoop 配置文件

    在 hdfs-site.xml 中增加配置

    1. <property>
    2. <name>dfs.webhdfs.enabledname>
    3. <value>truevalue>
    4. property>
    5. <property>
    6. <name>dfs.permissions.enabledname>
    7. <value>falsevalue>
    8. property>

    在 core-site.xml 中增加配置

    1. <property>
    2. <name>hadoop.proxyuser.hue.hostsname>
    3. <value>*value>
    4. property>
    5. <property>
    6. <name>hadoop.proxyuser.hue.groupsname>
    7. <value>*value>
    8. property>
    9. <property>
    10. <name>hadoop.proxyuser.hdfs.hostsname>
    11. <value>*value>
    12. property>
    13. <property>
    14. <name>hadoop.proxyuser.hdfs.groupsname>
    15. <value>*value>
    16. property>

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

    1. <configuration>
    2. <property>
    3. <name>httpfs.proxyuser.hue.hostsname>
    4. <value>*value>
    5. property>
    6. <property>
    7. <name>httpfs.proxyuser.hue.groupsname>
    8. <value>*value>
    9. property>
    10. configuration>

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

    scp 文件名 IP地址:$PWD

    start-dfs.sh

    2.6、Hue配置

    1. # 进入 Hue 安装目录
    2. cd /opt/lagou/servers/hue
    3. # 进入配置目录
    4. cd desktop/conf
    5. # 复制一份HUE的配置文件,并修改复制的配置文件
    6. cp pseudo-distributed.ini.tmpl pseudo-distributed.ini
    7. vi pseudo-distributed.ini
    8. (:set number : 显示行号,便于我们观看配置文件)
    1. # [desktop]
    2. http_host=linux122
    3. http_port=8000
    4. is_hue_4=true
    5. time_zone=Asia/Shanghai
    6. dev=true
    7. server_user=hue
    8. server_group=hue
    9. default_user=hue
    10. # 211行左右。禁用solr,规避报错
    11. app_blacklist=search
    12. # [[database]]。Hue默认使用SQLite数据库记录相关元数据,替换为mysql
    13. engine=mysql
    14. host=linux123
    15. port=3306
    16. user=hive
    17. password=12345678
    18. name=hue # 数据库名
    19. # 1003行左右,Hadoop配置文件的路径
    20. hadoop_conf_dir=/opt/lagou/servers/hadoop-2.9.2/etc/hadoop
    1. # 在mysql中创建数据库hue,用来存放元数据
    2. mysql -uhive -p12345678
    3. mysql> create database hue;
    1. # 进入hue的bin目录
    2. /opt/lagou/servers/hue/build/env/bin
    3. # 初始化数据,执行下面两个命令
    4. ./syncdb
    5. ./migrate
    6. # 这个时后去查询我们的数据库,发现已经生成了许多数据,这是hue创建的

    2.7、启动 Hue 服务

    1. # 增加 hue 用户和用户组
    2. groupadd hue
    3. useradd -g hue hue
    4. # 在hue安装路径下执行
    5. 进入此目录build/env/bin/执行下面命令
    6. ./supervisor
    • 在浏览器中输入:linux122:8000,可以看见以下画面,说明安装成功。
    • 第一次访问的时候,需要设置超级管理员用户和密码。记住它(hue/123456)。

     

    3、Hue整合Hadoop、Hive

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

    3.1、集成HDFS、YARN

    1. # 211 行。 没有安装 Solr,禁用,否则一直报错
    2. app_blacklist=search
    3. # [hadoop] -- [[hdfs_clusters]] -- [[[default]]]
    4. # 注意端口号。下面语句只要一个
    5. # fs_defaultfs=hdfs://linux121:8020
    6. fs_defaultfs=hdfs://linux121:9000
    7. webhdfs_url=http://linux121:50070/webhdfs/v1
    8. # 211 行
    9. hadoop_conf_dir=/opt/lagou/servers/hadoop-2.9.2/etc/hadoop
    10. # [hadoop] -- [[yarn_clusters]] -- [[[default]]]
    11. resourcemanager_host=linux123
    12. resourcemanager_port=8032
    13. submit_to=True
    14. resourcemanager_api_url=http://linux123:8088
    15. proxy_api_url=http://linux123:8088
    16. history_server_api_url=http://linux123:19888

    3.2、集成Hive

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

    查询端口

    lsof -i:10000

    启动Hiveserver2

    nohup hiveserver2 &

    1. # [beeswax]
    2. hive_server_host=linux123
    3. hive_server_port=10000
    4. hive_conf_dir=/opt/lagou/servers/hive-2.3.7/conf

    3.3、集成MySQL

    1. # [librdbms] -- [[databases]] -- [[[mysql]]];1639行
    2. # 注意:1639行原文: ##[[mysql]] => [[mysql]];两个##要去掉!
    3. [[[mysql]]]
    4. nice_name="My SQL DB"
    5. name=hue
    6. engine=mysql
    7. host=linux123
    8. port=3306
    9. user=hive
    10. password=12345678

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

    3.4、重启Hue服务

    1. # 停止服务
    2. ctrl + c
    3. # 启动服务
    4. ./supervisor

    4、特别提示

            我这个hue环境的配置是基于我自己搭建的hive本地集群,其中hdfs、yarn、mysql、hive、Hiveserver2 我搭建在了不同的集群节点,在配置时要依据自己的实际情况来做出相应的改变。

    我搭建的节点参见下方博文:

    Apache Hadoop 完全分布式集群搭建_悠然予夏的博客-CSDN博客

    Hive安装与配置_悠然予夏的博客-CSDN博客_第1关:hive的安装与配置

    Hive元数据管理_悠然予夏的博客-CSDN博客

  • 相关阅读:
    node.js学习笔记 09核心模块
    ssm和springboot整合
    64ELK日志分析系统
    OpenSM-QoS管理
    【计算机毕业设计】家政服务平台
    计算机网络性能
    Discriminative v.s.Generative
    金融服务的超级App
    ArcMap时间滑块绘制遥感影像的动态变化过程
    2024最新ChatGPT网站源码+AI绘画系统源码,详细图文搭建教程/支持ChatGPT4.0/GPT-4o文档分析图片理解/GPTs应用
  • 原文地址:https://blog.csdn.net/weixin_52851967/article/details/127459997