zoukankan      html  css  js  c++  java
  • Linux安装zookeeper集群

    一.单机部署:

      ①下载、解压

        http://archive.apache.org/dist/zookeeper/

        tar -zxf zookeeper-3.4.10.tar.gz -C /usr/local/install

      ②配置

         在主目录下创建data和logs两个目录用于存储数据和日志:     

            cd /usr/local/install/zookeeper-3.4.10

               mkdir data

               mkdir logs

        conf目录下新建zoo.cfg文件,写入以下内容保存:

            tickTime=2000

            dataDir=/usr/myapp/zookeeper-3.4.10/data

            dataLogDir=/usr/myapp/zookeeper-3.4.10/logs

            clientPort=2181

      ③启动停止

        ./zkServer.sh start 启动

        ./zkServer.sh stop 停止

        ./zkServer.sh restart 重启

        ./zkServer.sh status  查看状态

    二.伪集群模式安装

        这里不做过多解释,有兴趣的朋友可以到网上查阅其它资料

    三.集群安装

      tar -zxf zookeeper-3.4.10.tar.gz

      在zookeeper-3.4.10/conf/

    1.修改zoo_sample.cfg文件为zoo.cfg

    # The number of milliseconds of each tick #心跳检查时间
    
    tickTime=2000
    
    # The number of ticks that the initial
    
    # synchronization phase can take  #组成集群心跳次数
    
    initLimit=10
    
    # The number of ticks that can pass between
    
    # sending a request and getting an acknowledgement
    
    syncLimit=5 #得到响应的最慢心跳次数
    
    # the directory where the snapshot is stored.
    
    # do not use /tmp for storage, /tmp here is just
    
    # example sakes.
    
    dataDir=/usr/myapp/zookeeper-3.4.10/data #zk产生数据保存路径
    
    # the port at which the clients will connect
    
    clientPort=2181 #客户端连接端口

      #集群配置

      server.1=192.168.43.15:2888:3888

      #服务名=主机名或IP:端口1:端口2

      server.2=192.168.43.16:2888:3888

      server.3=192.168.43.17:2888:3888

      #2888:leader 和follower 之间的通信端口

      #3888:当leader宕机后,follower 会通过paxos算法选举出新的leader,即follower之间通信的端口

    2.创建myid文件

      #zoo.cfg的dataDir路径下创建myid文件

        echo 1 > myid #向文件中添加服务名

         分别将zoo.cfg  myid 文件拷贝到其它2台机器上,在其它2台机器上将myid 分别改为 2  3 

     3.启动

       bin/zkServer.sh start       #启动

      bin/zkServer.sh stop        #停止

      bin/zkServer.sh status 查看当前zk节点是leader/follower

      bin/zkCli.sh                      #查看zk节点   

           bin/zkCli.sh -timeout 5000 -server 192.168.1.11:2181/kafka 

      ls /          #查看根目录下的文件

      rmr /storm       #删除根目录下的storm文件夹

      

      #当前zk集群为3台服务时,我们尝试将状态为leader 的服务kill 掉之后,发现zk剩于2台时会及时选举出新的leader,继续对外提供服务,当我们把新的leader 再次kill掉之后,发现仅剩1台的zk是不对外提供服务了。

    集群中只要有半数以上节点live,服务就可以正常提供集群中配置服务器节点数量最好是奇数

     

  • 相关阅读:
    养花
    【bzoj1419】Red is good
    C++模板
    逆元求组合数
    【IOI2000】【洛谷1435】回文字串
    Centos 下启动mysql 报错: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)解决方法
    linux系统下进行安装phpMyAdmin(基于Centos)
    达梦数据的安装(Windows10 、linux环境下、麒麟系统下)
    2020-3-3 链表刷题(203. 移除链表元素)
    2020-02-03 刷题
  • 原文地址:https://www.cnblogs.com/MrRightZhao/p/10970106.html
Copyright © 2011-2022 走看看