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
2013-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 ......
- 验证
初始密码为: 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
Java 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 数据库都跑这个
CREATE 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 入门测试环境搭建好了,里面省去教程很多不必要步骤,而且还提醒大家在搭建时候遇到的坑,希望大家喜欢,有任何问题欢迎指教。
参考:https://github.com/alibaba/otter/wiki/QuickStart
virualbox 搭建 otter的更多相关文章
- virualbox 安装 otter 必备软件
前言 最近研究了一下阿里otter项目(分布式数据库同步),所以就在virualbox 上开始准备学习一下,遇到了不少坑,所以记录一下啊. otter 项目:https://github.com/al ...
- multipass指定virualbox搭建k8s集群(选择docker作为默认容器)
目录 前言 步骤 初始化三台虚拟机 统一安装docker 修改docker镜像源 查看masterIP 安装master节点(重点设置) 查看master的token 安装worker节点 测试 部署 ...
- 阿里 otter搭建过程整理
1 环境说明: 本机ip 192.168.8.3 虚拟机1 ip 192.168.8.5 虚拟机2 ip 192.168.8.6 虚拟机采取桥接模式 虚拟机系统为CentOS 2.6.32-279.e ...
- mysql同步之otter/canal环境搭建完整详细版
接上一篇mysql 5.7多源复制(用于生产库多主库合并到一个查询从库). 这一篇详细介绍otter/canal环境搭建以及当同步出现异常时如何排查.本文主要参考https://blog.csdn.n ...
- Otter双A同步搭建入门教程
1.准备阶段 1.1 环境 虚拟机A :192.168.0.130 虚拟机B :192.168.0.131 系统:Ubuntu 16.04 LTS JRE:OpenJDK 1.8.0_151(A.B都 ...
- otter搭建
转载: https://blog.csdn.net/inthat/article/details/93595156 https://www.cnblogs.com/Inspire-Yi/p/80943 ...
- otter双主同步安装与配置
otter是阿里的开源数据同步项目,资源地址就不用说了哈,网上找,阿里云论坛关于单方向同步的配置已经很清楚了,理论上说,双主同步也不复杂,但是毕竟 是数据库,比较重要,配置双主的时候,总觉得心里没底, ...
- otter双A同步配置
otter双A配置 最近做跨国服务器的数据同步,用了阿里的otter开源框架,遇到了不少问题,写一下文档为以后做参考. 第一步: 下载所需的文件 :otter,zookeeper,aria2 otte ...
- canal demo搭建全记录
一.环境介绍 canal是阿里开源的中间件,主要用于同步mysql数据库变更.具体参见:https://github.com/alibaba/canal/releases 搭建环境: vmware c ...
随机推荐
- 从content-type设置看Spring MVC处理header的一个坑
我们经常需要在HttpResponse中设置一些headers,我们使用Spring MVC框架的时候我们如何给Response设置Header呢? Sooooooooooooo easy, 看下面的 ...
- <c:forEach>+<c:if>
<c:forEach>:用来做循环<c:if>:相当于if语句用于判断执行,如果表达式的值为 true 则执行其主体内容. <c:forEach var="每个 ...
- 关于ng-options
在实际使用过程中对angular的ng-options指令有点不解,有的时候觉得很容易理解和上手,但其实等到遇到问题时,发现它很是生疏,(key,value)键值对获取,as关键词,track by ...
- VS2015 + EF6连接MYSQL
ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,不仅支持SQL Server,还支持MySQL.Ora ...
- Xcode 上传代码到GitHub
几乎所有iOS程序员都上过GitHub寻找开源类库,的确,GitHub上有大量优秀的开源类库供大家学习.但是如何在Xcode中上传代码至GitHub呢? (开始之前先安装git,具体方法这里讲的很清楚 ...
- ThinkPHP控制器输出防止乱码小技巧
在控制器中加一句:试试看 header('content-type:text/html;charset=utf-8');
- 快速搭建属于自己的数据库——mongodb
为了真实模拟一个项目上线,拥有前端后端数据库都具备的功能,我选择了mongodb作为项目的数据库支持,这里分享一些mongodb的经验心得和血的教训. mongoddb安装 在本地安装 直接通过官网下 ...
- 【Linux笔记(002) 】-- centos7 文档操作基本命令
一.cd -- ChangeDirectory a) 切换到 /DemoLM/ 文件夹 b) 回到用户 Home 根目录:是哪个账户登录的就会进入哪个用户的根目录 二.pwd -- PrintWork ...
- Longest Uncommon Subsequence I
Given a group of two strings, you need to find the longest uncommon subsequence of this group of two ...
- 【JAVA零基础入门系列】Day4 变量与常量
这一篇主要讲解Java中的变量,什么是变量,变量的作用以及如何声明,使用变量. 那么什么是变量?对于初学者而言,可以将变量理解为盒子,这些盒子可以用来存放数据,不同类型的数据需要放在对应类型的盒子里. ...