1下载Zookeeper

http://mirror.bit.edu.cn/apache/zookeeper/

zookeeper新增集群节点 要如何操作 zookeeper集群启动_zookeeper

http://mirror.bit.edu.cn/apache/zookeeper/stable/wwget

zookeeper新增集群节点 要如何操作 zookeeper集群启动_apache_02

wget http://mirror.bit.edu.cn/apache/zookeeper/stable/zookeeper-3.4.12.tar.gz

zookeeper新增集群节点 要如何操作 zookeeper集群启动_重启_03

tar zxvfzookeeper-3.4.12.tar.gz

mv zookeeper-3.4.12 zookeeper

cd zookeeper

ll

zookeeper新增集群节点 要如何操作 zookeeper集群启动_重启_04

cpzookeeper-3.4.12/conf/zoo_sample.cfg zookeeper-3.4.12/conf/zoo.cfg

cd zookeeper-3.4.12/bin/

./zkServer.sh start

zookeeper新增集群节点 要如何操作 zookeeper集群启动_zookeeper_05

执行命令查看zookeeper状态:

./zkServer.sh status

zookeeper新增集群节点 要如何操作 zookeeper集群启动_zookeeper_06

3将ZooKeeper设置为开机启动(可选)

3.1在init.d目录下新建脚本文件

 进入到/etc/rc.d/init.d目录下,命令是:

cd    /etc/rc.d/init.d

新建一个名为zookeeper的文件,命令是:

touch    zookeeper


zookeeper新增集群节点 要如何操作 zookeeper集群启动_zookeeper_07


脚本内容如下:

#!/bin/bash 

#chkconfig:2345 10 90 

#description:service zookeeper 

export    JAVA_HOME=//usr/local/java/jdk1.8.0_171

export     ZOO_LOG_DIR=/opt/zookeeper/log

ZOOKEEPER_HOME=/opt/zookeeper/zookeeper-3.4.12

case  "$1"   in 

     start)  su  root  ${ZOOKEEPER_HOME}/bin/zkServer.sh  start;; 

     start-foreground)  su  root ${ZOOKEEPER_HOME}/bin/zkServer.sh   start-foreground;; 

     stop)  su  root  ${ZOOKEEPER_HOME}/bin/zkServer.sh  stop;; 

     status)  su root  ${ZOOKEEPER_HOME}/bin/zkServer.sh    status;; 

     restart)  su root   ${ZOOKEEPER_HOME}/bin/zkServer.sh   restart;; 

     upgrade)su root  ${ZOOKEEPER_HOME}/bin/zkServer.sh  upgrade;; 

     print-cmd)su root  ${ZOOKEEPER_HOME}/bin/zkServer.sh  print-cmd;; 

     *)  echo "requirestart|start-foreground|stop|status|restart|print-cmd";; 

esac

3.2 执行一系列命令

  为新建的/etc/rc.d/init.d/zookeeper文件添加可执行权限,命令是:

   chmod  +x /etc/rc.d/init.d/zookeeper

    把zookeeper这个脚本添加到开机启动项里面,命令是:

    chkconfig  --add  zookeeper

如果想看看是否添加成功,命令是:

    chkconfig  --list

如图:

zookeeper新增集群节点 要如何操作 zookeeper集群启动_重启_08

zookeeper新增集群节点 要如何操作 zookeeper集群启动_重启_09

查看相关操作如图

zookeeper新增集群节点 要如何操作 zookeeper集群启动_apache_10

3.3执行测试看是否开机启动

使用命令重启机器,命令是: reboot

方法一

查看zookeeper的状态 重启机器,然后不手动启动zookeeper的情况下,执行命令:

       service  zookeeper  status

zookeeper新增集群节点 要如何操作 zookeeper集群启动_apache_11

方法二

   查看2181端口是否启用,执行命令:  lsof  -i:2181

zookeeper新增集群节点 要如何操作 zookeeper集群启动_zookeeper_12

方法三

   查看网络状态,执行命令: netstat   -lntup

zookeeper新增集群节点 要如何操作 zookeeper集群启动_apache_13

查看zookeeper服务的状态

zookeeper新增集群节点 要如何操作 zookeeper集群启动_zookeeper_14

上面是讲述的如何搭建一个单机版的zookeeper注册中心,下面我们开始讲解搭建zookeeper集群

首选我们准备了两台机器,内网IP如下:

192.168.0.12 master

192.168.1.13 slave1

下面我们修改hosts文件添加映射,修改主机名 vim  /etc/hosts ,在hosts文件中添加一下两项

zookeeper新增集群节点 要如何操作 zookeeper集群启动_重启_15

进入zookeeper目录,创建文件夹data,进入data,创建文件myid,20和21里面的myid分别写入 1和2
进入conf目录,有一份配置文件模板,复制一份,名称为zoo.cfg,修改zoo.cfg,内容如下
dataDir=/opt/soft/zookeeper-3.4.5/data (刚创建的data目录)
clientPort=2181 
initLimit=10 
syncLimit=5 
tickTime=2000 
server.1=master:2888:3888
server.2=slave1:2888:3888 
进入到ZooKeeper的客户端命令行下面,执行  ls  /,会输出 [zookeeper],这时候创建一个节点 create  /test,然后再查看 get /test,打印一下信息

关闭防火墙(如果没关闭防火墙,在启动之后,会一直报错);
执行命令:bin/zkServer.sh start conf/zoo.cfg,分别启动ZooKeeper
然后:tail -300f zookeeper.out 查看输出的内容,如果没报错,说明启动成功;
再接下来查看集群是搭建成功:
执行:bin/zkCli.sh -server master:2181 (master和slave1,随便选择一个)

进入到ZooKeeper的客户端命令行下面,执行  ls  /,会输出 [zookeeper],这时候创建一个节点 create  /test,然后再查看 get /test,打印一下信息

zookeeper新增集群节点 要如何操作 zookeeper集群启动_zookeeper_16

再切换到另外一个IP,在执行执行:bin/zkCli.sh -server master:2181 ,再  ls  / 查看,就可以看到刚刚在另外一台机器上创建的节点test。
查看zookeeper进程状态
  bin/zkServer.sh  status
     Using config: /opt/soft/zookeeper-3.4.8/bin/../conf/zoo.cfg
     Mode: follower   //角色
  jps
     3220 Jps 
     2813 QuorumPeerMain   //zookeeper进程名
以上都通过,说明ZooKeeper集群搭建成功!