第一章 Hue的安装

第一章 Hue的安装

1、Hue的介绍

HUE=Hadoop User Experience

? Hue是一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera公司将其贡献给Apache基金会的Hadoop社区,它是基于Python Web框架Django实现的。

? 通过使用Hue我们可以在浏览器端的Web控制台上与Hadoop集群进行交互来分析处理数据,例如操作HDFS上的数据,运行MapReduce Job,执行Hive的SQL语句,浏览HBase数据库等等。

HUE链接

· Site: http://gethue.com/

· Github: https://github.com/cloudera/hue

· Reviews: https://review.cloudera.org

Hue的架构

核心功能

· SQL编辑器,支持Hive, Impala, MySQL, Oracle, PostgreSQL, SparkSQL, Solr SQL, Phoenix…

· 搜索引擎Solr的各种图表

· Spark和Hadoop的友好界面支持

· 支持调度系统Apache Oozie,可进行workflow的编辑、查看

HUE提供的这些功能相比Hadoop生态各组件提供的界面更加友好,但是一些需要debug的场景可能还是需要使用原生系统才能更加深入的找到错误的原因。

HUE中查看Oozie workflow时,也可以很方便的看到整个workflow的DAG图,不过在最新版本中已经将DAG图去掉了,只能看到workflow中的action列表和他们之间的跳转关系,想要看DAG图的仍然可以使用oozie原生的界面系统查看。

1,访问HDFS和文件浏览

2,通过web调试和开发hive以及数据结果展示

3,查询solr和结果展示,报表生成

4,通过web调试和开发impala交互式SQL Query

5,spark调试和开发

7,oozie任务的开发,监控,和工作流协调调度

8,Hbase数据查询和修改,数据展示

9,Hive的元数据(metastore)查询

10,MapReduce任务进度查看,日志追踪

11,创建和提交MapReduce,Streaming,Java job任务

12,Sqoop2的开发和调试

13,Zookeeper的浏览和编辑

14,数据库(MySQL,PostGres,SQlite,Oracle)的查询和展示

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

2、Hue的安装

? Hue的安装支持多种方式,包括rpm包的方式进行安装,tar.gz包的方式进行安装以及cloudera manager的方式来进行安装等,我们这里使用tar.gz包的方式来进行安装

第一步:下载Hue的压缩包并上传到linux解压

Hue的压缩包的下载地址:

http://archive.cloudera.com/cdh5/cdh/5/

我们这里使用的是CDH5.14.0这个对应的版本,具体下载地址为

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

下载然后上传到linux系统,然后进行解压

cd /export/softwares/
tar -zxvf hue-3.9.0-cdh5.14.0.tar.gz -C ../servers/

第二步:编译安装启动

2.1、linux系统安装依赖包:

联网安装各种必须的依赖包

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

2.2开始配置Hue

cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf
vim  hue.ini

通用配置

[desktop]
secret_key=jFE93j;2[290-eiw.KEiwN2s3['d;/.q[eIW^y#e=+Iei*@Mn<qW5o
http_host=node03.hadoop.com
is_hue_4=true
time_zone=Asia/Shanghai
server_user=root
server_group=root
default_user=root
default_hdfs_superuser=root

配置使用mysql作为hue的存储数据库,大概在hue.ini的587行左右

[[database]]
engine=mysql
host=node03.hadoop.com
port=3306
user=root
password=123456
name=hue

2.3、创建mysql数据库

创建hue数据库

create database hue default character set utf8 default collate utf8_general_ci;

注意:实际工作中,还需要为hue这个数据库创建对应的用户,并分配权限,我这就不创建了,所以下面这一步不用执行了

grant all on hue.* to 'hue'@'%' identified by 'hue';   

2.4、准备进行编译

cd /export/servers/hue-3.9.0-cdh5.14.0
make apps

2.5、linux系统添加普通用户hue

useradd hue
passwd hue

2.6、启动hue进程

cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor

2.7、页面访问

http://node03:8888

  • 第一次访问的时候,需要设置管理员用户和密码
  • 我们这里的管理员的用户名与密码尽量保持与我们安装hadoop的用户名和密码一致,
  • 我们安装hadoop的用户名与密码分别是root 123456
  • 初次登录使用root用户,密码为123456

进入之后发现我们的hue页面报错了,这个错误主要是因为hive的原因,因为我们的hue与hive集成的时候出错了,所以我们需要配置我们的hue与hive进行集成,接下里就看看我们的hue与hive以及hadoop如何进行集成

3、hue与其他框架的集成

3.1、hue与hadoop的HDFS以及yarn集成

第一步:更改所有hadoop节点的core-site.xml配置

记得更改完core-site.xml之后一定要重启hdfs与yarn集群

三台机器更改`core-site.xml

<property>
    <name>hadoop.proxyuser.root.hosts</name>    <--被代理的用户-->
    <value>*</value>             <--表示所有用户都可以代理上面配置的root用户-->
</property>
<property>
    <name>hadoop.proxyuser.root.groups</name>    <--被代理的用户组-->
    <value>*</value>             <--表示所有用户组都可以代理上面配置的root用户组-->
</property> 

第二步:更改所有hadoop节点的hdfs-site.xml

<property>
      <name>dfs.webhdfs.enabled</name>
      <value>true</value>
</property>

第三步:重启hadoop集群

node01机器上面执行以下命令

cd /export/servers/hadoop-2.6.0-cdh5.14.0
sbin/stop-dfs.sh
sbin/start-dfs.sh
sbin/stop-yarn.sh
sbin/start-yarn.sh

第四步:停止hue的服务,并继续配置hue.ini

cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf
vim hue.ini

配置我们的huehdfs集成

[[hdfs_clusters]]
[[[default]]]
fs_defaultfs=hdfs://node01.hadoop.com:8020
webhdfs_url=http://node01.hadoop.com:50070/webhdfs/v1
hadoop_hdfs_home=/export/servers/hadoop-2.6.0-cdh5.14.0
hadoop_bin=/export/servers/hadoop-2.6.0-cdh5.14.0/bin
hadoop_conf_dir=/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop

配置我们的hueyarn集成

[[yarn_clusters]]
[[[default]]]
resourcemanager_host=node01
resourcemanager_port=8032
submit_to=True
resourcemanager_api_url=http://node01:8088
history_server_api_url=http://node01:19888

3.2、配置hue与hive集成

? 如果需要配置huehive的集成,我们需要启动hive的metastore服务以及hiveserver2服务(impala需要hive的metastore服务,hue需要hvie的hiveserver2服务)

更改hue的配置hue.ini

修改hue.ini

[beeswax]
hive_server_host=node03.hadoop.com
hive_server_port=10000
hive_conf_dir=/export/servers/hive-1.1.0-cdh5.14.0/conf
server_conn_timeout=120
auth_username=root
auth_password=123456
[metastore]
#允许使用hive创建数据库表等操作
enable_new_create_table=true

启动hive的metastore服务

node03机器上启动hivemetastore以及hiveserver2服务

cd /export/servers/hive-1.1.0-cdh5.14.0
nohup bin/hive --service metastore &
nohup bin/hive --service hiveserver2 &

重新启动hue,然后就可以通过浏览器页面操作hive了

3.3、配置hue与impala的集成

停止hue的服务进程

修改hue.ini配置文件

[impala]
server_host=node03
server_port=21050
impala_conf_dir=/etc/impala/conf

3.4、配置hue与mysql的集成

找到databases 这个选项,将这个选项下面的mysql注释给打开,然后配置mysql即可,大概在1547行

[[[mysql]]]
nice_name="My SQL DB"
engine=mysql
host=node03.hadoop.com
port=3306
user=root
password=123456

3.5、重新启动hue的服务

cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor

3.6、解决hive以及impala执行权限不足的问题

在我们hive当中执行任意的查询,只要是需要跑MR的程序,就会报错,发现权限不够的异常,具体详细信息如下:

INFO  : Compiling command(queryId=root_20180625191616_d02efd23-2322-4f3d-9cb3-fc3a06ff4ce0): select count(1) from mystu
INFO  : Semantic Analysis Completed
INFO  : Returning Hive schema: Schema(fieldSchemas:[FieldSchema(name:_c0, type:bigint, comment:null)], properties:null)
INFO  : Completed compiling command(queryId=root_20180625191616_d02efd23-2322-4f3d-9cb3-fc3a06ff4ce0); Time taken: 0.065 seconds
INFO  : Concurrency mode is disabled, not creating a lock manager
INFO  : Executing command(queryId=root_20180625191616_d02efd23-2322-4f3d-9cb3-fc3a06ff4ce0): select count(1) from mystu
INFO  : Query ID = root_20180625191616_d02efd23-2322-4f3d-9cb3-fc3a06ff4ce0
INFO  : Total jobs = 1
INFO  : Launching Job 1 out of 1
INFO  : Starting task [Stage-1:MAPRED] in serial mode
INFO  : Number of reduce tasks determined at compile time: 1
INFO  : In order to change the average load for a reducer (in bytes):
INFO  :   set hive.exec.reducers.bytes.per.reducer=<number>
INFO  : In order to limit the maximum number of reducers:
INFO  :   set hive.exec.reducers.max=<number>
INFO  : In order to set a constant number of reducers:
INFO  :   set mapreduce.job.reduces=<number>
ERROR : Job Submission failed with exception 'org.apache.hadoop.security.AccessControlException(Permission denied: user=admin, access=EXECUTE, inode="/tmp":root:supergroup:drwxrwx---

我们需要给hdfs上面的几个目录执行权限即可

hdfs  dfs  -chmod o+x /tmp
hdfs  dfs  -chmod o+x  /tmp/hadoop-yarn
hdfs  dfs  -chmod o+x  /tmp/hadoop-yarn/staging

或者我们可以这样执行

hdfs  dfs  -chmod -R o+x /tmp

可以将/tmp目录下所有的文件及文件夹都赋予权限

继续执行hive的任务就不会报错了

原文地址:https://www.cnblogs.com/-xiaoyu-/p/11186666.html

时间: 2024-10-11 22:04:47

第一章 Hue的安装的相关文章

【MYSQL系列】【基础版】第一章 MYSQL的安装以及测试

1. MYSQL的安装以及测试     1.1 什么是数据库,有什么作用,以及有哪些特点         1.1.1 Database,DB,是一个数据的仓库:         1.1.2 用于保存.管理数据         1.1.3 特点:             1.1.3.1 一致性.完整性             1.1.3.2 降低冗余(重复)             1.1.3.3 应用的共享,以及有组织         1.1.4 数据仓库: 偏向于数据分析,是数据挖掘的一种  

NodeJS 第一章 Node的安装与配置

1. Mac OS X安装Node.js node.js官方专门提供了Mac OS X的安装包,你可以在http://nodejs.org找到Download链接, 然后选择Macintosh Installer,下载安装包.下载完成后运行安装包, 据提示完成安装.Node.js和npm会被安装到/usr/local/bin目录下, 安装过程中需要系统管理员. 2. 可以打开终端, 输入 node -v 查看 node 版本, npm -v 查看npm版本了, npm是Node包管理器, 我们可

第一章:pip 安装 tar.gz 结尾的文件 和 .whl 结尾的文件

1. 假如后缀中还有 .tar.gz 的文件通过 pip 命令进行安装步骤. .单击 .tar.gz结尾的文件,并且对文件进行解压,进入到解压目录中,通过python命令进行安装. 命令如下:在dos命令行中输入: 进入到目录名中>python3 setup.py install 2. 假如后缀中还有 .whl文件的通过pip命令进行安装 解释:其实 .whl 文件本质上面是一个 .zip 包格式. 例如安装:django-1.10.3 -py2.py3-none-any.whl 安装命令如下:

新手学第一章:python安装

Python是一种解释型.面向对象.动态数据类型的高级程序设计语言! 一般系统中会自动安装python的,直接用python命令可以查看版本信息!若没有安装可直接用如下命令安装! [[email protected] ~]# yum install -y python       /若电脑中没有安装,可以直接用此安装 也可以用源码包安装,我们可以写成一个shell脚本,直接安装: #!/bin/bash check_ok(){ if [ $? != 0 ];then echo "ERROR,Pl

java基础 第一章上(安装 配置java、简单dos命令)

一.安装 配置java     下载安装          1.java官网下载jdk(32位或者64位根据自己电脑而定). 2.双击jdk.exe文件安装. 环境变量配置 右击我的电脑--属性--高级系统设置--环境变量--找path变量--在path变量最前面输入java文件中bin的路径--再找classpath变量最前面加英文"   . ;". 1.   2.  3.   4.    5.最后点击确认完成java配置. 6.在命令提示符中输入javac 查看是否配置成功. 显示

【zabbix 监控】第一章 zabbix的安装配置

安装前准备 一.下载网络yum源: http://mirrors.163.com/.help/centos.html https://opsx.alibaba.com/mirror 1.首先备份/etc/yum.repos.d/CentOS-Base.repo,备份之前要先安装weget(yum -y install wget)mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2.选择下载一

第一章SQL server2008安装与管理

1.1  启动SQL server的三种形式 后台启动:计算机->右键->管理->->服务和应用程序->服务->sql server(***) Sql server配置管理器启动服务:开始->安装路径->配置工具->sql server配置管理器 在运行窗口中使用命令启动和停止服务:Win+r. 启动:net start mssqlsever 停止:net stop mssqlsever 1.2  SQL server的身份验证模式 windows身份

第一章、ssh安装及远程登入配置

1.Ubuntu下 确认 SSH Server 是否启动 输入: sudo ps -e | grep ssh. 如果正确启动, 命令行中会显示sshd. 安装服务端 OpenSSH Server 输入 : sudo apt-get install openssh-server #安装 sudo apt-get remove openssh-server #卸载 安装客户端 OpenSSH Client 输入 : sudo apt-get install openssh-client 启动 ssh

第一章 安装rsync服务

第一章 安装rsync服务 第一节 CentOS7上安装rsync 安装包:rsync-3.0.9-15.el7.x86_64 [[email protected] Packages]# rpm -ivh rsync-3.0.9-15.el7.x86_64.rpm 查看rsync帮助 [[email protected] ~]# man rsync 操作参数说明 -a, --archive               以递归方式传送文件,并保持所有文件原属性 -v, --verbose