接上一篇:企业实战_18_MyCat_ZK集群安装部署
https://gblfy.blog.csdn.net/article/details/100075631

文章目录

  • 一、初始化集群中的数据
    • 1. 配置复制
    • 2. 初始化zookeeper集群中的数据
  • 二、验证数据是否被初始化到集群中
    • 2.1. 进入mycat01服务节点
    • 2.2. 使用ls命令查看当前节点
    • 2.3. 进入zk node1服务节点
    • 2.4. 验证数据是否已同步zk02
    • 2.5. 使用ls命令验证信息
  • 三、配置mycat支持zookeeper启动
    • 3.1. mycat节点01配置修改
    • 3.2. mycat节点02
    • 3.3. 重启mycat
    • 3.4. 登录mycat节点02
    • 3.5. 配置数据验证

init_zk_data.sh脚本,这个脚本的作用就是向zookeeper集群中初始化mycat配置的,关于脚本呢、通过读取zkconf目录下mycat的配置文件,把它初始化到zookeeper集群中。

一、初始化集群中的数据
1. 配置复制
#进入conf目录
cd /app/mycat/conf/#将重要的配置文件,复制到zkconf目录下面
cp server.xml schema.xml rule.xml sequence_db_conf.properties zkconf/

2. 初始化zookeeper集群中的数据
#进入mycat的bin目录下面
cd /app/mycat/bin/#执行初始化脚本
./init_zk_data.sh

注:当看到INFO Done时,说明已经初始化完成了

[root@node1 bin]# ./init_zk_data.sh
o2021-07-14 08:10:03 INFO JAVA_CMD=java
o2021-07-14 08:10:03 INFO Start to initialize /mycat of ZooKeeper
o2021-07-14 08:10:07 INFO Done

二、验证数据是否被初始化到集群中
2.1. 进入mycat01服务节点
# 进入zk的bin目录
cd /app/zookeeper-3.4.11/bin/#使用zk客户端,登录到zk当前节点中
./zkCli.sh

2.2. 使用ls命令查看当前节点

使用ls命令查看当前节点下有什么节点

[zk: localhost:2181(CONNECTED) 1] ls /mycat
[mycat-cluster-1]
[zk: localhost:2181(CONNECTED) 2] ls /mycat/mycat-cluster-1
[schema, server, rules, cache, sequences, line]# 在/mycat/mycat-cluster-1节点下有4个配置节点,在schema配置节点下面有3个标签
[zk: localhost:2181(CONNECTED) 3] ls /mycat/mycat-cluster-1/schema
[schema, dataNode, dataHost]# 使用`get /mycat/mycat-cluster-1/schema/dataHost`查看具体节点下的配置信息
[zk: localhost:2181(CONNECTED) 4] get /mycat/mycat-cluster-1/schema/dataHost
[{"balance":3,"maxCon":1000,"minCon":10,"name":"mysql92101","writeType":0,"switchType":1,"dbType":"mysql","dbDriver":"native","heartbeat":"select user()","writeHost":[{"host":"192.168.92.101","url":"192.168.92.101:3306","password":"123456","user":"im_mycat"}]},{"balance":3,"maxCon":1000,"minCon":10,"name":"mysql92102","writeType":0,"switchType":1,"dbType":"mysql","dbDriver":"native","heartbeat":"select user()","writeHost":[{"host":"192.168.92.102","url":"192.168.92.102:3306","password":"123456","user":"im_mycat"}]},{"balance":3,"maxCon":1000,"minCon":10,"name":"mysql92103","writeType":0,"switchType":1,"dbType":"mysql","dbDriver":"native","heartbeat":"select user()","writeHost":[{"host":"192.168.92.103","url":"192.168.92.103:3306","password":"123456","user":"im_mycat"}]},{"balance":3,"maxCon":1000,"minCon":10,"name":"mysql92104","writeType":0,"switchType":1,"dbType":"mysql","dbDriver":"native","heartbeat":"select user()","writeHost":[{"host":"192.168.92.104","url":"192.168.92.104:3306","password":"123456","user":"im_mycat"}]}]
cZxid = 0x100000018
ctime = Wed Jul 14 08:05:53 CST 2021
mZxid = 0x10000003d
mtime = Wed Jul 14 08:10:06 CST 2021
pZxid = 0x100000018
cversion = 0
dataVersion = 2
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 1041
numChildren = 0
[zk: localhost:2181(CONNECTED) 5]
2.3. 进入zk node1服务节点
# 进入zk的bin目录
cd /app/zookeeper-3.4.11/bin/
#使用zk客户端,登录到zk当前节点中
./zkCli.sh

2.4. 验证数据是否已同步zk02

进入node2服务节点,

# 进入zk的bin目录
cd /app/zookeeper-3.4.11/bin/#使用zk客户端,登录到zk当前节点中
./zkCli.sh
2.5. 使用ls命令验证信息
[zk: localhost:2181(CONNECTED) 0] ls /mycat/mycat-cluster-1
[schema, server, rules, cache, sequences, line]
[zk: localhost:2181(CONNECTED) 1] get /mycat/mycat-cluster-1/schema/dataHost
[{"balance":3,"maxCon":1000,"minCon":10,"name":"mysql92101","writeType":0,"switchType":1,"dbType":"mysql","dbDriver":"native","heartbeat":"select user()","writeHost":[{"host":"192.168.92.101","url":"192.168.92.101:3306","password":"123456","user":"im_mycat"}]},
{"balance":3,"maxCon":1000,"minCon":10,"name":"mysql92102","writeType":0,"switchType":1,"dbType":"mysql","dbDriver":"native","heartbeat":"select user()","writeHost":[{"host":"192.168.92.102","url":"192.168.92.102:3306","password":"123456","user":"im_mycat"}]},
{"balance":3,"maxCon":1000,"minCon":10,"name":"mysql92103","writeType":0,"switchType":1,"dbType":"mysql","dbDriver":"native","heartbeat":"select user()","writeHost":[{"host":"192.168.92.103","url":"192.168.92.103:3306","password":"123456","user":"im_mycat"}]},
{"balance":3,"maxCon":1000,"minCon":10,"name":"mysql92104","writeType":0,"switchType":1,"dbType":"mysql","dbDriver":"native","heartbeat":"select user()","writeHost":[{"host":"192.168.92.104","url":"192.168.92.104:3306","password":"123456","user":"im_mycat"}]}]cZxid = 0x100000018
ctime = Wed Jul 14 08:05:53 CST 2021
mZxid = 0x10000003d
mtime = Wed Jul 14 08:10:06 CST 2021
pZxid = 0x100000018
cversion = 0
dataVersion = 2
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 1041
numChildren = 0
[zk: localhost:2181(CONNECTED) 2]


从图中可以看出3个zookeeper信息数据已经同步过来了
mycat配置文件到zookeeper集群的同步

三、配置mycat支持zookeeper启动

通过zookeeper的配置文件启动mycat

3.1. mycat节点01配置修改
#进入mycat的安装目录
cd /app/mycat/conf/#编辑 myid.properties配置文件#这个文件配置了mycat通过zookeeper的节点来获取mycat的配置信息vim myid.properties

修改后:


#是否通过zookeeper启动 true是 false 否,通过zk读取配置文件
loadZk=true
# zookeeper的url和端口
zkURL=192.168.92.101:2181,192.168.92.102:2181,192.168.92.103:2181
#mycat在zookeeper中的节点,这个可以通过登录zkCli.sh来查看
clusterId=mycat-cluster-1
#mycat集群中实例的id,id的值不能重复
myid=mycat_01
#mycat有几个节点
clusterSize=2
#mycat集群中节点的标识名
clusterNodes=mycat_01,mycat_04
#server  booster  ;   booster install on db same server,will reset all minCon to 2
type=server
boosterDataHosts=dataHost1

3.2. mycat节点02
#进入mycat的安装目录
cd /app/mycat/conf/
#编辑 myid.properties配置文件#这个文件配置了mycat通过zookeeper的节点来获取mycat的配置信息vim myid.properties

修改后:

#是否通过zookeeper启动 true是 false 否,通过zk读取配置文件
loadZk=true
# zookeeper的url和端口
zkURL=192.168.92.101:2181,192.168.92.102:2181,192.168.92.103:2181
#mycat在zookeeper中的节点,这个可以通过登录zkCli.sh来查看
clusterId=mycat-cluster-1
#mycat集群中实例的id,id的值不能重复
myid=mycat_04
#mycat有几个节点
clusterSize=2
#mycat集群中节点的标识名
clusterNodes=mycat_01,mycat_04
#server  booster  ;   booster install on db same server,will reset all minCon to 2
type=server
boosterDataHosts=dataHost1

3.3. 重启mycat

重启mycat,通过读取zookeeper配置文件来进行启动了
目前:mycat01节点配置文件已经配置好的,mycat02节点上的配置文件是默认的,还没有更改过的
登录mycat节点01

[root@node1 conf]# mycat stop
Stopping Mycat-server...
Stopped Mycat-server.
[root@node1 conf]# rm -rf /app/mycat/logs/*
[root@node1 conf]# mycat start
Starting Mycat-server...
[root@node1 conf]# tail -f /app/mycat/logs/wrapper.log
STATUS | wrapper  | 2021/07/14 21:35:09 | --> Wrapper Started as Daemon
STATUS | wrapper  | 2021/07/14 21:35:09 | Launching a JVM...
INFO   | jvm 1    | 2021/07/14 21:35:09 | Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=64M; support was removed in 8.0
INFO   | jvm 1    | 2021/07/14 21:35:12 | Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
INFO   | jvm 1    | 2021/07/14 21:35:12 |   Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.
INFO   | jvm 1    | 2021/07/14 21:35:12 |
INFO   | jvm 1    | 2021/07/14 21:35:16 | log4j:WARN No appenders could be found for logger (io.mycat.memory.MyCatMemory).
INFO   | jvm 1    | 2021/07/14 21:35:16 | log4j:WARN Please initialize the log4j system properly.
INFO   | jvm 1    | 2021/07/14 21:35:16 | log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
INFO   | jvm 1    | 2021/07/14 21:35:16 | MyCAT Server startup successfully. see logs in logs/mycat.log


mycat第一个节点已经启动完成!

3.4. 登录mycat节点02

启动mycat

[root@node4 conf]# mycat start
Starting Mycat-server...
Removed stale pid file: /app/mycat/logs/mycat.pid
You have new mail in /var/spool/mail/root
[root@node4 conf]# tail -f /app/mycat/logs/wrapper.log
INFO   | jvm 1    | 2021/07/10 14:43:40 | log4j:WARN No appenders could be found for logger (io.mycat.memory.MyCatMemory).
INFO   | jvm 1    | 2021/07/10 14:43:40 | log4j:WARN Please initialize the log4j system properly.
INFO   | jvm 1    | 2021/07/10 14:43:40 | log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
INFO   | jvm 1    | 2021/07/10 14:43:40 | MyCAT Server startup successfully. see logs in logs/mycat.log
STATUS | wrapper  | 2021/07/14 21:37:55 | --> Wrapper Started as Daemon
STATUS | wrapper  | 2021/07/14 21:37:56 | Launching a JVM...
INFO   | jvm 1    | 2021/07/14 21:37:56 | Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=64M; support was removed in 8.0
INFO   | jvm 1    | 2021/07/14 21:37:59 | Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
INFO   | jvm 1    | 2021/07/14 21:37:59 |   Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.
INFO   | jvm 1    | 2021/07/14 21:37:59 |
INFO   | jvm 1    | 2021/07/14 21:38:08 | log4j:WARN No appenders could be found for logger (io.mycat.memory.MyCatMemory).
INFO   | jvm 1    | 2021/07/14 21:38:08 | log4j:WARN Please initialize the log4j system properly.
INFO   | jvm 1    | 2021/07/14 21:38:08 | log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
INFO   | jvm 1    | 2021/07/14 21:38:08 | MyCAT Server startup successfully. see logs in logs/mycat.log

3.5. 配置数据验证
#进入conf目录查看配置文件
cd /app/mycat/conf#查看schema.xml
more schema.xml


发现,虽然,没有配置配文件,但是mycat01节点的配置文件信息同步过来了
mycat02节点配置信息哪来的呢?就是从zookeeper集群同步过来的
以后,我们只要在zookeeper修改mycat的配置文件信息,就会同步到mycat01节点和mycat02节点,这样就可以保证这2个mycat节点的配置是保持同步,一致的

下一篇:企业实战_20_MyCat使用HAPpoxy对Mycat负载均衡
https://gblfy.blog.csdn.net/article/details/100087884

企业实战_19_MyCat初始化ZK并配置Mycat支持ZK相关推荐

  1. 企业实战_11_MyCat垂直拆分相关配置

    接上一篇:企业实战_10_MyCat Mysql 主复制总结 https://gblfy.blog.csdn.net/article/details/118652742 文章目录 一.准备工作 1. ...

  2. Exchange企业实战技巧(3)配置Exchange证书

    Exchange2010需要证书支持,exchange2010安装之后会默认开启ssl,在IE中只能使用https://而不是http://来访问owa.如果没有证书,也能安装exchange2010 ...

  3. Exchange企业实战技巧(5)配置OWA域名简写

    默认设置下,Exchange使用https://mail.contoso.com/owa访问邮箱.我们可以通过修改IIS设置,当输入http://mail.contoso.com或者mail.cont ...

  4. 企业实战_20_MyCat使用HAPpoxy对Mycat负载均衡

    上一篇:企业实战_19_MyCat初始化ZK并配置Mycat支持ZK https://gblfy.blog.csdn.net/article/details/100087824 解决了引入多个myca ...

  5. 企业实战_18_MyCat_ZK集群安装部署

    接上一篇:企业实战_17_MyCat水平扩展_跨分片查询_ER分片 https://gblfy.blog.csdn.net/article/details/100066013 文章目录 一.使用ZK记 ...

  6. 企业实战_12_MyCat水平扩展_分库分表

    接上一篇:企业实战_11_MyCat垂直拆分相关配置 https://gblfy.blog.csdn.net/article/details/100055838 文章目录 一.概念理论理解 1. 垂直 ...

  7. 企业实战_10_MyCat Mysql 主复制总结

    接上一篇:企业实战_09_MyCat 搭建Mysql 一主三从复制环境 https://gblfy.blog.csdn.net/article/details/118652450 使用master-d ...

  8. 配置vim支持源码浏览(vim+ctags+cscope)

    2019独角兽企业重金招聘Python工程师标准>>> 配置vim支持源码浏览(vim+ctags+cscope) 介绍 windows下流行的源码阅读软件是source insig ...

  9. 企业实战_10_Mycat集成ZK实现配置同步

    主机名 IP地址 角色 数据库 mycat 192.168.43.32 MYCAT ,MYSQL,ZK mycat(全局自增id) node1 192.168.43.104 ZKMYSQL order ...

最新文章

  1. Android模拟器SD卡的使用
  2. 解决response响应乱码
  3. [分享] 数学学术资源站点
  4. 服务外包技术培训——后端开发技术栈分析(Java)
  5. python异步处理请求_如何一次在python中发送异步http请求?
  6. javascript返回页面顶部_RobotFramework: 执行JavaScript语句
  7. css3模拟jq点击事件
  8. android8.0 苹果,外媒:看完Android8.0 这次是谷歌抄苹果
  9. VScode中SVN插件详细配置【官网】
  10. 2019华为网络技术大赛模拟题
  11. 给快播指一条生路:转型会员付费吧
  12. ggplot做双曲线阈值火山图
  13. 自己拥有一台服务器可以做哪些很酷的事情
  14. Mac 使用mysql出现ERROR [MY-013183][InnoDB] Assertion failure以及找不到my.cnf的解决过程
  15. 你只是看起来很努力-阅读记录
  16. 单集群10万节点 走进腾讯云分布式调度系统VStation
  17. 过滤器(Filter)和拦截器(interceptor)区别
  18. C/C++黑客编程入门-杨波-专题视频课程
  19. 快速入门mybatis(查询、添加日志、插入)
  20. CMMI资质认证是什么?

热门文章

  1. 来电科技:基于 Flink + Hologres 的实时数仓演进之路
  2. 深度| 每秒1.4亿次!再度刷新TPS记录的PolarDB如何应对双11“尖峰时刻”?
  3. 分布式数据库选型——数据水平拆分方案
  4. 离职阿里三年后,他又回来了
  5. 阿里云SDK再升级,宣布支持C++语言
  6. 2017双11技术揭秘—分布式缓存服务Tair的热点数据散列机制
  7. 历时 4 年,阿里云推出金融核心系统转型实践书
  8. 三分钟教你用 Scarlet 写一个 WebSocket App
  9. 【我想进大厂】Redis夺命连环11问
  10. 12 种主流编程语言输出“ Hello World ”,把我给难住了!