失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > macOS Linux CentOS Docker安装部署canal-server(canal-deployer)服务

macOS Linux CentOS Docker安装部署canal-server(canal-deployer)服务

时间:2019-04-25 21:05:23

相关推荐

macOS Linux CentOS  Docker安装部署canal-server(canal-deployer)服务

1、环境准备

canal-server(canal-deployer)依赖jdk,需要先安装部署好jdk1.8

mysql开启binlog

2、安装部署

2.1、Docker方式安装部署

这里以1.1.6版本为例,其他版本选择:

Docker Hub

#拉取canal-server镜像docker pull canal/canal-server:v1.1.6#拉取完成后,先启动下canal-server,主要是为了从里面copy出配置文件docker run --name canal-server -d canal/canal-server:v1.1.6#新建canal-server目录用于存放相应配置文件和日志mkdir -p ~/canal-server#cp到指定刚刚新建的目录docker cp canal-server:/home/admin/canal-server/conf/canal.properties ~/canal-serverdocker cp canal-server:/home/admin/canal-server/conf/example/instance.properties ~/canal-server#修改canal.properties和instance.properties相关配置#具体需要修改的地方参考第3步vim ~/canal-server/canal.propertiesvim ~/canal-server/instance.properties#修改完成后,将之前的canal-server容器关闭并删除,重新起一个容器docker stop canal-serverdocker rm canal-server#启动新的容器,这里-v是将外部的文件挂载到容器内部 这样就不用每次启动都要配置参数了docker run --name canal-server -p 11111:11111 -d \-v ~/canal-server/instance.properties:/home/admin/canal-server/conf/example/instance.properties \-v ~/canal-server/canal.properties:/home/admin/canal-server/conf/canal.properties \-v ~/canal-server/logs/:/home/admin/canal-server/logs/ \canal/canal-server:v1.1.6#通过日志检查是否启动成功 两个日志都无报错表示启动成功了tail -1000f ~/canal-server/logs/canal/canal.logtail -1000f ~/canal-server/logs/example/example.log#启动、停止docker start canal-serverdocker stop canal-server

2.2、压缩包方式安装部署

2.2.1、下载

下载并解压到指定目录,如/home/admin/

/alibaba/canal/releases/download/canal-1.1.6/canal.deployer-1.1.6.tar.gz

tar -xvfcanal.deployer-1.1.6.tar.gz

2.2.2、修改配置,具体需要修改的地方参考第3步

cd /home/admin/canal.deployer-1.1.6/conf

vim canal.properties

vim example/instance.properties

2.2.3、启动、重启、停止等

cd /home/admin/canal.deployer-1.1.6

sh bin/startup.sh

sh bin/restart.sh

sh bin/stop.sh

2.2.4、查看日志

/home/admin/canal.deployer-1.1.6/logs/canal/canal.log

/home/admin/canal.deployer-1.1.6/logs/example/example.log

3、需要修改的配置(只修改列出来的部分,其余不用动)

3.1、canal.properties

#这里以rocketMQ为例canal.serverMode = rocketMQ#关闭tsdb主要为了解决:表结构发生改变导致不增量同步问题canal.instance.tsdb.enable = false#如果使用的RocketMQ为阿里云商业mq时,需要指定以下两个配置canal.aliyun.accessKey = accessKeycanal.aliyun.secretKey = secretKey#RocketMQ相关配置rocketmq.producer.group = testrocketmq.enable.message.trace = falserocketmq.customized.trace.topic =rocketmq.namespace =rocketmq.namesrv.addr = 127.0.0.1:9876rocketmq.retry.times.when.send.failed = 0rocketmq.vip.channel.enabled = falserocketmq.tag =

3.2、instance.properties

#配置slaveId,不能和现有mysql从库的slaveId重复,默认为0canal.instance.mysql.slaveId=1#配置mysql连接canal.instance.master.address=127.0.0.1:3306canal.instance.dbUsername=rootcanal.instance.dbPassword=123456#需要同步的表canal.instance.filter.regex=.*\\..*#mq配置#mq里的topic名canal.mq.topic=examplecanal.mq.partition=0#分区数canal.mq.partitionsNum=4#库名.表名:唯一主键,多个表之间用逗号分隔canal.mq.partitionHash=.*\\..*:$pk$

相关官方文档:

Canal Kafka RocketMQ QuickStart · alibaba/canal Wiki · GitHub

如果觉得《macOS Linux CentOS Docker安装部署canal-server(canal-deployer)服务》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。