高可用Hadoop平台-Hue In Hadoop
1.概述
今天为大家介绍另一款工具——Hue,该工具功能比较丰富,下面是今天为大家分享的内容目录:
- Hue简述
- Hue In Hadoop
- 截图预览
本文所使用的环境是Apache Hadoop-2.6版本,下面开始今天的内容分享。
2.Hue简述
Hue是一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera公司将其贡献给Apache基金会的Hadoop社区,它是基于Python Web框架Django实现的。通过使用Hue我们可以在浏览器端的Web控制台上与Hadoop集群进行交互来分析处理数据,例如操作HDFS上的数据,运行MapReduce Job,执行Hive的SQL语句,浏览HBase数据库等等。
Hue在数据库方面,默认使用的是SQLite数据库来管理自身的数据,包括用户认证和授权,另外,可以自定义为MySQL数据库、Postgresql数据库、以及Oracle数据库。其自身的功能包含有:
- 对HDFS的访问,通过浏览器来查阅HDFS的数据。
- Hive编辑器:可以编写HQL和运行HQL脚本,以及查看运行结果等相关Hive功能。
- 提供Solr搜索应用,并对应相应的可视化数据视图以及DashBoard。
- 提供Impala的应用进行数据交互查询。
- 最新的版本集成了Spark编辑器和DashBoard
- 支持Pig编辑器,并能够运行编写的脚本任务。
- Oozie调度器,可以通过DashBoard来提交和监控Workflow、Coordinator以及Bundle。
- 支持HBase对数据的查询修改以及可视化。
- 支持对Metastore的浏览,可以访问Hive的元数据以及对应的HCatalog。
- 另外,还有对Job的支持,Sqoop,ZooKeeper以及DB(MySQL,SQLite,Oracle等)的支持。
下面就通过集成部署,来预览相关功能。
3.Hue In Hadoop
本文所使用的Hadoop环境是基于Apache社区版的Hadoop2.6,在集成到Hadoop上,Hue的部署过程是有点复杂的。Hue在CDH上是可以轻松的集成的,我们在使用CDH的那套管理系统是,可以非常容易的添加Hue的相关服务。然而,在实际业务场景中,往往Hadoop集群使用的并非都是CDH版的,在Cloudera公司使用将其贡献给Apache基金会后,在Hadoop的集成也有了较好的改善,下面就为大家介绍如何去集成到Apache的社区版Hadoop上。
3.1基础软件
在集成Hue工具时,我们需要去下载对应的源码,该系统是开源免费的,可以在GitHub上下载到对应的源码,下载地址如下所示:
git@github.com:cloudera/hue.git
我们使用Git命令将其克隆下来,命令如下所示:
git clone git@github.com:cloudera/hue.git
然后,我们在Hadoop账号下安装Hue需要的依赖环境,命令如下所示:
sudo yum install krb5-devel cyrus-sasl-gssapi cyrus-sasl-deve libxml2-devel libxslt-devel mysql mysql-devel openldap-devel python-devel python-simplejson sqlite-devel
等待其安装完毕。
3.2编译部署
在基础环境准备完成后,我们开始对Hue的源码进行编译,编译的时候,Python的版本需要是2.6+以上,不然在编译的时候会出现错误,编译命令如下所示:
[hadoop@nna ~]$ cd hue [hadoop@nna ~]$ make apps
等待其编译完成,在编译的过程中有可能会出现错误,在出现错误时Shell控制台会提示对应的错误信息,大家可以根据错误信息的提示来解决对应的问题,在编译完成后,我们接下来需要对其做对应的配置,Hue的默认配置是启动本地的Web服务,这个我们需要对其修改,供外网或者内网去访问其Web服务地址,我们在Hue的根目录下的desktop/conf文件夹下加pseudo-distributed.ini文件,然后我们对新增的文件添加如下内容:
vi pseudo-distributed.ini
[desktop] http_host=10.211.55.28 http_port=8000 [hadoop] [[hdfs_clusters]] [[[default]]] fs_defaultfs=hdfs://cluster1 logical_name=cluster1 webhdfs_url=http://10.211.55.26:50070/webhdfs/v1 hadoop_conf_dir=/home/hadoop/hadoop-2.6.0/etc/hadoop [beeswax] hive_server_host=10.211.55.17 hive_server_port=10000 # hive_conf_dir=/home/hive/warehouse [hbase] hbase_clusters=(cluster1|10.211.55.26:9090) hbase_conf_dir=/home/hadoop/hbase-1.0.1/conf
关于Hue的详细和更多配置需要,大家可以参考官方给的知道文档,连接地址如下 所示:
http://cloudera.github.io/hue/docs-3.8.0/manual.html
这里,Hue的集成就完成了,下面可以输入启动命令来查看,命令如下所示:
[hadoop@nna ~]$ /root/hue-3.7.1/build/env/bin/supervisor &
启动信息如下所示:
下面,在浏览器中输入对应的访问地址,这里我配置的Port是8000,在第一次访问时,需要输入用户名和密码来创建一个Administrator,这里需要在一步的时候需要注意下。
4.截图预览
下面附上Hue的相应的截图预览,如下图所示:
5.总结
在编译的时候,大家需要注意Hue的依赖环境,由于我们的Hadoop集群不是CDH版本的,所以在集成Hue的服务不能像CDH上那么轻松。在Apache的Hadoop社区版上集成部署,会需要对应的环境,若是缺少依赖,在编译的时候是会发生错误的。所以,这里需要特别留心注意,出错后,一般都会有提示信息的,大家可以根据提示检查定位出错误原因。
6.结束语
这篇博客就和大家分享到这里,如果大家在研究学习的过程当中有什么问题,可以加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
MapReduce源码分析之LocatedFileStatusFetcher
LocatedFileStatusFetcher是MapReduce中一个针对给定输入路径数组,使用配置的线程数目来获取数据块位置的实用类。它的主要作用就是利用多线程技术,每个线程对应一个任务,每个任务针对给定输入路径数组Path[],解析出文件状态列表队列BlockingQueue<List<FileStatus>>。其中,输入数据输入路径只不过是一个Path,而输出数据则是文件状态列表队列BlockingQueue<List<FileStatus>>,文件状态FileStatus包含文件路径、长度、数据块大小、数据块副本数、文件所属用户、文件所属组、文件权限、文件最近修改时间、文件最近访问时间、是否为目录等信息。 LocatedFileStatusFetcher采用了google并发编程包中的可监听Future模式ListenableFuture、可监听线程池ListeningExecutorService、回调函数FutureCallback,并使用了Java并发包中的可重入互斥锁ReentrantLock、多线程间协调通信工...
- 下一篇
高可用Hadoop平台-Ganglia安装部署
1.概述 最近,有朋友私密我,Hadoop有什么好的监控工具,其实,Hadoop的监控工具还是蛮多的。今天给大家分享一个老牌监控工具Ganglia,这个在企业用的也算是比较多的,Hadoop对它的兼容也很好,不过就是监控界面就不是很美观。下次给大家介绍另一款工具——Hue,这个界面官方称为Hadoop UI,界面美观,功能也比较丰富。今天,在这里主要给大家介绍Ganglia这款监控工具,介绍的内容主要包含如下: Ganglia背景 Ganglia安装部署、配置 Hadoop集群配置Ganglia 启动、预览Ganglia 下面开始今天的内容分享。 2.Ganglia背景 Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。 Ganglia其核心由3部分组成: gmond:运行在每个节点上监视并收集节...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8编译安装MySQL8.0.19
- CentOS关闭SELinux安全模块
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7