title: canal高可用安装
tags: [canal]
date: 2020-01-20 16:00:00
介绍
canal高可用模式是通过zookeeper注册canal当前服务状态来实现的。
搭建步骤
主机环境:
canal+admin+zookeeper+jdk:192.168.40.100
mysql+jdk+canal:192.168.40.101
搭建步骤:
安装mysql
安装jdk
安装zookeeper
安装2个canal
安装admin管理界面
mysql安装
jdk安装
zookeeper安装
canal.admin安装
在192.168.40.100安装
# 下载地址
wget https://github.com/alibaba/canal/releases/download/canal-1.1.4/canal.admin-1.1.4.tar.gz
tar xf canal.admin-1.1.4.tar.gz -C /data/canal.admin
vim /data/canal.admin/conf/application.yml
server:
port: 8089
spring:
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
spring.datasource:
address: 127.0.0.1:3306#数据地址
database: canal_manager#数据库名
username: canal#数据库账号,数据库授权需要写权限
password: canal#数据库密码
driver-class-name: com.mysql.jdbc.Driver
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-server需要凭此账号密码连接到admin上,不是登录密码,是服务间的连接校验
canal:
adminUser: admin
adminPasswd: admin
登录数据库,加载初始化配置
mysql -uroot -p123123
mysql> source /data/canal.admin/conf/canal_manager.sql;
启动
# 启动
/data/admin/bin/startup.sh
# 关闭
/data/admin/bin/stop.sh
访问web
curl http://192.168.40.100:8089
web界面配置
登录:账号:admin,密码:123456
点击集群管理 --> 新建集群 --> 填写zookeeper信息
在新建的集群右侧点击操作 --> 主配置 --> 载入模板 --> 把canal.user与canal.passwd注释 --> 修改canal.admin.manager为IP地址,注释canal.instance.global.spring.xml = classpath:spring/file-instance.xml 开启canal.instance.global.spring.xml = classpath:spring/default-instance.xml --> 添加canal.zkServers地址 -->保存
server管理:为canal.deployer服务配置
instance管理:为example数据源配置
canal 安装
canal.deployer配置中声明admin配置,才可以注册到admin服务上
修改canal_local.properties配置,canal_local.properties为canal最简化的配置,高可用模式使用该配置,单机模式可以使用默认文件canal.properties
vim /data/canal/conf/canal_local.properties
# 本机IP
canal.register.ip =
# canal admin config
canal.admin.manager = 192.168.40.100:8089
canal.admin.port = 11110
# 该账号密码对应admin配置,密码由mysql生成:select password('admin'),去掉*号
canal.admin.user = admin
canal.admin.passwd = 4ACFE3202A5FF5CF467898FC58AAB1D615029441
# 自动注册到admin服务
canal.admin.register.auto = true
# 如果是高可用,填写zookeeper地址,如果是单机,可不填写
canal.admin.register.cluster = zk
启动
# 必须先启动admin服务,也可直接使用canal_local.properties重命名覆盖canal.properties文件,即可正常启动
cd /data/canal.admin/
sh bin/startup.sh local
# 查看日志
tailf logs/admin.log
注:
启动canal后,在admin界面即可查看到注册信息
多台注册,配置与上面一样
如果注册到同一个集群,配置文件为统一配置
可在admin界面管理instance,直接创建,不需要在服务器上手动创建
zookeeper上也可查看到集群信息