大家好,我是来自内蒙古的小哥,我现在在北京学习大数据,我想把学到的东西分享给大家,想和大家一起学习

hue框架介绍和安装部署

hue全称:HUE=Hadoop User Experience

他是cloudera公司提供的一个web框架,和其他大数据框架整合,提供可视化界面

hue的架构
1.hue UI:hue提供一个可视化的web界面
2.hue server:hue的服务器,对外提供一个web的访问
3.hue db:存储整合框架的信息

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链接

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>

</property>

<property>

<name>hadoop.proxyuser.root.groups</name>

<value>*</value>

</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

配置我们的hue与hdfs集成

[[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

配置我们的hue与yarn集成

[[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集成

如果需要配置hue与hive的集成,我们需要启动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机器上启动hive的metastore以及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的任务就不会报错了

hue框架介绍和安装部署的更多相关文章

  1. Storm介绍及安装部署

    本节内容: Apache Storm是什么 Apache Storm核心概念 Storm原理架构 Storm集群安装部署 启动storm ui.Nimbus和Supervisor 一.Apache S ...

  2. Apache Solr 初级教程(介绍、安装部署、Java接口、中文分词)

    Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...

  3. Kafka介绍及安装部署

    本节内容: 消息中间件 消息中间件特点 消息中间件的传递模型 Kafka介绍 安装部署Kafka集群 安装Yahoo kafka manager kafka-manager添加kafka cluste ...

  4. selenium模块使用详解、打码平台使用、xpath使用、使用selenium爬取京东商品信息、scrapy框架介绍与安装

    今日内容概要 selenium的使用 打码平台使用 xpath使用 爬取京东商品信息 scrapy 介绍和安装 内容详细 1.selenium模块的使用 # 之前咱们学requests,可以发送htt ...

  5. 【Hadoop离线基础总结】Hue的简单介绍和安装部署

    目录 Hue的简单介绍 概述 核心功能 安装部署 下载Hue的压缩包并上传到linux解压 编译安装启动 启动Hue进程 hue与其他框架的集成 Hue与Hadoop集成 Hue与Hive集成 Hue ...

  6. 【Hadoop离线基础总结】impala简单介绍及安装部署

    目录 impala的简单介绍 概述 优点 缺点 impala和Hive的关系 impala如何和CDH一起工作 impala的架构及查询计划 impala/hive/spark 对比 impala的安 ...

  7. Hadoop入门进阶课程13--Chukwa介绍与安装部署

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan  ...

  8. Spark介绍及安装部署

    一.Spark介绍 1.1 Apache Spark Apache Spark是一个围绕速度.易用性和复杂分析构建的大数据处理框架(没有数据存储).最初在2009年由加州大学伯克利分校的AMPLab开 ...

  9. 大数据技术之_13_Azkaban学习_Azkaban(阿兹卡班)介绍 + Azkaban 安装部署 + Azkaban 实战

    一 概述1.1 为什么需要工作流调度系统1.2 常见工作流调度系统1.3 各种调度工具特性对比1.4 Azkaban 与 Oozie 对比二 Azkaban(阿兹卡班) 介绍三 Azkaban 安装部 ...

随机推荐

  1. 【mysql】You must reset your password using ALTER USER statement before executing this statement. 报错处理

    1.问题:登陆mysql以后,不管运行任何命令,总是提示这个 mysql> select user,authentication from mysql.user; ERROR 1820 (HY0 ...

  2. MySQL for OPS 12:锁处理

    写在前面的话 在前面的内容中提到过,在以前的 MyISAM 中锁是表级锁,InnoDB 是行级锁.这个锁到底是啥样,怎么找出来,这一节就主要做这个. 定位锁的问题 上一节我们创建了一个 1000万数据 ...

  3. Python 爬取大众点评 50 页数据,最好吃的成都火锅竟是它!

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 胡萝卜酱 PS:如有需要Python学习资料的小伙伴可以加点击下方链 ...

  4. PHP-Curl模拟HTTPS请求

     使用PHP-Curl方式模拟HTTPS请求,测试接口传参和返回值状态   上代码!! <?php /** * 模拟post进行url请求 * @param string $url * @par ...

  5. Jquery补充及插件

    此篇为jQuery补充的一些知识点,详细资料请看另一篇博客,地址:https://www.cnblogs.com/chenyanbin/p/10454503.html 一.jQuery中提供的两个函数 ...

  6. Javase之集合泛型

    集合泛型知识 泛型 是一种把类型明确工作推迟到创建对象或者调用方法的时候才明确的特殊类型. 也称参数化类型,把类型当成参数传递. 在jdk1.5中出现.一般来说经常在集合中使用. 格式 <数据类 ...

  7. CSS3 动画--- CSS3 animation

    动画是CSS3中具有颠覆性的特征之一,可通过设置多个节点来精确控制一个或一组动画,常用来实现复杂的动画效果. 语法格式: animation:动画名称 花费时间 运动曲线 何时开始 播放次数 是否反方 ...

  8. XHR 对象实例所有的配置、属性、方法、回调和不可变值

    当我们声明了一个XMLHttpRequest对象的实例的时候,使用for-in来循环遍历一下这个实例(本文使用的是chrome45版本浏览器),我们会发现在这个实例上绑定了一些内容,我把这些内容进行了 ...

  9. 如何突破DNS报文的512字节限制

    - DNS的512字节限制 根据协议标准,DNS协议同时占用UDP和TCP的53端口,这是为什么呢? 翻阅DNS资料,可以发现,DNS协议默认按UDP传输,为优化传输性能,DNS协议有一个512字节的 ...

  10. 8.智能快递柜SDK(联网型锁板)

    1.智能快递柜(开篇) 2.智能快递柜(终端篇) 3.智能快递柜(通信篇-HTTP) 4.智能快递柜(通信篇-SOCKET) 5.智能快递柜(通信篇-Server程序) 6.智能快递柜(平台篇) 7. ...