您的位置:首页 > 产品设计 > UI/UE

Hadoop之Hue3.9.0详细安装文档

2017-09-06 10:41 441 查看
 
HUE3.9.0详细安装文档
友情提示,安装任何LUW软件之前,务必先阅读readme自带文档,里面有很多关键信息,不要拿着就开搞,浪费半天时间发现一大堆错误。


1 环境准备...
4
2 启动HIVE后台进程(确保HIVE安装OK)4
3 安装OS依赖包...
4
4 编译安装HUE.
6
4.1 编译Hue(保持服务器网络畅通)6
4.2 修改配置文件hue.ini(可参考为知笔记)...
7
4.3 hue.ini关键项说明...
8
4.4 启动Hue.
11
4.5 登录HUE.
11
4.6 执行HIVE查询语句...
13
5 HUE元数据库改为Mysql14
5.1 停止HUE服务...
14
5.2 备份sqllite数据库...
14
5.3 删除desktopdb.json中所有 useradmin.userprofile 的对象,以下是例子...
14
5.4 安装配置Mysql数据库...
16
5.4.1 安装MYSQL客户端...
16
5.4.2 安装MYSQL连接器...
17
5.4.3 安装MYSQL服务器...
17
5.4.4 配置 /etc/my.cnf18
5.4.5 启动MySQL服务...
19
5.4.6 修改密码(此步可不做)...
19
5.4.7 配置MySQL开机自启...
20
5.4.8 创建数据库hue.
21
5.4.9 给hue授权...
21
5.4.10 Load any backed up data:22
5.4.11(InnoDB only) Drop the foreign
key:23
5.4.12 再次启动HUE.
23
6 FAQ帮助...
24
6.1 Mysql报错ERROR 1045.
24
6.2filelists.sqlite.bz2 from base: [Errno
-1] 的解决方法... 25
6.3 Cannotretrieve repository metadata
(repomd.xml) for repository:xxxxxx. 26
 

 

1 环境准备

CentOS-6.8 (Final)
JDK-1.8
maven-3.3.9
Git-1.7.1
Hue-3.9.0
Hadoop-2.7.3
Hive-1.2.1
Python-2.6.6

2 启动HIVE后台进程(确保HIVE安装OK)

hive --service metastore &
hive --service hiveserver2 &
同时用 ps -ef|grep hive检查是否启动成功

3 安装OS依赖包

yum install 以下包:
ant
asciidoc
cyrus-sasl-devel
cyrus-sasl-gssapi
cyrus-sasl-plain
gcc
gcc-c++
gmp-devel
krb5-devel
libffi-devel
libtidy
libxml2-devel
libxslt-devel
make
mvn
mysql
mysql-devel
openldap-devel
openssl-devel
python-devel
sqlite-devel
确保安装完毕,再做后续操作,否则会抱各种错误

4 编译安装HUE

4.1 编译Hue(保持服务器网络畅通)

chown -R hadoop:Hadoop hue-3.9.0
cd hue-3.9.0
make apps
不报错则表示编译OK

4.2 修改配置文件hue.ini(可参考为知笔记)

上述过程如果没有任何问题,我们就已经安装好Hue,Hue的配置文件为/***_DATA/hadoop/hue-3.9.0/desktop/conf/hue.ini,默认的配置文件不能正常运行Hue,所以需要修改其中的内容,与我们对应的Hadoop集群配置相对应。该配置文件根据整合不同的软件,将配置分成多个段,每个段下面还有子段,便于管理配置,如下所示(省略子段名称):
·        desktop
·        libsaml
·        libopenid
·        liboauth
·        librdbms
·        hadoop
·        filebrowser
·        liboozie
·        oozie
·        beeswax
·        impala
·        pig
·        sqoop
·        proxy
·        hbase
·        search
·        indexer
·        jobsub
·        jobbrowser
·        zookeeper
·        spark
·        useradmin
·        libsentry

4.3 hue.ini关键项说明

我们很容易根据需要来配置自己需要的内容。我们修改配置文件的情况,如下表所示:
Hue配置段
Hue配置项
Hue配置值
说明
desktop
default_hdfs_superuser
hadoop
HDFS管理用户
desktop
http_host
***-dev-hadoop-namenode-1.novalocal
Hue Web Server所在主机/IP
desktop
http_port
8088
Hue Web Server服务端口
desktop
server_user
hadoop
运行Hue Web Server的进程用户
desktop
server_group
hadoop
运行Hue Web Server的进程用户组
desktop
default_user
hue
Hue管理员
hadoop/hdfs_clusters
fs_defaultfs
hdfs://ns1:8020
对应core-site.xml配置项fs.defaultFS
hadoop/hdfs_clusters
hadoop_conf_dir
/***_DATA/hadoop/hadoop-2.7.3/etc/hadoop
Hadoop配置文件目录
hadoop/yarn_clusters
resourcemanager_host
hadoop6
对应yarn-site.xml配置项yarn.resourcemanager.hostname
hadoop/yarn_clusters
resourcemanager_port
8032
ResourceManager服务端口号
hadoop/yarn_clusters
resourcemanager_api_url
http://***-dev-hadoop-namenode-1.novalocal:8088 对应于yarn-site.xml配置项yarn.resourcemanager.webapp.address
hadoop/yarn_clusters
proxy_api_url
http://***-dev-hadoop-namenode-1.novalocal:8888 对应yarn-site.xml配置项yarn.web-proxy.address
hadoop/yarn_clusters
history_server_api_url
http://***-dev-hadoop-namenode-1.novalocal:19888 对应mapred-site.xml配置项mapreduce.jobhistory.webapp.address
beeswax
hive_server_host
***-dev-hadoop-namenode-1.novalocal
Hive所在节点主机名/IP
beeswax
hive_server_port
10000
HiveServer2服务端口号
beeswax
hive_conf_dir
/usr/local/hive/conf
Hive配置文件目录
 

4.4 启动Hue

export HUE_HOME=/***_DATA/hadoop/hue-3.9.0,确保已经配置HUE_HOME
进入Hue主目录执行:nohup  supervisor &
启动无异常则OK

4.5 登录HUE

http://172.16.33.231:8000,第一次登录输入hadoop的用户名和密码,进去后会进行配置文件检查

 
然后用HUE账户登录后可以新增组和用户

4.6 执行HIVE查询语句

 

5 HUE元数据库改为Mysql

5.1 停止HUE服务

Ps -ef|grep hue  然后kill掉

5.2 备份sqllite数据库

hue <HUE_HOME>/build/env/bin/huedumpdata > desktopdb.json

5.3 删除desktopdb.json中所有 useradmin.userprofile 的对象,以下是例子

{
   "pk": 1,
    "model": "useradmin.userprofile",
    "fields": {
      "creation_method": "HUE",
      "user": 1,
      "home_directory": "/user/alice"
    }
  },
  {
    "pk": 2,
    "model": "useradmin.userprofile",
    "fields": {
      "creation_method": "HUE",
      "user": 1100714,
      "home_directory": "/user/bob"
    }
  },
.....

5.4 安装配置Mysql数据库

5.4.1 安装MYSQL客户端

OS
Command
RHEL
$ sudo yum install mysql-devel
SLES
$ sudo zypper install mysql-devel
Ubuntu or Debian
$ sudo apt-get install libmysqlclient-dev

5.4.2 安装MYSQL连接器

OS
Command
RHEL
$ sudo yum install mysql-connector-java
SLES
$ sudo zypper install mysql-connector-java
Ubuntu or Debian
$ sudo apt-get install libmysql-java

5.4.3 安装MYSQL服务器

OS
Command
RHEL
$ sudo yum install mysql-server
SLES
$ sudo zypper install mysql $ sudo zypper install libmysqlclient_r17
Ubuntu or Debian
$ sudo apt-get install mysql-server

5.4.4 配置 /etc/my.cnf 

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
bind-address=<ip-address>
default-storage-engine=InnoDB
sql_mode=STRICT_ALL_TABLES

5.4.5 启动MySQL服务

OS
Command
RHEL
$ sudo service mysqld start
SLES and Ubuntu or Debian
$ sudo service mysql start

5.4.6 修改密码(此步可不做)

$ sudo /usr/bin/mysql_secure_installation
[...]
Enter current password for root (enter fornone):
OK, successfully used password, moving on...
[...]
Set root password? [Y/n] y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] Y
[...]
Disallow root login remotely? [Y/n] N
[...]
Remove test database and access to it [Y/n] Y
[...]
Reload privilege tables now? [Y/n] Y
All done!

5.4.7 配置MySQL开机自启

OS
Command
RHEL
$sudo /sbin/chkconfig mysqld on
ssudo /sbin/chkconfig --list mysqld mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
SLES
$ sudo chkconfig --add mysql
Ubuntu or Debian
$ sudo chkconfig mysql on

5.4.8 创建数据库hue

mysql> create database hue;

5.4.9 给hue授权

mysql> grant all on hue.* to'hue'@'localhost' identified by '<secretpassword>';

配置hue.ini touse MySQL. 修改以下选项
host=***-dev-hadoop-namenode-1.novalocal
port=3306
engine=mysql
user=hue
password=hue
name=hue

5.4.10 Load any backed up data:

Ensure a logs directory exists and is writable at /opt/cloudera/parcels/CDH/lib/hue/logs.

Ensure the logs directory has hue user and group ownership.

Synchronize and migrate the database.
$sudo mkdir /opt/cloudera/parcels/CDH/lib/hue/logs
$sudo chown hue:hue /opt/cloudera/parcels/CDH/lib/hue/logs
$sudo -u hue <HUE_HOME>/build/env/bin/hue syncdb --noinput
$sudo -u hue <HUE_HOME>/build/env/bin/hue migrate
$mysql -u hue -p <secretpassword>
mysql> SHOW CREATE TABLE auth_permission;
 

5.4.11 (InnoDBonly) Drop the foreign key:

mysql> ALTER TABLE auth_permission DROP FOREIGN KEYcontent_type_id_refs_id_XXXXXX;
a.
Delete the rowsin the django_content_type table:
mysql> DELETE FROM hue.django_content_type;
b.
Load the data:
$<HUE_HOME>/build/env/bin/hue loaddata <some-temporary-file>.json
c.
(InnoDB only)Add the foreign key:
$mysql -u hue -p <secretpassword>
mysql> ALTER TABLE auth_permission ADD FOREIGN KEY (`content_type_id`)
REFERENCES`django_content_type` (`id`);
 

5.4.12 再次启动HUE

nohup supervisor &
无错误信息则正常

6 FAQ帮助

6.1 Mysql报错ERROR 1045

错误:ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
解决步骤:
#1.停止mysql数据库
/etc/init.d/mysqld stop
#2.执行如下命令
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

#3.使用root登录mysql数据库
mysql -u root mysql
#4.更新root密码
mysql> UPDATE user SET Password=PASSWORD('hadoop') where USER='root';
#5.刷新权限
mysql> FLUSH PRIVILEGES;
#6.退出mysql
mysql> quit
#7.重启mysql
/etc/init.d/mysqld restart
#8.使用root用户重新登录mysql
mysql -uroot -p
Enter password: hadoop

6.2 filelists.sqlite.bz2from base: [Errno -1]
的解决方法

Centos下更新出现 :http://mirror.averse.net/centos/5.7/updates/i386/repodata/filelists.sqlite.bz2:[Errno -1] Metadata file does not match checksum
用下面方法解决:
yumclean all
yummakecache

6.3 Cannotretrieve repository metadata (repomd.xml) for repository:xxxxxx

这个错误其实很简单,错误信息已经提示你,就是xxxxxx.repo这个文件有问题。
1. 打开/etc/yum.repos.d/xxxxxx.repo文件
2. enabled=1改成enabled=0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: