virualbox 搭建 otter
更新日期:
前言
为了学习otter,上一篇我们讲到了 otter 必要软件的安装,参考:virualbox 安装 otter 必备软件,现在安装otter,相比官方文档,我们尽量简化安装步骤。
virualbox clone
之前我们安装的一台虚拟机,我们现在就可以clone 一台出来。这样我们把一台当做manager, 另外一台当做node。
网络链接
同样参照之前 virualbox 配置网络,确保NAT,和host-only 网卡正常工作。
manager 安装
环境准备
先到我们第一台虚拟机,我们定义它为manager虚拟机。前面我们已经装好了mysql了,现在就可以用到了,这里我是用工具跑的,不是用命令跑的。直接点开在浏览器打开:https://raw.githubusercontent.com/alibaba/otter/master/manager/deployer/src/main/resources/sql/otter-manager-schema.sql
然后打开我们IDE, 复制sql 代到IDE,然后在最上面加上 SET sql_mode = '';
启动步骤
- 直接去https://github.com/alibaba/otter/releases 下载编译好的文件。
这里我们使用的是$ wget https://github.com/alibaba/otter/releases/download/v4.2.14/manager.deployer-4.2.14.tar.gz
- 解压缩
$ mkdir /tmp/manager
$ tar zxvf manager.deployer-4.2.14.tar.gz -C /tmp/manager
- 配置修改
把 127.0.0.1 改成当前虚拟机内网host-only ip, 这里我的ip 为 192.168.56.101. - 准备启动
$ ./bin/startup.sh
- 查看日志
$ vim logs/manager.log
1
22013-08-14 13:19:45.911 [] WARN com.alibaba.otter.manager.deployer.JettyEmbedServer - ##Jetty Embed Server is startup!
2013-08-14 13:19:45.911 [] WARN com.alibaba.otter.manager.deployer.OtterManagerLauncher - ## the manager server is running now ...... - 验证
打开:http://192.168.56.101:8080/ (我自己manager ip 为192.168.56.101)
初始密码为: admin/admin
node
环境准备
- 安装完成 manager,添加一个zookeeper 集群,zookeeper 虚拟机安装过了。
- 在manager 中添加一个node,为的是产生一个唯一id,
添加完成
启动步骤
- 下载otter node, 可访问:https://github.com/alibaba/otter/releases ,这里我们直接用最新的。
$ wget https://github.com/alibaba/otter/releases/download/v4.2.14/node.deployer-4.2.14.tar.gz
- 解压缩
$ mkdir /tmp/node
$ tar zxvf node.deployer-4.2.14.tar.gz -C /tmp/node
- 配置修改
a. 把nid 写入进去$ cd /tmp/node
$ echo 1 > conf/nid
b. 修改otter.properies
基本上什么都不用改,只需填写manager地址要改otter.manager.address=192.168.56.101:1099
- 启动
$ ./bin/startup.sh
- 查看日志
$ vim logs/node/node.log
1
2Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
2017-11-01 06:21:54.027 [main] INFO com.alibaba.otter.node.deployer.OtterLauncher - INFO ## the otter server is running now ...... - 验证
操作演示
建表
manager 和 node 数据库都跑这个1
2
3
4
5
6CREATE DATABASE `test`;
CREATE TABLE `test`.`example` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(32) COLLATE utf8_bin DEFAULT NULL ,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
配置
- 添加 canal
- 添加数据源 managedb,然后点击验证数据源,这里编码是UTF-8,这个地方是个有个坑的,但是我们已经在之前的必要安装里面设置过了mysql默认编码为UTF-8。
- 再添加一个node1db.
- 添加数据表
- 添加channel
- 添加Pipeline
这里需要点击一下 channel 的名字
添加一下
- 添加映射关系
首先需要点击一下 pipeline 的名字
到这里就是很简单的选择,源数据表选择managedb中 test数据库的exmple表,目标数据表选择node1db 中的example 表。
- 执行channel
回到channl 管理点击启用按钮。
最终验证
你在mangerdb 中任何改动都会同步到node上,
- 添加数据
- 添加一列
最后
终于把otter 入门测试环境搭建好了,里面省去教程很多不必要步骤,而且还提醒大家在搭建时候遇到的坑,希望大家喜欢,有任何问题欢迎指教。