`
qindongliang1922
  • 浏览: 2152636 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:116491
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:124723
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:58736
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:70516
社区版块
存档分类
最新评论

图解Hbase之使用外置Zookeeper分布式集群

阅读更多
散仙,在上篇文章,已经介绍了Hbase的完全分布式集群部署,这次要介绍的,也是基于Hbase的完全分布式集群,只不过集群的zookeeper与上次的不同,我们都知道Hbase为了简化集群部署,已经内置了zookeeper,大部分时候使用内置的zookeeper都可以非常方便的部署集群,而这一点与solr中solrcloud的集群部署非常相似,solrcloud也内置了zookeeper了,启动的时候可以由solr负责启动zookeeper,而在Hbase中,则是由Hbase负责启动zookeeper的。

其实,大多数的分布式应用框架,都离不开zookeeper这个统一协作服务,当然,我们也可以不用其内置的 zookeeper,由我们自己来安装维护独立的zookeeper集群,关于外置和内置的zookeeper也算各有利弊吧,散仙在此,就不加以评论了,下面开始进入正题,配置独立的zookeeper集群来管理Hbase。



在这之前,需要注意的是,如果使用的是外置zookeeper那么这个zookeeper版本号,建议跟Hbase里面内置的zookeeper版本保持一致,这样尽可能避免出现一些莫名其妙的错误。总结的步骤,如下图所示:

顺序内容
配置Hbase的hbase-env.sh文件
配置下载的zookeeper3.4.5
分发zookeeper到每个节点上


第一步,配置hbase-env.sh内容截图如下:


第二步,配置zookeeper,修改其config目录下zoo_simple.cfg重命名为zoo.cfg,并在其data目录(自己手动创建)下,新建一个myid文件,server.x后面的x数字一直即可,修改其内容如以下截图:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/root/zookeeper/data
clientPort=2181

server.1=10.2.143.5:2887:3887
server.2=10.2.143.36:2888:3888
server.3=10.2.143.37:2889:3889






第三步,使用scp命令,进行远程拷贝zookeeper到子节点,需要注意的是,zookeeper的配置个数只能是奇数个,一般建议是3或5个比较好,当然你也可以配置更多,来保证集群的稳定性。,截图如下:



最后我们就可以关闭防火墙,来启动集群了,注意集群启动的顺序,先启动hadoop集群,然后到各个节点上启动Zookeeper,最后再启动Hbase集群,启动成功后,jps打印命令如下:


访问Hbase首页Web的截图如下:


使用Java API操作Hbase,示例如下截图:

然后,我们使用Hbase shell在服务器上验证,刚才的建表步骤是否成功,截图如下:




至此,我们已经成功完成,使用外置zookeeper与Hbase的集群。最后注意,停止集群的顺序,先关闭Hbase,然后再关闭zookeeper,最后关闭hadoop,好了,现在,你可以带着你的好奇心,去放心大胆的尝试部署了,加油!










  • 大小: 90.2 KB
  • 大小: 59 KB
  • 大小: 57.2 KB
  • 大小: 36.8 KB
  • 大小: 24.7 KB
  • 大小: 231.2 KB
  • 大小: 211.2 KB
  • 大小: 34.7 KB
1
0
分享到:
评论
1 楼 yancaofei 2013-11-21  
请问下使用外置的Zookeeper与内置相比有什么好处呢?

相关推荐

Global site tag (gtag.js) - Google Analytics