zookeeper简单搭建(及代码)

原创 2015年07月09日 15:09:22

1、安装zookeeper
zookeeper安装环境为linux,下载的版本为:http://www.apache.org/dist/zookeeper/zookeeper-3.3.6/zookeeper-3.3.6.tar.gz
zookeeper的安装基本上可以按照 http://hadoop.apache.org/zookeeper/docs/current/ zookeeperStarted.html 这个页面上的步骤完成安装,这里主要介绍下部署一个集群的步骤,因为这个官方页面似乎讲得并不是非常详细(Running Replicated Zookeeper)。

由于手头机器不足,所以在一台机器上部署了3个server,如果你手头也比较紧,也可以这么做。那么我建了3个文件夹,如下
server1 server2 server3

然后每个文件夹里面解压一个zookeeper的下载包,并且还建了几个文件夹,总体结构如下,最后那个是下载过来压缩包的解压文件
data dataLog logs zookeeper-3.3.2

那么首先进入data目录,创建一个myid的文件,里面写入一个数字,比如我这个是server1,那么就写一个1,server2对应myid文件就写入2,server3对应myid文件就写个3

然后进入zookeeper-3.3.2/conf目录,那么如果是刚下过来,会有3个文件,configuration.xml, log4j.properties,zoo_sample.cfg,这3个文件我们首先要做的就是在这个目录创建一个zoo.cfg的配置文件,当然你可以把zoo_sample.cfg文件改成zoo.cfg,配置的内容如下所示:
tickTime=2000
initLimit=5
syncLimit=2
dataDir=xxxx/zookeeper/server1/data
dataLogDir=xxx/zookeeper/server1/dataLog
clientPort=2181
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890

2、启动zookeeper服务端
进入到bin目录中,执行命令,./zkServer.sh start启动,(也可以使用./zkServer.sh start zoo.cfg来指定配置文件进行启动)

3、启动客户端
./zkCli.sh –server 127.0.0.1:2181,这个实际上是简单的模拟,不用启动,直接在远程用java等来连接执行也是一样的。

4、java连接zookeeper
使用到两个java包,一个是log4j,一个是zookeeper的jar包。其中zookeeper的jar包在这里可以下载http://www.java2s.com/Code/Jar/z/Downloadzookeeperjar.htm
log4j的java包任意下载一个就行了,我工程直接利用maven下载的。

import java.io.IOException;

import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.KeeperException;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooDefs.Ids;
import org.apache.zookeeper.ZooKeeper;


public class Main {

    public static void main(String[] args) throws IOException, KeeperException, InterruptedException {
        // TODO Auto-generated method stub
        ZooKeeper zk = new ZooKeeper("10.218.137.73:2181", 500000,new Watcher() {
               // 监控所有被触发的事件
                 public void process(WatchedEvent event) {
               //dosomething
               }
          });

        //创建一个节点root,数据是mydata,不进行ACL权限控制,节点为永久性的(即客户端shutdown了也不会消失)
        zk.create("/jianghuiwen", "mydata".getBytes(),Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
    }

}

上面一段是代码,执行完毕后,到服务端利用命令查看,可以发现已经生成了节点。
这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

zookeeper集群简单搭建

0、准备 到官网http://zookeeper.apache.org/下载合适自己的版本到/home下,然后解压,笔者使用的是3.4的版本 1、配置环境变量 vim ~/.bash_profil...
  • nejore
  • nejore
  • 2016年11月22日 22:41
  • 73

Zookeeper伪分布集群搭建及简单使用演示

按理说zookeeper至少要有三台主机才能玩,奈何我没用虚拟机也没有那么多主机,只能用伪分布式玩玩了。...
  • Dr_Guo
  • Dr_Guo
  • 2016年03月20日 19:37
  • 970

基于maven+dubbo+spring+zookeeper的简单项目搭建

Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。 Dubbo[]是一个分布式服务框架,...

zookeeper Eclipse 开发环境搭建及简单示例

zookeeper Eclipse 开发环境搭建及简单示例

简单搭建kafka + zookeeper,附简单Java生产和消费客户端

首先说明一下这是一篇入门实战操作文章,本人亦是刚刚开始接触kafka,看了网上很多很多的文章,觉得自己也应当在搭建平台的过程中留下一些痕迹,总结一下遇到的问题和解决方法。 这篇文章主要是讲从零开始把服...

dubbo+shiro+ssm框架+zookeeper简单的demo

  • 2017年11月13日 17:07
  • 3.22MB
  • 下载

分布式系统中利用zookeeper集群实现微服务主备切换代码片段(C语言版)

分布式系统中,zookeeper可以应用到多种场景,集群管理,配置管理,服务发现,分布式锁,命名服务等。这里主要提供集群管理中主备切换的代码片段。...

dubbo+zookeeper简单示例.rar

  • 2017年02月17日 17:58
  • 30KB
  • 下载

Dubbo+zookeeper 入门简单实例

  • 2017年03月23日 11:53
  • 15.6MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:zookeeper简单搭建(及代码)
举报原因:
原因补充:

(最多只允许输入30个字)