canal+kafka+mysql+canal-admin联合部署+最新版_朝拜之路的博客-CSDN博客


本站和网页 https://blog.csdn.net/q7867401/article/details/103108156 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

canal+kafka+mysql+canal-admin联合部署+最新版_朝拜之路的博客-CSDN博客
canal+kafka+mysql+canal-admin联合部署+最新版
朝拜之路
于 2019-11-17 14:01:44 发布
2981
收藏
分类专栏:
数据同步
文章标签:
canal同步
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/q7867401/article/details/103108156
版权
数据同步
专栏收录该内容
1 篇文章
0 订阅
订阅专栏
此贴原创,需要转载请标明原帖位置,否则将追究
安装步骤: 1、安装mysql -(自行安装) 2、安装zk+kafka -(自行安装) 3、安装canal 4、安装canal-admin --------------------------------------------------
一、安装mysql并开启主从配置
这里不再叙说,可以参考这篇帖子:https://www.cnblogs.com/oldAlcazar/p/6835573.html 或者自行百度安装
主从配置:
#添加这一行就ok
log-bin=mysql-bin
#选择row模式
binlog-format=ROW
#配置mysql replaction需要定义,不能和canal的slaveId重复
server_id=1
建立一个专用的同步数据源:
CREATE USER canal IDENTIFIED BY 'canal';
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';
-- GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' ;
FLUSH PRIVILEGES;
二、安装zk+kafka
略…自行百度
三、安装canal
3.1 下载canal
目前采用的1.1.4最新版本,在 canal1.1.4 中查找 canal 最新deploy 版本 解压 mkdir /home/canal 并解压到此目录 tar -zxvf xxxx.tar.gz
3.2 配置示例数据源
进入config/目录下,example就是一个示例数据源,这里一个文件夹就代表一个数据源配置 创建新的数据源并复制示例配置,example可以删除
新建test数据源
root@md-finereport-1 (12:56:39) conf # mkdir test
复制配置
root@md-finereport-1 (12:57:45) conf # cp example/instance.properties test/
修改配置
root@md-finereport-1 (12:59:03) conf # vim test/instance.properties
# 按需修改成自己的数据库信息
#################################################
...
canal.instance.master.address=192.168.1.20:3306
# username/password,数据库的用户名和密码
...
canal.instance.dbUsername = canal
canal.instance.dbPassword = canal
...
# mq config
canal.mq.topic=test
# 针对库名或者表名发送动态topic
#canal.mq.dynamicTopic=mytest,.*,mytest.user,mytest\\..*,.*\\..*
canal.mq.partition=0
# hash partition config
#canal.mq.partitionsNum=3
#库名.表名: 唯一主键,多个表之间用逗号分隔
#canal.mq.partitionHash=mytest.person:id,mytest.role:id
#################################################
3.3返回到conf目录下操作canal.properties
#因为要开启admin管理操作,此次测试是把admin跟canal放在一台机器上的
#这一行管理配置需要放开
# canal admin config
canal.admin.manager = 127.0.0.1:8089
#这里是配置数据源管理的 就是前面说到的有哪些目录就是代表数据源,之前建立的test目录即为test数据源名称,那么其它数据源类似,多个源配置多个即可
canal.destinations = test,example
# ...
# 可选项: tcp(默认), kafka, RocketMQ===修改为kafka
canal.serverMode = kafka
# ...
# kafka/rocketmq 集群配置: 192.168.1.117:9092,192.168.1.118:9092,192.168.1.119:9092
canal.mq.servers = 127.0.0.1:6667
canal.mq.retries = 0
# flagMessage模式下可以调大该值, 但不要超过MQ消息体大小上限
canal.mq.batchSize = 16384
canal.mq.maxRequestSize = 1048576
# flatMessage模式下请将该值改大, 建议50-200
canal.mq.lingerMs = 1
canal.mq.bufferMemory = 33554432
# Canal的batch size, 默认50K, 由于kafka最大消息体限制请勿超过1M(900K以下)
canal.mq.canalBatchSize = 50
# Canal get数据的超时时间, 单位: 毫秒, 空为不限超时
canal.mq.canalGetTimeout = 100
# 是否为flat json格式对象
canal.mq.flatMessage = false
canal.mq.compressionType = none
canal.mq.acks = all
# kafka消息投递是否使用事务
canal.mq.transaction = false
mq相关参数说明
参数名参数说明默认值canal.mq.serverskafka为bootstrap.servers rocketMQ中为nameserver列表127.0.0.1:6667canal.mq.retries发送失败重试次数0canal.mq.batchSizekafka为ProducerConfig.BATCH_SIZE_CONFIG#rocketMQ无意义16384canal.mq.maxRequestSizekafka为ProducerConfig.MAX_REQUEST_SIZE_CONFIG #rocketMQ无意义1048576canal.mq.lingerMskafka为ProducerConfig.LINGER_MS_CONFIG , 如果是flatMessage格式建议将该值调大, 如: 200 rocketMQ无意义1canal.mq.bufferMemorykafka为ProducerConfig.BUFFER_MEMORY_CONFIG rocketMQ无意义33554432canal.mq.ackskafka为ProducerConfig.ACKS_CONFIG#rocketMQ无意义allcanal.mq.kafka.kerberos.enablekafka为ProducerConfig.ACKS_CONFIG#rocketMQ无意义falsecanal.mq.kafka.kerberos.krb5FilePathkafka kerberos认证#rocketMQ无意义…/conf/kerberos/krb5.confcanal.mq.kafka.kerberos.jaasFilePathkafka kerberos认证#rocketMQ无意义…/conf/kerberos/jaas.confcanal.mq.producerGroupkafka无意义#rocketMQ为ProducerGroup名Canal-Producercanal.mq.accessChannelkafka无意义#rocketMQ为channel模式,如果为aliyun则配置为cloudlocal---------------------------canal.mq.vhost=rabbitMQ配置无canal.mq.exchange=rabbitMQ配置无canal.mq.username=rabbitMQ配置无canal.mq.password=rabbitMQ配置无canal.mq.aliyunuid=rabbitMQ配置无canal.mq.canalBatchSize获取canal数据的批次大小50canal.mq.canalGetTimeout获取canal数据的超时时间100canal.mq.parallelThreadSizemq数据转换并行处理的并发度8canal.mq.flatMessage是否为json格式如果设置为false,对应MQ收到的消息为protobuf格式需要通过CanalMessageDeserializer进行解码falsecanal.mq.topicmq里的topic名无canal.mq.dynamicTopicmq里的动态topic规则, 1.1.3版本支持无canal.mq.partition单队列模式的分区下标,1canal.mq.partitionsNum散列模式的分区数无canal.mq.partitionHash散列规则定义库名.表名 : 唯一主键,比如mytest.person: id1.1.3版本支持新语法,见下文无
四、安装canal-admin
4.1 下载canal-admin
目前采用的1.1.4最新版本,在 canal1.1.4 中查找 canal 最新admin 版本 解压 mkdir /home/canal-admin 并解压到此目录 tar -zxvf xxxx.tar.gz
4.2 配置相关配置
进入config目录修改application.yml
server:
port: 8089
spring:
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
spring.datasource:
#这是admin需要存相关的配置信息
address: 127.0.0.1:3306
#单独的库拿来保存admin相关的数据源
database: canal_manager
#需要账号密码,建议是其它独立的账户,不要跟主从同步的原账号和密码相同
username: canal
password: canal
driver-class-name: com.mysql.jdbc.Driver
#这里注意 只需要配置地址以及数据库名字即可,参考:jdbc:mysql://172.0.0.1:3306/canal_manager?Unicode=true&characterEncoding=UTF-8&useSSL=false
url: jdbc:mysql://${spring.datasource.address}/${spring.datasource.database}?useUnicode=true&characterEncoding=UTF-8&useSSL=false
hikari:
maximum-pool-size: 30
minimum-idle: 1
canal:
adminUser: admin
adminPasswd: admin
配置完成需要到上述配置的数据库中初始化此框架对应的表: 初始化SQL脚本里会默认创建canal_manager的数据库,建议使用root等有超级权限的账号进行初始化 b. canal_manager.sql默认会在conf目录下,也可以通过链接下载 canal_manager.sql 配置完成直接去启动:
sh bin/startup.sh并查看日志:
vi logs/admin.log
2019-08-31 15:43:38.162 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8089 (http)
2019-08-31 15:43:38.180 [main] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8089"]
2019-08-31 15:43:38.191 [main] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat]
2019-08-31 15:43:38.194 [main] INFO org.apache.catalina.core.StandardEngine - Starting Servlet Engine: Apache Tomcat/8.5.29
....
2019-08-31 15:43:39.789 [main] INFO o.s.w.s.m.m.annotation.ExceptionHandlerExceptionResolver - Detected @ExceptionHandler methods in customExceptionHandler
2019-08-31 15:43:39.825 [main] INFO o.s.b.a.web.servlet.WelcomePageHandlerMapping - Adding welcome page: class path resource [public/index.html]
此时代表canal-admin已经启动成功,可以通过 http://127.0.0.1:8089/ 访问,默认密码:admin/123456
这个时候直接去canal工程里面进行启动canal root@md-finereport-1 (13:21:51) canal # sh bin/startup.sh
这个时候看下日志:tail -f logs/canal/canal.log 以及数据源读取日志:tail -f logs/test/test.log 没有问题即成功 那么回到控制台刷新admin主页即可得到对应的service 会自动给你扫描进来
对应的表监听操作也会同时启动起来:
注意canal跟canal-admin是在同一台机器上,一定要注意,如果不是请修改 canal下的 config/canal.properties当中的第一个canal.admin.manager对应的地址
这个时候我们操作数据库去修改数据 那么就可以到kafka看到对应的数据了
对应的返回结果集字符串:
"data": [
"aarr": "你好-测试"
],
"database": "tests",
"es": 1573968472000,
"id": 6,
"isDdl": false,
"mysqlType": {
"aarr": "varchar(255)"
},
"old": null,
"pkNames": null,
"sql": "",
"sqlType": {
"aarr": 12
},
"table": "test_canal",
"ts": 1573968473257,
"type": "INSERT"
涉及到了操作类型 insert 以及数据 还有表名 那么后续对数据加工即可
朝拜之路
关注
关注
点赞
收藏
打赏
评论
canal+kafka+mysql+canal-admin联合部署+最新版
此贴原创,需要转载请标明原帖位置,否则将追究安装步骤:1、安装mysql -(自行安装)2、安装zk+kafka -(自行安装)3、安装canal4、安装canal-admin--------------------------------------------------一、安装mysql并开启主从配置这里不再叙说,可以参考这篇帖子:https://www.cnblogs.co...
复制链接
扫一扫
专栏目录
canal-admin
08-31
canal-admin-1.1.4.............................................
mysql实时监听canal+kafka
怪只怪满眼尽是人间烟火
01-31
3666
1.首先安装mysql
2.然后安装kafka然后安装kafkahttps://qushen.blog.csdn.net/article/details/122682000
3.安装并配置canalcanal.deployer-1.1.5.tar.gz​​​​​​https://github.com/alibaba/canal/releases/download/canal-1.1.5/canal.deployer-1.1.5.tar.gz
...
评论 5
您还未登录,请先
登录
后发表或查看评论
canal-admin的部署与使用,及相关监控
未知的希望,是我不灭的信仰
05-28
2412
canal-admin的相关
【Canal】使用CanalAdmin来搭建一个canal集群
最新发布
qq_41466440的博客
10-31
70
【ClickHouse】canal 部署
使用Canal同步MySQL数据到Kafka
yqqの博客
01-04
1467
Canal架构原理
1.Canal Server结构
server 代表一个 canal 运行实例,对应于一个 jvm。
instance 对应于一个数据队列 (1个 canal server 对应 1…n 个 instance )
instance 下的子模块
a.eventParser: 数据源接入,模拟 slave 协议和 master 进行交互,协议解析
b.eventSink: Parser 和 Store 链接器,进行数据过滤,加工,分发的工作
c.eventStore: 数据存储
meta
阿里 canal-admin 服务部署
laow的博客
05-23
200
下载canal
canal.admin-1.1.5 下载
canal.adapter-1.1.5 下载
canal.deployer-1.1.5 下载
环境搭建(java环境略)
注意:推荐java8, java11需要修改启动脚本ops参数
canal-admin 搭建
#创建canal-admin文件夹
mkdir canal-admin
#将canal.admin-1.1.5.tar.gz 解压到 canal-admin 目录下
tar -zxvf canal.admin-1.1.5.tar.gz
canal+mysql+kafka[windows环境搭建]
qq_42174979的博客
05-11
199
针对公司资源环境申请都要走流程,麻烦死,故在本地搭建一套用于自测。
1.zookeeper
官网下载:Apache ZooKeeper
这里用的是 apache-zookeeper-3.6.3-bin
zk配置修改:
windows下启动记得把路径 apache-zookeeper-3.6.3-bin\conf里面的zoo_sample.cfg文件复制一份,改名为zoo.cfg
2.运行bin目录下的zkServer.cmd
【注:如...
canal同步mysql数据变化到kafka(centos部署)
douyh的专栏
06-23
486
canal同步mysql数据变化到kafka(centos部署)
Canal+MySQL+Kafka+Zookeeper
m0_71518373的博客
10-16
574
Canal+MySQL+Kafka+Zookeeper实现实时数据同步
mysql+canal+kafka数据实时同步
zhou_zhao_xu的博客
04-02
4353
文章目录业务场景zk保证canal server的高可用,同一时间只有一个canal-server真正在工作。集群环境zookeeper部署&配置下载:解压修改配置分别在三台机器上启动验证zkkafka部署&配置canal部署&配置下载 (https://github.com/alibaba/canal/releases)
转载自:https://www.jianshu.c...
阿里巴巴CanalAdmin部署以及Canal集群HA搭建
xiaolinzi176的博客
05-25
1285
背景
canal-admin设计上是为canal提供整体配置管理、节点运维等面向运维的功能,提供相对友好的WebUI操作界面,方便更多用户快速和安全的操作
设计理念
canal-admin的核心模型主要有:
instance,对应canal-server里的instance,一个最小的订阅mysql的队列
server,对应canal-server,一个server里可以包含多个instance
集群,对应一组canal-server,组合在一起面向高可用HA的运维
简单解释:
instanc
【数据采集】Canal_Admin 部署安装
qq_41457431的博客
12-24
910
部署安装
1.上传
cd /opt/resource
rz
2.创建文件夹
mkdir /opt/software/canal_admin
3.解压
tar -zxvf /opt/resource/canal.admin-1.1.5.tar.gz -C /opt/software/canal_admin/
4.配置
4.1.配置 canal_admin
server:
port: 8089
spring:
jackson:
date-format: yyyy-MM-dd HH:mm:s
canal admin+canal server安装部署教程(内附kafka推送demo)
weixin_43900244的博客
10-19
1380
canal-admin+canal-server安装部署教程(内附kafka推送demo)
文章目录canal-admin+canal-server安装部署教程(内附kafka推送demo)1.前置条件2.mysql环境准备3.相关套件准备4.canal-admin安装部署5.canal-server安装部署6.instance配置7.测试8.总结
1.前置条件
软件
1.jdk_1.8.0_131
2.mysql_5.7.24
3.zookeeper_3.4.14
4.kafka_2.11-2.2.2
基于Canal和Kafka实现MySQL的Binlog近实时同步
Throwable
03-13
7902
前提
近段时间,业务系统架构基本完备,数据层面的建设比较薄弱,因为笔者目前工作重心在于搭建一个小型的数据平台。优先级比较高的一个任务就是需要近实时同步业务系统的数据(包括保存、更新或者软删除)到一个另一个数据源,持久化之前需要清洗数据并且构建一个相对合理的便于后续业务数据统计、标签系统构建等扩展功能的数据模型。基于当前团队的资源和能力,优先调研了Alibaba开源中间件Canal的使用。
这篇文...
canal-admin1.1.14界面化安装配置canal集群详解
qq_25073261的博客
03-19
9794
安装准备
虚拟机服务器四台
192.168.23.128 (主机名mysql)
192.168.23.132 (主机名spark01)
192.168.23.133 (主机名spark02)
192.168.23.134 (主机名spark03)
canal.admin-1.1.4.tar.gz
canal.deployer-1.1.4.tar.gz
下载地址 https://github.com...
canal-admin的高可用使用,单机使用,HA使用,阿里的canal的UI界面,管理canal的实例,以及问题
剑雨江湖
09-16
9323
一、软件下载
1、介绍
canal的主要的作用就是通过MySQL的binlog日志文件,同步数据到MQ,MQ包含mysql、kafka、tcp等等
canal-admin是一个webUI界面,通过界面配置的方式,管理canal的配置文件,方便易于管理。
2、下载
使用的有点击下载:canal.deployer-1.1.4.tar.gz 和 canal.admin-1.1.4.tar....
Canal安装(admin的WebUI管理,自动生成kafka的Topic[dynamicTopic])
pengdixi的博客
01-22
490
1. 准备
mysql开启binlog并配置权限
canal版本,要求>=1.1.4 (需要依赖canal-server提供面向admin的动态运维管理接口)
Zookeeper
Kafka
2. 安装
2.1 admin安装
2.1.1 解压:
mkdir -p /opt/module/canal-admin
tar -zxvf canal.admin-1.1.4.tar.gz -C /opt/module/canal-admin/
2.1.2 初始化元数据库
[ttt@ttt can
canal实时抽取mysql数据发送到kafka
热门推荐
十色花的博客
12-06
1万+
基本说明
canal 1.1.1版本之后, 默认支持将canal server接收到的binlog数据直接投递到MQ, 目前默认支持的MQ系统有:
kafka: https://github.com/apache/kafka
RocketMQ : https://github.com/apache/rocketmq
环境版本
操作系统:CentOS release 6.6 (Fina...
「从零单排canal 02」canal集群版 + admin控制台 最新搭建姿势(基于1.1.4版本)
阿丸笔记
06-10
2614
canal [kə’næl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据 订阅 和 消费。应该是阿里云DTS(Data Transfer Service)的开源版本,开源地址:
https://github.com/alibaba/canal。
canal从1.1.4版本开始引入了admin控制台,有了很多不一样的配置方式。在搭建过程中如果仅仅按照wiki的用户手册,还是容易踩很多坑的。因此,将笔者在搭建过程中的步骤记录下来,作为官方wiki的 补充,希望能有所帮助
canal发送数据到kafka
tom_fans的博客
04-18
1万+
1. canal安装
官方文档:https://github.com/alibaba/canal/wiki/Canal-Kafka-RocketMQ-QuickStart
版本: canal 1.1.3 , JDK 1.8+ ,MySQL 5.7
软件下载之后解压缩,有2个配置文件需要更改:
canal.properties
example/instance.properties
再...
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
©️2022 CSDN
皮肤主题:大白
设计师:CSDN官方博客
返回首页
朝拜之路
CSDN认证博客专家
CSDN认证企业博客
码龄6年
暂无认证
原创
29万+
周排名
161万+
总排名
1万+
访问
等级
243
积分
粉丝
获赞
评论
29
收藏
私信
关注
热门文章
新建maven一直加载缓存 C:\Users\Administratol\AppData\Local\Temp\..
4950
canal+kafka+mysql+canal-admin联合部署+最新版
2981
Mapping映射
2538
基于elasticsearch最新版本7.x的ngram分词场景分析
2139
基于本地开发windows环境安装Elasticsearch6.0版本、head插件、ik以及pinyin插件全教程
2043
分类专栏
数据同步
1篇
Elasticsearch7.x
1篇
intellij创建maven项目
elasticsearch6.0
3篇
SpringBoot
1篇
最新评论
canal+kafka+mysql+canal-admin联合部署+最新版
IT_95:
canal使用server创建的实例不会自动同步到由canal-admin创建mysql中。只能够在server创建一遍,然后再在canal-admin中再创建一遍。否则会报错。但是不知道这两个创建的是否联动?
canal+kafka+mysql+canal-admin联合部署+最新版
两点半holy
回复
朝拜之路: 您说可以自动扫描出来的是server吗 在deployer下的 conf新建一个文件夹,可以被扫描出来吗
canal+kafka+mysql+canal-admin联合部署+最新版
两点半holy
回复
朝拜之路: 能加下 您 qq或者其他联系方式吗?我最近在看admin,想向您请教一下
canal+kafka+mysql+canal-admin联合部署+最新版
朝拜之路
回复
两点半holy: 不会的 需要自己手工人为创建哈
canal+kafka+mysql+canal-admin联合部署+最新版
两点半holy:
请问一下,canal web 界面,instance 会自动导入吗?
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
基于elasticsearch最新版本7.x的ngram分词场景分析
Mapping映射
ES_权威指南
2019年2篇
2018年3篇
2017年2篇
目录
目录
分类专栏
数据同步
1篇
Elasticsearch7.x
1篇
intellij创建maven项目
elasticsearch6.0
3篇
SpringBoot
1篇
目录
评论 5
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
打赏作者
朝拜之路
你的鼓励将是我创作的最大动力
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值