efn阿克说 发表于 2015-11-21 14:36:15

linux系统下安装zookeeper集群

  1.概述
  操作系统为3台ubuntu虚拟机,其ip地址分别为
  ubuntu1192.168.1.109
  ubuntu2192.168.1.108
  ubuntu3192.168.1.110
  jdk版本为jdk7
  2.下载解压(三台机器都执行一遍)
  2.1将zookeeper解压到/usr/local/zookeeper-3.4.5目录下
  2.2以下命令都是在/usr/local/zookeeper-3.4.5目录下执行的
  #从zookeeper的sample中复制一个zk的配置文件
  root@ubuntu-2:/usr/local/zookeeper-3.4.5# cp conf/zoo_sample.cfg conf/zoo.cfg
  #修改一下这个配置文件,让他支持集群
  root@ubuntu-2:/usr/local/zookeeper-3.4.5# vi conf/zoo.cfg
  #修改一下存储数据的目录,给出的模板里放在/tmp/zookeeper(如果/var/lib/zookeeper目录不存在则需要自行创建)
  dataDir=/var/lib/zookeeper/
  #在这个文件的末尾添加如下配置(遵循server.id=host:port:port的格式):
  server.1=192.168.1.109:2888:3888

  server.2=192.168.1.108:2888:3888
  server.3=192.168.1.110:2888:3888
  保存配置退出vi编辑器
  2.3切换到/var/lib/zookeeper目录下(这个目录即上面的zoo.cfg中配置的dataDir目录)新建一个myid的文本文件,编辑其内容如下
  在server.1=192.168.1.109这台机器上设置1
  在server.2=192.168.1.108这台机器上设置2
  在server.3=192.168.1.110这台机器上设置3
  设置的规则就是在zoo.conf文件指定的server.id,zookeeper用这个数字来标识集群中的哪一个节点
  3.启动
  切换到zookeeper安装目录的bin下
  root@ubuntu-3:/usr/local/zookeeper-3.4.5/bin# sh ./zkServer.sh start
  4.集群验证
  在三台机器上分别使用zkServer.sh status命令查看当前服务状态
  server3输出:
  root@ubuntu-3:/usr/local/zookeeper-3.4.5/bin# ./zkServer.sh status
      JMX enabled by default
      Using config: /usr/local/zookeeper-3.4.5/bin/../conf/zoo.cfg
      Mode: leader
      root@ubuntu-3:/usr/local/zookeeper-3.4.5/bin#
  server2输出:
  root@ubuntu-2:/usr/local/zookeeper-3.4.5/bin# ./zkServer.sh status
  JMX enabled by default
  Using config: /usr/local/zookeeper-3.4.5/bin/../conf/zoo.cfg
  Mode: follower
  root@ubuntu-2:/usr/local/zookeeper-3.4.5/bin#
  server1输出:
  root@ubuntu-1:/usr/local/zookeeper-3.4.5/bin# sh ./zkServer.sh status
  JMX enabled by default
  Using config: /usr/local/zookeeper-3.4.5/bin/../conf/zoo.cfg
  Mode: follower
  root@ubuntu-1:/usr/local/zookeeper-3.4.5/bin#
       注意:实际的输出结果leader和follower可能会分步的节点不同,但是只会有一个leader,另外两个节点是folower
页: [1]
查看完整版本: linux系统下安装zookeeper集群