资源下载
链接:https://pan.baidu.com/s/1P1nvfvkRSk_vZ4ulXbfTxg 提取码:rw55
Zookeeper
创建目录
新建data目录
解压并修改配置文件
进入zookeeper的conf目录,修改配置文件
- 将zoo_sample.cfg拷贝一份
cp zoo_sample.cfg zoo.cfg - 将zoo_sample.cfg修改成备份文件
mv zoo_sample.cfg zoo_sample.bak - 进入zoo.cfg
vi zoo.cfg
修改具体的配置
dataDir=/xxxx/data
clientPort=2181
autopurge.purgeInterval=1 #连接限制
因为只有一台所以没有以下配置
server.1=127.0.0.1:2888:3888 (server.1 : 1代表机器ID)
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890
启动
进入到安装目录的bin目录下,启动对应脚本即可 启动:sh ./zkServer.sh
查看启动状态:./zkServer.sh status
Manager
下载下来直接解压即可
修改配置文件运行
新建otter数据库
create database otter DEFAULT CHARACTER SET utf8;
运行下载文件里的sql
如果文件sql文件运行错误,则运行此地址的sql
https://raw.github.com/alibaba/otter/master/manager/deployer/src/main/resources/sql/otter-manager-schema.sql
otter.properties配置修改 vi conf/otter.properties
## otter manager domain name
otter.domainName = 127.0.0.1
## otter manager http port
otter.port = 8080
## jetty web config xml
otter.jetty = jetty.xml
## otter manager database config 数据库要指向上面新建的库
otter.database.driver.class.name = com.mysql.jdbc.Driver
otter.database.driver.url = jdbc:mysql://ip:port/otter
otter.database.driver.username = root
otter.database.driver.password = root
## otter communication port
otter.communication.manager.port = 1099
## otter communication pool size
otter.communication.pool.size = 10
## default zookeeper address 上面zookeeper配置的端口
otter.zookeeper.cluster.default = 127.0.0.1:2181
## default zookeeper sesstion timeout = 60s
otter.zookeeper.sessionTimeout = 60000
## otter arbitrate connect manager config
otter.manager.address = ${otter.domainName}:${otter.communication.manager.port}
## should run in product mode , true/false
otter.manager.productionMode = true
## self-monitor enable or disable
otter.manager.monitor.self.enable = true
## self-montir interval , default 120s
otter.manager.monitor.self.interval = 120
## auto-recovery paused enable or disable
otter.manager.monitor.recovery.paused = true
# manager email user config
otter.manager.monitor.email.host = smtp.gmail.com
otter.manager.monitor.email.username =
otter.manager.monitor.email.password =
otter.manager.monitor.email.stmp.port = 465
启动Manager
进到安装目录,执行./startup.sh
访问管理页面
在浏览器输入manager机器的ip:8080 出现登录窗口,账号密码都是admin
配置Zookeeper
配置Node
解压node
tar -zxvf node.deployer-4.2.18.tar
修改配置文件 conf/otter.properties
# otter node root dir
#otter.nodeHome = ${user.dir}/../
otter.nodeHome = /datas/otter/node
## otter node dir
otter.htdocs.dir = ${otter.nodeHome}/htdocs
otter.download.dir = ${otter.nodeHome}/download
otter.extend.dir= ${otter.nodeHome}/extend
## default zookeeper sesstion timeout = 60s
otter.zookeeper.sessionTimeout = 60000
## otter communication pool size
otter.communication.pool.size = 10
## otter arbitrate & node connect manager config
otter.manager.address = 127.0.0.1:1099
添加 nid 配置
通过这几步操作,获取到了node节点对应的唯一标示,称之为node id,简称nid,比如我添加的机器对应序号为1 echo 1 > conf/nid
启动
启动bin目录下对应的脚本,查看日志tail -f ../logs/node/node.log
这时对应节点的状态会变成已启动,如果没有启动,尝试把manager也重启一下
配置一个同步任务
搭建一个数据库同步任务,源数据库必须开启binlog,并且binlog_format为ROW,即在mysql的配置文件加上以下两行
log-bin=mysql-bin
binlog-format=ROW
如果源库已开启binlog,通过mysql客户端命令show master status查看
添加canal
在Otter Manager“配置管理-canal配置”页面点击添加
位点信息JSON格式固定,journalName和position 可以通过 show master status
数据库查询得到,时间戳填当前时间戳即可
添加数据源
按常规数据库连接填即可
添加数据表配置
“配置管理-数据表配置”进入数据表管理页面 schema name 和 table name 可以使用通配符(.*)
代替,也可以具体到当前数据库连接下的某一个库下的某一张表
添加一个channel
如上图填好所需信息,勾选高级设置,可以选是否过滤ddl同步等选项,点击保存,成功后会返回Pipeline管理页面。
添加映射关系
添加pipeline成功后,点击Pipeline名字
进入映射关系列表页面,点击添加
进入添加映射关系页面
最后在回到Channel 列表页面,启动即可
至此同步就完成了