hbase完全分布式安装与配置

HBase完全分布式安装教程
本文详细介绍了如何在两个节点上进行HBase的完全分布式安装,包括安装Hadoop、Zookeeper,配置HBase,以及验证安装成功的过程。通过提供详细的步骤和注意事项,帮助读者轻松实现HBase的分布式部署。
1.环境说明

hbase 完全分布式安装,2个节点,分别为:
192.168.1.67 MasterServer (作为hbase的master和regionserver节点[可选])
192.168.1.241 SlaveServer  (作为hbase的regionserver节点)

2.先决条件
安装hadoop,具体安装见:http://blog.youkuaiyun.com/hwwn2009/article/details/39889465

安装zookeeper,因为要使用独立的zookeeper集群,具体安装见:http://blog.youkuaiyun.com/hwwn2009/article/details/40000881


3.安装Hbase

1)下载,注意要与hadoop版本兼容,且选择稳定版较好

[plain]  view plain copy
  1. wget http://mirrors.hust.edu.cn/apache/hbase/hbase-0.98.5/hbase-0.98.5-hadoop2-bin.tar.gz  
2)解压

[plain]  view plain copy
  1. tar -zxvf hbase-0.98.5-hadoop2-bin.tar.gz   
3)修改conf/hbase-site.xml文件

[plain]  view plain copy
  1. <property>  
  2.   <name>hbase.rootdir</name>  
  3.   <value>hdfs://MasterServer:9000/hbase</value>  
  4.  </property>  
  5.  <property>  
  6.    <name>hbase.cluster.distributed</name>  
  7.    <value>true</value>   
  8.  </property>  
  9.  <property>  
  10.    <name>hbase.master</name>  
  11.    <value>hdfs://MasterServer:60000</value>  
  12.  </property>  
  13.  <property>  
  14.    <name>hbase.zookeeper.quorum</name>  
  15.    <value>MasterServer,SlaveServer</value>   
  16.  </property>  
4)修改conf/regionservers文件

[plain]  view plain copy
  1. MasterServer  
  2. SlaveServer  
注:如果不想将MasterServer作为HRegionServer,就去掉 MasterServer

5)修改conf/hbase-env.sh文件

[plain]  view plain copy
  1. export JAVA_HOME=/usr/lib/jvm/jdk1.6/jdk1.6.0_27  
  2. export HBASE_MANAGES_ZK=false  #启动指定的ZooKeeper,而非自带的ZooKeeper。  
  3. export HBASE_HOME=/home/hadooper/hadoop/hbase-0.98.5  
  4. export HADOOP_HOME=/home/hadooper/hadoop/hadoop-2.5.1  


4.将配置好的hbase复制到其它节点

[plain]  view plain copy
  1. scp -r hbase-0.98.5 hadooper@SlaveServer:~/hadoop/  

5.修改各节点Hadoop的hdfs-site.xml文件

[plain]  view plain copy
  1. <property>   
  2.     <name>dfs.datanode.max.xcievers</name>   
  3.     <value>4096</value>   
  4. </property>  
注:该参数限制了datanode所允许同时执行的发送和接受任务的数量,缺省为256。


6.测试

启动顺序是:Hadoop->zookeeper->hbase;停止顺序:hbase->zookeeper->hadoop。
1)启动hbase

[plain]  view plain copy
  1. bin/start-hbase.sh  
2)jps查看进程

①主节点MasterServer

[plain]  view plain copy
  1. 8428 JobHistoryServer  
  2. 4048 QuorumPeerMain  
  3. 18234 Jps  
  4. 15482 HMaster  
  5. 30357 NameNode  
  6. 15632 HRegionServer  
  7. 30717 ResourceManager  
  8. 30563 SecondaryNameNode  

②从节点SlaveServer

[plain]  view plain copy
  1. 9340 QuorumPeerMain  
  2. 11991 HRegionServer  
  3. 19375 DataNode  
  4. 13706 Jps  
  5. 19491 NodeManager  

3)进入hbase shell

[plain]  view plain copy
  1. bin/hbase shell  
[plain]  view plain copy
  1. HBase Shell; enter 'help<RETURN>' for list of supported commands.  
  2. Type "exit<RETURN>" to leave the HBase Shell  
  3. Version 0.98.5-hadoop2, rUnknown, Mon Aug  4 23:58:06 PDT 2014  
4)查看集群状态

[plain]  view plain copy
  1. hbase(main):001:0> status  
[plain]  view plain copy
  1. 2 servers, 0 dead, 1.5000 average load  

5)建表测试

[plain]  view plain copy
  1. hbase(main):002:0> create 'test','id'  
  2. 0 row(s) in 1.3530 seconds  
  3.   
  4. => Hbase::Table - test  
[plain]  view plain copy
  1. hbase(main):003:0> list  
  2. TABLE                                                                                               
  3. member                                                                                              
  4. test                                                                                                
  5. 2 row(s) in 0.0430 seconds  
  6.   
  7. => ["member", "test"]  
6)网页查看集群状态


如果以上都没问题,恭喜,安装配置完成。

转载请注明:http://blog.youkuaiyun.com/hwwn2009/article/details/40015907


7.遇到的问题

1)Q:从节点jps时,看不到HRegionServer,且status时,显示只有一个servers:1 servers。即从节点的hbase没有启动起来。

A:查看log日志

[plain]  view plain copy
  1. 2014-10-12 14:29:38,147 WARN  [regionserver60020] zookeeper.RecoverableZooKeeper: Node /hbase/rs/SlaveServer,60020,1413095376898 already deleted, retry=false  
  2. 2014-10-12 14:29:38,147 WARN  [regionserver60020] regionserver.HRegionServer: Failed deleting my ephemeral node  
  3. org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /hbase/rs/SlaveServer,60020,1413095376898  
  4.     at org.apache.zookeeper.KeeperException.create(KeeperException.java:111)  
  5.     at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)  
  6.     at org.apache.zookeeper.ZooKeeper.delete(ZooKeeper.java:873)  
  7.     at org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.delete(RecoverableZooKeeper.java:156)  
  8.     at org.apache.hadoop.hbase.zookeeper.ZKUtil.deleteNode(ZKUtil.java:1273)  
  9.     at org.apache.hadoop.hbase.zookeeper.ZKUtil.deleteNode(ZKUtil.java:1262)  
  10.     at org.apache.hadoop.hbase.regionserver.HRegionServer.deleteMyEphemeralNode(HRegionServer.java:1298)  
  11.     at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:1012)  
  12.     at java.lang.Thread.run(Thread.java:662)  
  13. 2014-10-12 14:29:38,158 INFO  [regionserver60020] zookeeper.ZooKeeper: Session: 0x249020a2cfd0014 closed  
  14. 2014-10-12 14:29:38,158 INFO  [regionserver60020-EventThread] zookeeper.ClientCnxn: EventThread shut down  
  15. 2014-10-12 14:29:38,158 INFO  [regionserver60020] regionserver.HRegionServer: stopping server null; zookeeper connection closed.  
  16. 2014-10-12 14:29:38,158 INFO  [regionserver60020] regionserver.HRegionServer: regionserver60020 exiting  
  17. 2014-10-12 14:29:38,158 ERROR [main] regionserver.HRegionServerCommandLine: Region server exiting  
  18. java.lang.RuntimeException: HRegionServer Aborted  
  19.     at org.apache.hadoop.hbase.regionserver.HRegionServerCommandLine.start(HRegionServerCommandLine.java:66)  
  20.     at org.apache.hadoop.hbase.regionserver.HRegionServerCommandLine.run(HRegionServerCommandLine.java:85)  
  21.     at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)  
  22.     at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:126)  
  23.     at org.apache.hadoop.hbase.regionserver.HRegionServer.main(HRegionServer.java:2422)  
  24. 2014-10-12 14:29:38,160 INFO  [Thread-9] regionserver.ShutdownHook: Shutdown hook starting; hbase.shutdown.hook=true; fsShutdownHook=org.apache.hadoop.fs.FileSystem$Cache$ClientFinalizer@8d5aad  
  25. 2014-10-12 14:29:38,160 INFO  [Thread-9] regionserver.ShutdownHook: Starting fs shutdown hook thread.  
  26. 2014-10-12 14:29:38,160 INFO  [Thread-9] regionserver.ShutdownHook: Shutdown hook finished.  
由于集群时间未同步,造成从节点没能启动。

在每个节点上运行ntp即可

[plain]  view plain copy
  1. ntpdate asia.pool.ntp.org  
也可永久改变,见:http://jingyan.baidu.com/article/48206aeae2e919216ad6b334.html

2)Q:进入hbase shell后,提示

[plain]  view plain copy
  1. SLF4J: Class path contains multiple SLF4J bindings.  
  2. SLF4J: Found binding in [jar:file:/usr/hbase/lib/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]  
  3. SLF4J: Found binding in [jar:file:/usr/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]  
  4. SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.  
A:发生jar包冲突,删除hbase中的即可

[plain]  view plain copy
  1. rm lib/slf4j-log4j12-1.6.4.jar  
转载请注明: http://blog.youkuaiyun.com/hwwn2009/article/details/40015907
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值