zoukankan      html  css  js  c++  java
  • 大数据web管理工具——HUE

    一、概述

      HUE是一个开源的Apache Hadoop UI系统,早期由Cloudera开发,后来贡献给开源社区。它是基于Python Web框架Django实现的。通过使用Hue我们可以通过浏览器方式操纵Hadoop集群。

    二、安装

      安装推荐随笔:https://www.cnblogs.com/zlslch/p/6804757.html

      1.下载hue

         http://archive.cloudera.com/cdh5/cdh/5/hue-3.9.0-cdh5.5.4.tar.gz

         推荐使用百度云离线下载!

      2.安装依赖 

    ant
    asciidoc
    cyrus-sasl-devel
    cyrus-sasl-gssapi
    gcc
    gcc-c++
    krb5-devel
    libtidy (for unit tests only,可选)
    libxml2-devel
    libxslt-devel
    make
    mvn (from maven package or maven3 tarball)
    mysql  (我这里不安装了,因为在hive那边已经安装了)
    mysql-devel (我这里不安装了,因为在hive那边已经安装了)
    openldap-devel
    python-devel
    sqlite-devel
    openssl-devel (for version 7+)
    gmp-devel

        一键安装:

    yum -y install ant asciidoc cyrus-sasl-devel cyrus-sasl-gssapi gcc gcc-c++ krb5-devel libtidy libxml2-devel libxslt-devel mysql mysql-devel openldap-devel python-devel sqlite-devel openssl-devel gmp-devel

      可以先用rpm看看是否已经安装,可以使用rpm下载再重新安装避免冲突(或者省事先装,冲突了再解决,冲突的概率不大~):

    rpm -e --nodeps   ***

       3.解压编译

    tar -zxvf hue-3.9.0-cdh5.14.0.tar.gz -C /opt/

        进入Hue目录:

    make apps

      // 如编译失败,可以删除目录,尝试重新解压编译

      // 失败原因如果是找不到mysqlclilnet:

    cp /usr/lib64/mysql/libmysqlclient* /usr/lib/

       其他原因请参考上述博文

    三、配置

      1.配置Hue.ini

        路径: $HUE_HOME/desktop/conf/hue.ini

        screct_key可在官网查看:http://archive.cloudera.com/cdh5/cdh/5/hue-3.7.0-cdh5.3.0/manual.html

        其他配置项参考上述博文

      2.配置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>

        如果是HA集群,需要配置成https,此处非HA则不配置:

    以及在httpfs-site.xml中修改如下配置
        <property>
          <name>httpfs.proxyuser.hue.hosts</name>
          <value>*</value>
        </property>
        <property>
          <name>httpfs.proxyuser.hue.groups</name>
          <value>*</value>
        </property>
      修改完后,重启HDFS服务。

      3.在Hue.ini中配置Hadoop

        在Hadoop块下修改(推荐使用Notpad++)

        基于上述博文,还需要配置一下database:

    [desktop]
      http_host=hadoop001
      http_port=8888
      server_user=hadoop
      server_group=hadoop
      default_user=hue
      default_hdfs_superuser=hadoop
      大约500行
    [[database]]
        engine=mysql
        host=bigdata
        port=3306
        user=hue
        password=hue
        name=hue
    大约600行   
     [hadoop]
            [[[default]]]
             fs_defaultfs=hdfs://hadoop001:8020
         webhdfs_url=http://hadoop001:50070/webhdfs/v1
          hadoop_conf_dir=/home/hadoop/app/hadoop-2.6.0-cdh5.7.0/etc/hadoop
    在780行
    [beeswax]
          hive_server_host=hadoop001
             #Port where HiveServer2 Thrift server runs on.
          hive_server_port=10000
          hive_conf_dir=/home/hadoop/app/hive-1.1.0-cdh5.7.0/conf

         初始化:

    初始化数据库
    需要输入用户名邮箱密码
    [hadoop@hadoop001 bin]$ ./hue syncdb 
    mysql  hue 数据库生成相应的表
    [hadoop@hadoop001 bin]$ ./hue migrate
    启动hue
    [hadoop@hadoop001 bin]$ ./supervisor

      // 配置参考:https://blog.csdn.net/qq_35744460/article/details/89344689

    四、错误收集

       0.编译时在usr/lib下找不到lmysqlclinet

        找一下这个文件在哪:

    find / -name libmysqlclient_r*

        做个软连接或者cp过去:(或者可以cp到/usr/lib下面去~)

    ln -sv  /usr/lib64/mysql/libmysqlclient_r.so.16.0.0 /usr/lib/libmysqlclient_r.so

       1.找不到hue用户

        需要使用非root用户,新建一个普通用户(如已新建,忽略),授予hue文件夹权限:

    useradd hadoop01
    passwd hadoop01
    chown -R /opt/hue3.9/

       2.浏览器页面打不开,无法访问,尝试关闭防火墙:

    systemctl stop firewalld.service

     或者永久关闭(本机搭建的随意:)

    systemctl disable firewalld.service

       3.页面报错:Could not connect to localhost:10000

        在Hive中启动:

     hive --service hiveserver2 &
  • 相关阅读:
    使用linux将一个服务器上的文件或者文件夹复制黏贴到另一个服务器上
    深度学习之常用linux命令总结
    python 操作MYSQL数据库
    MYSQL登录及常用命令
    mysql数据库可视化工具—Navicat Premium—安装与激活
    Mysql数据库的简单介绍与入门
    java 正则匹配int型
    js设置文本框只能输入数字
    Java数据抓取(一)
    Nodejs的多线程
  • 原文地址:https://www.cnblogs.com/jiangbei/p/11877830.html
Copyright © 2011-2022 走看看