- 机器
a. 运行canal的机器: 10.20.144.22 , 10.20.144.51.
b. zookeeper地址为10.20.144.51:2181
c. mysql地址:10.20.144.15:3306
- 修改配置
canal.properties,加上zookeeper配置 canal.zkServers=10.20.144.51:2181 canal.instance.global.spring.xml = classpath:spring/default-instance.xml instance.properties canal.instance.mysql.slaveId = 1234 ##另外一台机器改成1235,保证slaveId不重复即可 canal.instance.master.address = 10.20.144.15:3306注意: 两台机器上的instance目录的名字需要保证完全一致,HA模式是依赖于instance name进行管理,同时必须都选择default-instance.xml配置
启动之后查看zk节点信息
查看一下zookeeper中的节点信息,也可以知道当前工作的节点为10.20.144.51:11111
[zk: localhost:2181(CONNECTED) 15] get /otter/canal/destinations/example/running
{"active":true,"address":"10.20.144.51:11111","cid":1}
如果 144.51:11111canal挂掉或者断链之后,zk节点会被其他正常的节点抢占

本文详细介绍了Canal在高可用(HA)模式下的配置流程与实践要点,包括运行机器、Zookeeper与MySQL地址设置,以及关键的canal.properties与instance.properties文件的配置细节。通过实例展示了如何确保两台机器的slaveId不重复,以及如何通过Zookeeper管理Canal实例,实现故障自动切换。
725

被折叠的 条评论
为什么被折叠?



