文档章节

Hadoop + HBase + Hive 完全分布式部署笔记

互动互
 互动互
发布于 2017/05/10 15:46
字数 885
阅读 4
收藏 0
点赞 0
评论 0

 

完全分布式Hadoop + HBase + Hive 部署过程的的一些问题。

NameNode: 192.168.229.132

DataNode: 192.168.229.133/192.168.229.134

 

--------------------------------------------------------------------------------

配置 Hadoop

无密码SSH

首先是NameNode需要通过ssh来访问DataNode,配置一个无密码的ssh

NameNode上生成公钥私钥

$ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

把公钥放到tmp目录,并且scp到每一个DataNode

$cp ~/.ssh/id_dsa.pub /tmp

在NameNode和DataNode都执行这个,完成配置

$cat /tmp/id_dsa.pub >> ~/.ssh/authorized_keys

 

配置文件 (其中涉及到的目录会自动创建)

conf/hadoop-env.sh

# The Java implementation to use.  Required. 
export JAVA_HOME=/usr/jdk1.6.0_25

 

conf/core-site.xml  (如果要使用Hive,就需要把红色的IP改成主机名,否则会有Wrong FS错误)

<configuration> 
  <property> 
    <!-- 用于dfs命令模块中指定默认的文件系统协议 --> 
    <name>fs.default.name</name> 
    <value>hdfs://192.168.229.132:9000</value> 
  </property> 
   <!-- 设置一个比较小的日志尺寸 --> 
  <property> 
    <name>hadoop.logfile.size</name> 
    <value>10</value> 
  </property>  
</configuration>

 

conf/hdfs-site.xml

<configuration> 
  <property> 
    <!-- DFS中存储文件命名空间信息的目录 --> 
    <name>dfs.name.dir</name> 
    <value>/u01/app/data/dfs.name.dir</value> 
  </property> 
  <property> 
    <!-- DFS中存储文件数据的目录 --> 
    <name>dfs.data.dir</name> 
    <value>/u01/app/data/dfs.data.dir</value> 
  </property> 
</configuration>

 

conf/mapred-site.xml

<configuration> 
  <property> 
    <!-- 用来作JobTracker的节点的(一般与NameNode保持一致) --> 
    <name>mapred.job.tracker</name> 
    <value>192.168.229.132:9001</value> 
  </property> 
  <property> 
    <!-- map/reduce的系统目录(使用的HDFS的路径) --> 
    <name>mapred.system.dir</name> 
    <value>/u01/app/data/mapred.system.dir</value> 
  </property> 
  <property> 
    <!-- map/reduce的临时目录(可使用“,”隔开,设置多重路径来分摊磁盘IO) --> 
    <name>mapred.local.dir</name> 
    <value>/u01/app/data/mapred.local.dir</value> 
  </property> 
</configuration>

 

主从配置

conf/masters

192.168.229.132

conf/slaves

192.168.229.133

192.168.229.134

 

在NameNode进行了所有的配置之后,通过scp把hadoop安装目录同步到DataNode。然后在NameNode进行格式化和启动。

 

--------------------------------------------------------------------------------

配置 Hbase

$vi /etc/hosts (HBase使用机器名称,在hosts里面必须配置集群里面的机器) 
127.0.0.1    localhost 
192.168.229.132    ubuntu02 
192.168.229.133    ubuntu03 
192.168.229.134    ubuntu04

 

conf/hbase-env.sh (这里)

# The Java implementation to use.  Java 1.6 required. 
export JAVA_HOME=/usr/jdk1.6.0_25

# Extra Java CLASSPATH elements.  Optional. 
export HBASE_CLASSPATH=/u01/app/hadoop/conf

# Tell HBase whether it should manage it's own instance of Zookeeper or not. 
export HBASE_MANAGES_ZK=true

 

conf/hbase-site.xml (红色部分必须使用主机名称,其他部分可以使用IP)

<configuration> 
  <property> 
    <name>hbase.rootdir</name> 
    <value>hdfs://ubuntu02:9000/u01/app/data/hbase</value> 
  </property> 
  <property> 
    <name>hbase.cluster.distributed</name> 
    <value>true</value> 
  </property> 
  <property>  
    <name>hbase.master</name>  
    <value>hdfs://192.168.229.132:60000</value>  
  </property>  
  <property> 
    <name>hbase.zookeeper.quorum</name> 
    <value>192.168.229.132, 192.168.229.133, 192.168.229.134</value> 
  </property> 
</configuration>

 

conf/regionservers (和Hadoop的slaves文件一致) 
192.168.229.133 
192.168.229.134

 

通过scp把hbase安装目录同步到DataNode

 

----------------------------------------------------------------------------------------------

配置 Hive

 

MySQL存储元数据 (安装过程见这里

创建数据库的时候,必须使用latin1作为字符集,否则会有错误信息Specified key was too long; max key length is 767 bytes

mysql> create database hivedb default character set latin1; 
mysql> create user 'hive'@'localhost' identified by 'hive'; 
mysql> grant all on hivedb.* to 'hive'@'localhost';

 

 

Hive 配置信息 (Hive仅需要在Master节点安装配置即可)

bin/hive-config.sh (可以设置 .profile 文件来略过这步) 
export JAVA_HOME=/usr/jdk1.6.0_25 
export HIVE_HOME=/u01/app/hive 
export HADOOP_HOME=/u01/app/hadoop

 

conf/hive-site.xml 
<property> 
  <name>javax.jdo.option.ConnectionURL</name>  
  <value>jdbc:mysql://localhost:3306/hivedb?createDatabaseIfNotExist=true</value> 
  <description>JDBC connect string FOR a JDBC metastore</description> 
</property> 
<property>  
  <name>javax.jdo.option.ConnectionDriverName</name>  
  <value>com.mysql.jdbc.Driver</value> 
  <description>Driver class name FOR a JDBC metastore</description> </property> 
<property>  
  <name>javax.jdo.option.ConnectionUserName</name>  
  <value>hive</value> 
  <description>username TOUSE against metastore database</description> 
</property> 
<property> 
  <name>javax.jdo.option.ConnectionPassword</name>  
  <value>hive</value> 
  <description>password TOUSE against metastore database</description> 
</property>

MySQL 驱动包

下载mysql-connector-java-5.1.18-bin.jar文件,并放到$HIVE_HOME/lib目录下

 

测试

hadoop@ubuntu02:/u01/app/hive$ bin/hive 
Logging initialized using configuration in jar:file:/u01/app/hive-0.8.1-bin/lib/hive-common-0.8.1.jar!/hive-log4j.properties 
Hive history file=/tmp/hadoop/hive_job_log_hadoop_201203201733_2122821776.txt 
hive> show tables; 
OK 
tb 
Time taken: 2.458 seconds 
hive>

:更多干货趣味内容,欢迎大家点击 http://activity.cloudin.cn/进去页面,然后点击博客,和我一起交流分享沟通。

© 著作权归作者所有

共有 人打赏支持
互动互
粉丝 0
博文 7
码字总数 9032
作品 0
东城
运营/编辑
Hive Hbase区别 整理

Hive是为了简化编写MapReduce程序而生的,使用MapReduce做过数据分析的人都知道,很多分析程序除业务逻辑不同外,程序流程基本一样。在这种情况下,就需要Hive这样的用戶编程接口。Hive本身不...

李超
2015/04/17
0
0
Hadoop、Pig、Hive、Storm、NoSQL 学习资源收集【Updating】

(一)hadoop 相关安装部署 1、hadoop在windows cygwin下的部署: http://lib.open-open.com/view/1333428291655 http://blog.csdn.net/ruby97/article/details/7423088 http://blog.csdn.n......

大数据之路
2013/06/25
0
3
关于学习Hadoop中未总结的资料

1)Cygwin相关资料   (1)Cygwin上安装、启动ssh服务失败、ssh localhost失败的解决方案   地址:http://blog.163.com/pwcrab/blog/static/16990382220107267443810/   (2)windows...

Carl_
2015/06/25
0
0
一文让您全面了解清楚HBase数据库的所有知识点,值得收藏!

欢迎关注大数据和人工智能技术文章发布的微信公众号:清研学堂,在这里你可以学到夜白(作者笔名)精心整理的笔记,让我们每天进步一点点,让优秀成为一种习惯! 一、HBase基本概念:列式数据...

李金泽
03/04
0
0
HIVE和HBASE之间,主要的区别是什么?

  【IT168 评论】Apache Hive是一个构建在hadoop基础设施之上的数据仓库。通过Hive可以使用HQL语言查询存放在HDFS上的数据。HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然Hiv...

中国大数据
05/18
0
0
hive与hbase数据交互的详解指南 | ApacheCN(apache中文网)

HBase和Hive的集成原理 ApacheCN | apache中文网 Hive和Hbase有各自不同的特征:hive是高延迟、结构化和面向分析的,hbase是低延迟、非结构化和面向编程的。Hive数据仓库在hadoop上是高延迟...

片刻
2014/06/28
0
0
hive 与 hbase 结合

一、hive与hbase的结合 Hive会经常和Hbase结合使用,把Hbase作为Hive的存储路径,所以Hive整合Hbase尤其重要。使用Hive读取Hbase中的数据,可以使用HQL语句在HBase表上进行查询、插入操作;甚...

meteor_hy
06/26
0
0
HBase 和 Hive 的差别是什么,各自适用在什么场景中?

https://www.zhihu.com/question/21677041/answer/185664626 先放结论:Hbase和Hive在大数据架构中处在不同位置: Hbase主要解决实时数据查询问题 Hive主要解决数据处理和计算问题,一般是配...

chenhao_asd
04/24
0
0
使用hive读取hbase数据

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为 MapReduce任务进行运行。 其优点是学习成本低,可以通过类...

凡16
2013/12/13
0
0
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别

初接触Hadoop技术的朋友肯定会对它体系下寄生的个个开源项目糊涂了,我敢保证Hive,Pig,HBase这些开源技术会把你搞的有些糊涂,不要紧糊涂的不止你一个,如某个菜鸟的帖子的疑问,when to use...

Ryan-瑞恩
2014/05/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Android 复制和粘贴功能

做了一回搬运工,原文地址:https://blog.csdn.net/kennethyo/article/details/76602765 Android 复制和粘贴功能,需要调用系统服务ClipboardManager来实现。 ClipboardManager mClipboardM...

她叫我小渝
28分钟前
0
0
拦截SQLSERVER的SSL加密通道替换传输过程中的用户名密码实现运维审计(一)

工作准备 •一台SQLSERVER 2005/SQLSERVER 2008服务 •SQLSERVER jdbc驱动程序 •Java开发环境eclipse + jdk1.8 •java反编译工具JD-Core 反编译JDBC分析SQLSERVER客户端与服务器通信原理 SQ...

紅顏為君笑
44分钟前
4
0
jQuery零基础入门——(六)修改DOM结构

《jQuery零基础入门》系列博文是在廖雪峰老师的博文基础上,可能补充了个人的理解和日常遇到的点,用我的理解表述出来,主干出处来自廖雪峰老师的技术分享。 在《零基础入门JavaScript》的时...

JandenMa
今天
0
0
linux mint 1.9 qq 安装

转: https://www.jianshu.com/p/cdc3d03c144d 1. 下载 qq 轻聊版,可在百度搜索后下载 QQ7.9Light.exe 2. 去wine的官网(https://wiki.winehq.org/Ubuntu) 安装 wine . 提醒网页可以切换成中...

Canaan_
今天
0
0
PHP后台运行命令并管理运行程序

php后台运行命令并管理后台运行程序 class ProcessModel{ private $pid; private $command; private $resultToFile = ''; public function __construct($cl=false){......

colin_86
今天
1
0
数据结构与算法4

在此程序中,HighArray类中的find()方法用数据项的值作为参数传递,它的返回值决定是否找到此数据项。 insert()方法向数组下一个空位置放置一个新的数据项。一个名为nElems的字段跟踪记录着...

沉迷于编程的小菜菜
今天
1
1
fiddler安装和基本使用以及代理设置

项目需求 由于开发过程中客户端和服务器数据交互非常频繁,有时候服务端需要知道客户端调用接口传了哪些参数过来,这个时候就需要一个工具可以监听这些接口请求参数,已经接口的响应的数据,这种...

银装素裹
今天
0
0
Python分析《我不是药神》豆瓣评论

读取 Mongo 中的短评数据,进行中文分词 对分词结果取 Top50 生成词云 生成词云效果 看来网上关于 我不是药神 vs 达拉斯 的争论很热啊。关于词频统计就这些,代码中也会完成一些其它的分析任...

猫咪编程
今天
0
0
虚拟机怎么安装vmware tools

https://blog.csdn.net/tjcwt2011/article/details/72638977

AndyZhouX
昨天
1
0
There is no session with id[xxx]

参考网页 https://blog.csdn.net/caimengyuan/article/details/52526765 报错 2018-07-19 23:04:35,330 [http-nio-1008-exec-8] DEBUG [org.apache.shiro.web.servlet.SimpleCookie] - Found......

karma123
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部