您的位置:首页 > 运维架构 > Linux

linux上Zookeeper集群安装及监控

2016-06-24 10:02 537 查看
ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

1.安装jdk

步骤省略,不清楚的百度一下。

2.配置2台ZooKeeper服务集群

准备环境:2台linux服务 192.168.36.91 和192.168.36.127

在192.168.36.91 上创建用户ZooKeeper ,并切换该用户目录下:

(1)下载:wget http://apache.fayea.com/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
解压 tar -zxvf zookeeper-3.4.6.tar.gz

(2)创建数据、日志目录

cd /home/zookeeper/zookeeper-3.4.6

mkdir data

mkdir logs

(3)修改配置文件

cd conf/

cp zoo_sample.cfg zoo.cfg

vi zoo.cfg

配置如下:

[plain] view
plain copy

print?





tickTime=2000

initLimit=10

syncLimit=5

#数据目录

dataDir=/home/zookeeper/zookeeper-3.4.6/data

#日志目录

dataLogDir=/home/zookeeper/zookeeper-3.4.6/logs

clientPort=2181

#集群配置

server.1=192.168.36.91:2888:3888

server.2=192.168.36.127:2888:3888

其他配置请参考官网

(4)设置myid

在我们创建的data目录下面,创建一个myid文件,里面内容为一个数字,用来标识当前主机,conf/zoo.cfg文件中配置的server.X中X为什么数字,则myid文件中就输入这个数字

echo "1" > /home/zookeeper/zookeeper-3.4.6/data/myid

另台服务192.168.36.127安装类似,不同的是 myid输入的为2

(5)启动 、关闭、查看状态

./bin/zkServer.sh start

./bin/zkServer.sh stop

./bin/zkServer.sh status

查看服务注册:

命令行: (详情参考: http://zookeeper.apache.org/doc/r3.3.3/zookeeperAdmin.html)
telnet 192.168.36.91 2181

dump

或者 echo dump | nc 192.168.36.91 2181

(6)遇见问题

启动后无法连接,telnet 192.168.36.127 2181 提示:“no route to host”(安装的是虚拟机,使用桥接方式),路由不可达,使用:iptables -F 清楚路由规则或关闭iptables(命令:service iptables stop)

3、配置监控

考虑使用taobao的taokeeper

https://github.com/alibaba/taokeeper

https://github.com/alibaba/taokeeper/downloads

使用参考:

http://jm-blog.aliapp.com/?p=1450

http://sofar.blog.51cto.com/353572/1298468

4、管理工具

(1)zookeeper-web - 在线 zookeeper管理工具

zookeeper-web是一个简单的、方便的zookeeper管理工具。我厌烦了通过命令行来管理zookeeper,同时需要一个我熟悉的框架来开发的工具。借鉴了github上一个用python写的管理工具(抱歉,我后来没有找到这个项目的地址)。
使用主流的springmvc、freemarker、bootstrap和zkclient来开发。
<img src="http://img.blog.csdn.net/20160624100451621?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />


地址:https://git.oschina.net/crystony/zookeeper-web

(2)node-zk-browser 使用node.js开发的web管理界面

地址:https://github.com/killme2008/node-zk-browser

安装:http://www.rigongyizu.com/node-zookeeper-browser-install/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息