您的位置:首页 > 其它

hbase1.3.0集群版详细安装及简单测试

2017-05-01 17:07 393 查看
[b][b]    
[/b][/b]

[b][b]    不管在什么地方,什么时候,学习是快速提升自己的能力的一种体现!!!!!!!!!!![/b][/b]



[b][b]简单介绍下hbase: (度娘的)
[/b][/b]

[b][b]HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。[/b][/b]



[b][b]OK,不多说直接开始吧![/b][/b]



[b][b]将hbase的安装包导入虚拟机,我一般喜欢将大数据有关的放到统一目录(自建hadoop目录)下[/b][/b]



[b][b]


[/b][/b]



[b][b]解压该安装包  tar -zxvf hbase-1.3.0-bin.tar.gz  
[/b][/b]

[b][b]我一般解压完之后会删除安装包   rm -f hbase-1.3.0-bin.tar.gz
[/b][/b]



[b][b]


[/b][/b]



[b][b]编辑 /etc/profile  文件末尾添加HBASE_HOME 环境[/b][/b]

export HBASE_HOME=/usr/local/hadoop/hbase-1.3.0

export PATH=$HBASE_HOME/bin:$PATH   
                     



[b][b]编辑conf目录下的hbase-env.sh文件   vim hbase-env.sh  
[/b][/b]

[b][b]找到   # export JAVA_HOME=/usr/java/jdk1.6.0/  去掉注释改为[/b][/b]

[b][b]export JAVA_HOME=/usr/local/java/jdk1.8.0_11    (依个人存放JDK路径填写)[/b][/b]



[b][b]


[/b][/b]



[b][b][b][b][b]hbase本身自带有zookeeper,如果你想用自己安装的zookeeper,[b][b][b]编辑conf目录下的hbase-env.sh文件(还是刚才的文件)[/b][/b][/b][/b][/b][/b][/b][/b]

[b][b][b][b][b][b][b][b]找到   # export HBASE_MANAGES_ZK=true 同样去掉注解  (这句话的位置在倒数第9行),[/b][/b][/b][/b][/b][/b][/b][/b]

[b][b][b][b][b][b][b][b]改为  :[b][b][b][b][b][b][b][b][b]export HBASE_MANAGES_ZK=false   (false代表不使用hbase自带的zookeeper,默认是使用的)[/b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b]



[b][b]


[/b][/b]



[b][b]修改 hbase-site.xml 文件   vim hbase-site.xml[/b][/b]

[b][b]添加以下内容:[/b][/b]

[b][b] <property>

    <name>hbase.rootdir</name>

    <value>hdfs://master:9000/hbase</value>       #端口号需要跟hadoop中的端口号一致 同时需要在hadoop安装目录下创建hbase目录             

  </property>  

<property>  

    <name>hbase.cluster.distributed</name>  

    <value>true</value>  

</property> 
[/b][/b]

[b][b][b][b][b] <property>

     <name>hbase.zookeeper.property.clientPort</name>

     <value>2181</value>

 </property>
[/b][/b]
[/b][/b][/b]

[b][b] <property>  

     <name>hbase.zookeeper.quorum</name>      

     <value>master,slave1,slave2</value>      

   </property>
[/b][/b]

[b][b] <property>

    <name>hbase.zookeeper.property.dataDir</name>

    <value>/usr/local/hadoop/zookeeper/data</value>

  </property>

[/b][/b]

注:

(1)hbase.rootdir,HDFS的入口地址,地址和端口要和你的hadoop配置一样(core-site.xml中的 <name>fs.default.name</name>),所有节点公用地址
(2)hbase.cluster.distributed :
ture表示分布式

(3)hbase.zookeeper.property.clientPort : zookeeper端口
(4)hbase.zookeeper.quorum   :
zookeeper的集群,多台机器以逗号分隔

(5)hbase.zookeeper.property.dataDir ,
zookeeper 保持信息的文件,默认为/tmp 重启会丢失


详细的配置解析可以参考  转载文章  http://www.cnblogs.com/nexiyi/p/hbase_config_94.html


修改  conf 下的 regionservers文件   命令 :vim regionservers

把文本中的localhost删除,把集群节点添加进去


[b][b]


[/b][/b]



[b][b]配置完以后,将hbase拷贝到slave1和slave2[/b][/b]

[b][b]scp -r hbase-1.3.0 slave1:/usr/local/hadoop/

scp -r hbase-1.3.0 slave2:/usr/local/hadoop/
[/b][/b]

[b][b]slave1:[/b][/b]

[b][b]


[/b][/b]



[b][b]slave2:[/b][/b]

[b][b]


[/b][/b]





[b][b]拷贝过去之后不用修改hbase内容(注:前提是你每台机的JDK路径、其他的配置路径是一样的),只修改slave1和slave2的环境变量
[/b][/b]



[b][b]编辑 /etc/profile  文件末尾添加HBASE_HOME 环境[/b][/b]

export HBASE_HOME=/usr/local/hadoop/hbase-1.3.0

export PATH=$HBASE_HOME/bin:$PATH 



[b][b]slave1:[/b][/b]

[b][b]


[/b][/b]



[b][b]slave2:
[/b][/b]

[b][b]


[/b][/b]



[b][b]启动顺序:先启动Hadoop->hbase,如果使用自己安装的zookeeper启动顺序是:Hadoop->zookeeper->hbase[/b]
[/b]
停止顺序:hbase->zookeeper->hadoop
hbase只需要启动master机就可以带动其他的机了 ,进入hbase-1.3.0/bin目录下,命令   ./start-hbase.sh   启动之后 jps查看启动进程

master机多出:
HMaster

HRegionServer



slave1和slave2机都多出:
[b][b]HRegionServer[/b][/b]







[b][b]这样hbase就搭建成功了,也可以通过web页面查看,hbase默认端口号为 16010[/b][/b]

[b][b]http://192.168.31.128:16010
[/b][/b]

[b][b]


[/b][/b]



[b][b]以上就是hbase集群搭建的全部内容了![/b][/b]



[b][b]下面做一个简单的hbase建表和添加数据测试[/b][/b]



[b][b]进入hbase的bin目录洗 输入
./
[/b]hbase shell[b] 进入建表界面[/b][/b]

[b][b](有可能第一次输入命令时可能需要等一下才会出现下图信息)
[/b][/b]

[b][b]


[/b][/b]



[b][b]这样就进入了hbase了:[/b][/b]

[b][b]现在创建一个简单的表   建表语句如下:[/b][/b]

[b][b]create '表名','列族'
[/b][/b]

[b][b]create 'testhbase','hbasefamily'
[/b][/b]

[b][b]


[/b][/b]



[b][b]往表里添加数据[/b][/b]

[b][b]put '表名','行数','列族名:列名','列值'[/b][/b]

[b][b]put 'testhbase','001','hbasefamily:test1','hello world1'[/b][/b]

[b][b]put 'testhbase','001','hbasefamily:test2','hello world2'[/b][/b]

[b][b]put 'testhbase','001','hbasefamily:test3','hello world3'[/b][/b]



[b][b]


[/b][/b]



[b][b]注:向表中添加数据,在想HBase的表中添加数据的时候,只能一列一列的添加,不能同时添加多列
[/b][/b]

添加之后  scan '表名'  来查看表中的详细信息

[b][b]scan 'testhbase'
[/b][/b]

[b][b]


[/b][/b]



[b][b]OK,本文章就此结束[/b][/b]



[b]如果此文章有什么不对的地方请路过的大神指出,以免误人子弟[/b]



[b]尊重原创,如要转载请注明出处!!![/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息