详细讲解安装HUE

环境:centos6.5   hive 1.2.1   hadoop 1.7.1   hue 3.9.0

1.首先需要安装各种依赖包

      * 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(可以不用安装)
      * mysql-devel 
      * openldap-devel
      * python-devel
      * sqlite-devel
      * openssl-devel (for version 7+)
      * gmp-devel


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

直接用yum安装的,中间可能会报一些依赖的版本冲突问题,可以卸载已经安装的版本,然后再装。


2.下载hue代码
git clone https://github.com/cloudera/hue.git
cd hue
make apps


3.创建用户
useradd hue

如果hue和hive在同一台机器上,则直接在这台机器上创建hue用户即可,注意:这个用户一定要加到起hiveserver2的用户组下,如hadoop用户   usermod -G hadoop hue
如果不在一台机器上,想用hive最好在hue和hive这两台机器上都创建该用户。


4.创建日志文件夹
mkdir .../hue/logs
chmod 777 .../hue/logs


5.把desktop.db文件所在的文件夹和文件赋权限,当然这个要根据运行hue的用户而定,最好都改成777

当然如果你不想用splite,而使用mysql,则在后看会介绍配置方法
chmod 777 .../hue/desktop
chmod 777 .../hue/desktop/desktop.db


6.修改hadoop cluster的namenode节点的core-site.xml和hdfs-site.xml文件


core-site.xml
####################

      hadoop.proxyuser.hue.hosts
      *


      hadoop.proxyuser.hue.groups
      *

####################


hdfs-site.xml
####################
 
      dfs.webhdfs.enabled
      true
 

####################


使修改生效,不需要重启集群,执行如下命令 直接用hadoop管理员账号重新加载这两个属性值
hdfs dfsadmin -refreshSuperUserGroupsConfiguration
yarn rmadmin -refreshSuperUserGroupsConfiguration


加载这两个属性
hadoop dfsadmin -fs hdfs://hadoopcluster:8020 -refreshSuperUserGroupsConfiguration


7.修改hue的配置文件 ...../hue/desktop/conf/pseudo-distributed.ini


#######################################
[hadoop]


  [[hdfs_clusters]]
    [[[default]]]
      fs_defaultfs=hdfs://hadoopcluster:8020
      webhdfs_url=http://192.168.100.10:50070/webhdfs/v1/
      hadoop_conf_dir=....../hadoop-2.7.1/etc/hadoop
  [[yarn_clusters]]


    [[[default]]]
      resourcemanager_host=192.168.100.10
      resourcemanager_port=8032
      history_server_api_url=http://192.168.100.10:19888
  [[mapred_clusters]]


    [[[default]]]
      jobtracker_host=192.168.100.10
      jobtracker_port=50030
      submit_to=False




[beeswax]

#hive所在的机器
  hive_server_host=192.168.100.11 
  hive_server_port=10000
  server_conn_timeout=360
  ########################################
把配置文件中于此不相同的修改一下就可以了



8.把数据库改成mysql

  1.创建数据库
  mysql -uhive -p123456 -h192.168.100.11
  > create database hue;


  2. 修改hue配置文件,...../hue/desktop/conf/pseudo-distributed.ini
  #########################
  [[database]]
      engine=mysql
      host=192.168.100.11
      port=3306
      user=hive
      password=123456
      name=hue
  #########################


  3.然后创建表

    1).  ..../hue/build/env/bin/hue syncdb --noinput
    2).  ..../hue/build/env/bin/hue migrate --all 


9.配置hive权限,让hue只具有查询权限
hive
> use default;
> grant select on database default to user hue;


10.修改hdfs中tmp的权限

因为当运行hive任务时,需要把中间结果卸载/tmp目录下,而运行任务的用户可能不同

hdfs dfs -chmod -R 777 /tmp

11.启动
  1).首先启动hiveserver2
    nohup  ..../apache-hive-1.2.1-bin/bin/hiveserver2 &
  2).启动hue
    nohup  ..../hue/build/env/bin/hue runserver 0.0.0.0:8000 &


附:如果需要多个用户使用hive查询,则需要如下:
1.首先在web页面上添加一个用户
2.在运行hue的机器上,创建该用户,并把用户组设置成hive的超级用户上,如hadoop
3.在hive中对这个用户分配查询的权限。



你可能感兴趣的:(hadoop)