暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

腾讯云分布式数据库TDSQL-单实例zookeeper扩容

云贝学院 2021-03-03
1290

点击上方蓝字关注我们






TDSQL数据库单实例zookeeper扩容



 


         首先,先来介绍一下我做TDSQL数据库zookeeper扩容的思路。我的思路来源于如下这张架构图。

         根据这张架构图,大家可以看出与zookeeper通讯的主要模块有OSS、schedule、kafka、sql引擎(proxy)、mysqlagent。

接下来一一验证一下我的猜测:‍




NO.02

Mysqlagent:



配置文件路径:

/data/tdsql_run/4001/mysqlagent/conf/mysqlagent_4001.xml

Zookeeper相关配置:

    <zookeeper quit="1" iplist="tdsql_host_zk1:2118" timeout="10000" rootdir="/tdsqlzk" >
    <kafka>
    <log name="../log/sys_binlogtokafka_4001.log" log_size="536870912" log_level="2" >
    <kafkazookeeper iplist="tdsql_host_zk1:2118" rootdir="/kafka" >
    <product report="1" debug="generic" batch="10000" retry="3" retrywaitmsec="500" waitacknum="-1" delay_bond="7500" report_schema="0"/>
    </kafka>


    NO.02

    Kafka:


     

    配置文件路径:

    /data/application/kafka/config/server.properties

    Zookeeper相关配置:

     

      zookeeper.connect=tdsql_host_zk1:2118/kafka

       

      NO.02

      oss:



      配置文件路径:

      /data/application/oss/conf/scheduler.xml

      Zookeeper相关配置:

        <zookeeper quit="1" iplist="tdsql_host_zk1:2118" timeout="10000" rootdir="/tdsqlzk"  cluster="zk-gz-online" safeacl="1" >

         

        NO.02

        Sechduler:


         

        配置文件路径:

        /data/application/scheduler/conf/scheduler.xml

        Zookeeper相关配置:

          <zookeeper quiet="1" iplist="tdsql_host_zk1:2118" timeout="10000" rootdir="/tdsqlzk"  safeacl="true" >
          <kafkazk iplist="tdsql_host_zk1:2118" rootdir="/kafka" >

          以上是我发现有zookeeper配置的模块配置文件。


           


          接下来开始升级单机模式zookeeper变成3节点集群

          • 步骤一:修改三台服务器的/etc/hosts

            172.21.100.140  tdsql_host_zk1

            #新增

              172.21.100.141  tdsql_host_zk2
              172.21.100.142 tdsql_host_zk3
              • 步骤二:修改zookeeper配置文件

              在第一个节点操作:

                vi data/application/zookeeper/conf/zoo.cfg

                #增加如下内容

                  server.2=tdsql_host_zk2:2338:2558  #其中2是节点myid ,tdsql_host_zk2是节点域名要一一对应
                  server.3=tdsql_host_zk3:2338:2558
                  • 步骤三:copy zookeeper目录到其它两个节点下

                    scp -r -p /data/application/zookeeper 172.21.100.141:/data/application/
                    scp -r -p /data/application/zookeeper 172.21.100.142:/data/application/
                    • 步骤四:修改myid

                    二节点:

                      vi /data/application/zookeeper/data/myid  #修改myid内容为2

                      三节点:

                        vi /data/application/zookeeper/data/myid  #修改myid内容为3
                        • 步骤五:重启zookeeper

                        注意重启顺序为

                          1 => 2 =>3
                          sh /data/application/zookeeper/bin/zkServer.sh stop
                          sh /data/application/zookeeper/bin/zkServer.sh start ../conf/zoo.cfg

                          当启动第二个节点以后可以通过命令查看zookeeper状态

                            sh /data/application/zookeeper/bin/zkServer.sh status
                            • 步骤六:修改oss、kafka、mysqlagent、shechduler配置文件

                            添加新加入的zookeeper节点到配置文件

                              tdsql_host_zk2:2118,tdsql_host_zk3:2118
                              • 步骤七:重启oss服务

                              先重启一台,在控制台查看重启模块的等状态正常之后在重启另一台(此步骤是否需要还等待后续验证)

                              • 步骤八:添加新节点到集群

                              集群管理 =》集群设置 =》点击集群名称进入设置 =》修改配置 =》zk服务列表添加新添加的zk节点

                              • 步骤九:consumer

                              如果之前consumer配置的是单节zookeeper启动需要修改成zookeeper集群方式启动





                              THE END



                              *禁止转载,可转发(转发原创文章请注明出处)


                              点击左下角阅读原文

                              文章转载自云贝学院,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                              评论