• zookeeper集群线上机器置换


      事情的初衷是这样的:线上有一个小的zk集群,三台机器。其中有一台机器过了保期,需要置换。所以需要用一台新的机器来替换掉其中的一个zk节点,但是为了不影响

    线上的服务,所以不能停zk集群。

      这里不将具体的hostname和ip写出来,姑且将原来的三台机器定义为 a、b和c, 现在b过保,用新机器d来替换掉b,zk集群由abc变成acd,下面将整个过程记录如下:

      先说明一下原来的zk的配置是怎样的(只贴出需要改动的地方):

      server.1=a:2182:2183
      server.2=b:2182:2183   ###这个过保啦,需要替换成d服务器
      server.3=c:2182:2183

      1. 先停止b机器上面的zk服务:zkServer.sh stop, 因为现在zk的集群还有过半节点是正常的,所以zk可以正常对外提供服务;

      2. 从b机器上上拷贝zk的安装包到d机器的 /opt/zk 目录下(我这里是直接将b服务器上的zk环境拷贝到了d机器对应的文件夹下面), 然后修改d服务器上面上面zk的配置文

        件zoo.cfg, 将:

        server.1=a:2182:2183

        server.2=b:2182:2183

        server.3=c:2182:2183

        修改为:

        server.1=a:2182:2183

        server.3=c:2182:2183

        server.4=d:2182:2183

       保存退出;

      3. 在d上创建zk的数据保存目录, /data1/zookeeper/data/ 和 /data2/zookeeper/log/, 在/data1/zookeeper/data/ 中创建一个myid文件,里面内容是server.4中的4: echo "4" > myid,

          然后启动zk服务: zkServer.sh start

      4.  等待生成了1到2次快照之后继续进行下面的操作(查看快照的方式: 去 /data1/zookeeper/data/ 目录下查看生成的快照的日期即可.  具体存放数据的目录可能不相同, 要根据具体的

          配置文件来,这些配置在这里不做说明)

      5. 查看ac两台zk中,哪一台是follower,这个步骤会操作是follower的那台机器,这里假设a是follower,对a进行如下操作:修改zk的zoo.conf, 将原来的

        server.1=a:2182:2183

        server.2=b:2182:2183

        server.3=c:2182:2183

        修改为:

        server.1=a:2182:2183

        server.3=c:2182:2183

        server.4=d:2182:2183

      保存退出,然后重启a上面的zk服务;

      6. 现在开始操作c,步骤同上面的步骤5. 操作完成之后,可以观察到d上的zk会变成leader.(myid最大的会成为leader)

      7. 检查每台机器上zk的status是否正常: zkServer.sh status

      步骤完毕。按理说严格按照上面的步骤来操作是不会影响zk对外提供服务的。而且我们也这样正常的置换掉了机器~~~~~。

      下面是几点注意事项:

      1. 操作是要使用对应的账号,不要稀里糊涂搞错了账号

        2. 要注意目录的权限

        3. leader放在最后操作

  • 相关阅读:
    Java FileInputStream与FileReader的区别
    java 保存和读取本地json文件
    java写文件时往末尾追加文件(而不是覆盖原文件),的两种方法总结
    Java魔法堂:注解用法详解——@SuppressWarnings
    使用Restlet Client发送各种Get和Post请求
    postman VS restlet client基本使用
    Java获取请求客户端的真实IP地址
    dom4j解析xml字符串实例
    C++ Boost库简介(一些自己的感受)
    打仗其实最讲成本核算,大炮轰的都是黄金,日军在中国就是不断赔本
  • 原文地址:https://www.cnblogs.com/wuxilc/p/9225085.html
Copyright © 2020-2023  润新知