canal+kafka+zk+redis实现mysql与redis数据同步环境

  • 基础环境(笔者测试通过环境是本地kafka消费者 + 其他都是阿里云centos7.8部署。。。)
    阿里云centos7.8 docker安装 canal-server1.1.5
    阿里云centos7.8 安装 zookeeper-3.6.2
    阿里云centos7.8下docker安装mysql5.7
    阿里云centos7.8下安装redis并配置远程连接
    阿里云centos7.8 环境安装kafka

1.Canal配置更改

1.修改 conf/example/instance.properties 
canal.instance.master.address=数据库ip:3306
 // 数据库用户名
canal.instance.dbUsername=canal
 // 数据库密码
canal.instance.dbPassword=canal
// 投递到kafka的主题
canal.mq.topic=ctfly-topic

2.修改 conf/canal.properties
canal.zkServers = zk阿里云外网ip:2181

#tcp, kafka, rocketMQ, rabbitMQ ,这里选择投递到kafka
canal.serverMode = kafka

kafka.bootstrap.servers = 阿里云外网ip:9092

3.改完记得重启docker
docker restart canal-server
  1. 注:kafka配置修改
1.修改kafka配置文件下config/server.properties,结合canal必须修改如下配置
listeners = PLAINTEXT://内网ip:9092
advertised.listeners=PLAINTEXT://外网ip:9092

2.更换kafka日志目录
log.dirs=/usr/local/kafka/kafka_2.13/logs

3.重启kafka
 #停止kafka
./kafka-server-stop.sh
 #启动kafka
./kafka-server-start.sh -daemon ../config/server.properties

你可能感兴趣的:(Docker)