hue之部署集成

1 hue简介

  • 什么是hue?
Hue是一个开源的Apache Hadoop UI系统,最早是由Cloudera Desktop演化而来,
由Cloudera贡献给开源社区,它是基于Python Web框架Django实现的。
通过使用Hue我们可以在浏览器端的Web控制台上与Hadoop集群进行交互来分析处理数据,
例如操作HDFS上的数据,运行MapReduce Job,Hive等等。
  • 支持功能:
数据库查询编辑器,支持 Hive, Impala, MySql, PostGres, Sqlite and Oracle
动态查询仪表盘,支持 Solr
支持 Spark 编辑器和仪表盘
浏览器查看状态,支持 YARN, HDFS, Hive table Metastore, HBase, ZooKeeper
支持 Pig Editor, Sqoop2, Oozie workflows 编辑器和仪表盘
将数据导入hdfs

2.基础环境

2.1物理环境

一台1core、2G内存的Centos6.7虚拟机

2.2组件环境
组件名称组件版本
HadoopHadoop-2.6.0-cdh5.7.0-src.tar.gz
jdkjdk-8u45-linux-x64.gz
hivehive-1.1.0-cdh5.7.0.tar.gz
huehue-3.9.0-cdh5.7.0

所有的组件都是基于cdh5.7.0的,可从CDH官网组件仓库下载。

3.安装编译hue

3.1安装依赖的环境
[root@hadoop001 ~]# yum install -y 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
3.2设置环境变量
[hadoop@hadoop001 ~]$ vim ./.bash_profile 
export HUE_HOME=/home/hadoop/app/hue-3.9.0-cdh5.7.0
export PATH=$HUE_HOME/bin:$PATH
[hadoop@hadoop001 ~]$ source ./.bash_profile 


3.3编译hue
#解压,注意检查用户与用户组
[hadoop@hadoop001 ~]$ tar -zxvf ~/soft/hue-3.9.0-cdh5.7.0.tar.gz -C ~/app/

#编译,make编译会下载很多的包,编译的快慢取决于网络,
[hadoop@hadoop001 ~]$ cd ~/app/hue-3.9.0-cdh5.7.0/
[hadoop@hadoop001 hue-3.9.0-cdh5.7.0]$ make apps

若出现如下:XXXX post-processed则表示hue编译成功
1190 static files copied to '/home/hadoop/app/hue-3.9.0-cdh5.7.0/build/static', 1190 post-processed.
make[1]: Leaving directory `/home/hadoop/app/hue-3.9.0-cdh5.7.0/apps'
3.4设置hue.ini文件( $HUE_HOME/desktop/conf/hue.ini)
[desktop]
secret_key=jFE93j;2[290-eiw.KEiwN2s3['d;/.q[eIW^y#e=+Iei*@Mn<qW5o
http_host=hadoop001
time_zone=Asia/Shanghai

4.Hue集成hadoop

4.1修改hadoop配置文件( $HADOOP_HOME/etc/hadoop/ )
#hdfs-site.xml
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>
     
#core-site.xml
    <property>
        <name>hadoop.proxyuser.hue.hosts</name>
        <value>*</value>
    </property>
    <property>
        <name>hadoop.proxyuser.hue.groups</name>
        <value>*</value>
    </property>
#httpfs-site.xml
    <property>
        <name>httpfs.proxyuser.hue.hosts</name>
        <value>*</value>
    </property>
    <property>
        <name>httpfs.proxyuser.hue.groups</name>
        <value>*</value>
    </property>
4.2修改hue.ini配置文件( $HUE_HOME/desktop/conf/hue.ini )

取消webhdfs_url的注释

[hadoop]

  # Configuration for HDFS NameNode
  # ------------------------------------------------------------------------
  [[hdfs_clusters]]
    # HA support by using HttpFs

    [[[default]]]
      # Enter the filesystem uri
      fs_defaultfs=hdfs://hadoop001:8020

      # NameNode logical name.
      ## logical_name=

      # Use WebHdfs/HttpFs as the communication mechanism.
      # Domain should be the NameNode or HttpFs host.
      # Default port is 14000 for HttpFs.
      webhdfs_url=http://hadoop001:50070/webhdfs/v1

5.Hue集成Hive

5.1修改hive配置文件( $HIVE_HOME/conf/hive-site.xml )

设置hs2相关信息

<property>
    <name>hive.server2.thrift.port</name>
    <value>10000</value>
</property>
<property>
    <name>hive.server2.thrift.bind.host</name>
    <value>hadoop001</value>
</property>
<property>
    <name>hive.server2.long.polling.timeout</name>
    <value>5000</value>
</property>
<property>
    <name>hive.server2.authentication</name>
    <value>NONE</value>
</property>
5.2修改hue.ini配置文件( $HUE_HOME/desktop/conf/hue.ini )

取消如下注释,并修改hostname

[beeswax]

  # Host where HiveServer2 is running.
  # If Kerberos security is enabled, use fully-qualified domain name (FQDN).
  hive_server_host=hadoop001

  # Port where HiveServer2 Thrift server runs on.
  hive_server_port=10000

  # Hive configuration directory, where hive-site.xml is located
  hive_conf_dir=/home/hadoop/app/hive-1.1.0-cdh5.7.0/conf/

6.启动Hue

#启动hadoop
[hadoop@hadoop001 ~]$ start-all.sh 

#启动hiveserver2
[hadoop@hadoop001 ~]$ nohup hive --service hiveserver2  >~/app/hive-1.1.0-cdh5.7.0/console.log 2>&1 &

使用beeline连接hs2,-n hadoop 这里的hadoop是启动beeline的用户hadoop
[hadoop@hadoop001 ~]$ beeline -u jdbc:hive2://hadoop001:10000/default -n hadoop

连接时发生异常,信息如下:Error: Could not open client transport with JDBC Uri: jdbc:hive2://hadoop001:10000: null 
解决方案:检查发现配置了hive的用户登录导致的,将hive.server2.authentication配置的值改为NONE即可,原先是NOSAL

#启动hue
[hadoop@hadoop001 ~]$ ~/app/hue-3.9.0-cdh5.7.0/build/env/bin/supervisor

hive是没必要启用用户登录去访问的。

7.访问hue

访问地址:http://ip:88888
我创建了一个hadoop账号,必须是hadoop用户,不然dfs只能操作/usr/XXX/目录,hive也是无法操作的。
1

7.1操作hdfs

这里我们可以对hdfs文件进行操作
2

7.2操作hive

3

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值