前言

为了学习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 = '';

启动步骤

  1. 直接去https://github.com/alibaba/otter/releases 下载编译好的文件。

    这里我们使用的是

    $ wget https://github.com/alibaba/otter/releases/download/v4.2.14/manager.deployer-4.2.14.tar.gz
  2. 解压缩

    $ mkdir /tmp/manager

    $ tar zxvf manager.deployer-4.2.14.tar.gz -C /tmp/manager
  3. 配置修改

    把 127.0.0.1 改成当前虚拟机内网host-only ip, 这里我的ip 为 192.168.56.101.

  4. 准备启动

    $ ./bin/startup.sh
  5. 查看日志

    $ 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 ......
  1. 验证



    初始密码为: admin/admin

node

环境准备

  1. 安装完成 manager,添加一个zookeeper 集群,zookeeper 虚拟机安装过了。

  2. 在manager 中添加一个node,为的是产生一个唯一id,



    添加完成

启动步骤

  1. 下载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
  2. 解压缩

    $ mkdir /tmp/node

    $ tar zxvf node.deployer-4.2.14.tar.gz -C /tmp/node
  3. 配置修改

    a. 把nid 写入进去

    $ cd /tmp/node

    $ echo 1 > conf/nid

    b. 修改otter.properies

    基本上什么都不用改,只需填写manager地址要改otter.manager.address=192.168.56.101:1099

  4. 启动

    $ ./bin/startup.sh
  5. 查看日志

    $ 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 ......
  1. 验证

操作演示

建表

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;

配置

  1. 添加 canal

  2. 添加数据源 managedb,然后点击验证数据源,这里编码是UTF-8,这个地方是个有个坑的,但是我们已经在之前的必要安装里面设置过了mysql默认编码为UTF-8。

  3. 再添加一个node1db.

  4. 添加数据表



  5. 添加channel

  6. 添加Pipeline

    这里需要点击一下 channel 的名字



    添加一下

  7. 添加映射关系

    首先需要点击一下 pipeline 的名字



    到这里就是很简单的选择,源数据表选择managedb中 test数据库的exmple表,目标数据表选择node1db 中的example 表。

  8. 执行channel

    回到channl 管理点击启用按钮。

最终验证

你在mangerdb 中任何改动都会同步到node上,

  1. 添加数据

  2. 添加一列

最后

终于把otter 入门测试环境搭建好了,里面省去教程很多不必要步骤,而且还提醒大家在搭建时候遇到的坑,希望大家喜欢,有任何问题欢迎指教。

参考:https://github.com/alibaba/otter/wiki/QuickStart

virualbox 搭建 otter的更多相关文章

  1. virualbox 安装 otter 必备软件

    前言 最近研究了一下阿里otter项目(分布式数据库同步),所以就在virualbox 上开始准备学习一下,遇到了不少坑,所以记录一下啊. otter 项目:https://github.com/al ...

  2. multipass指定virualbox搭建k8s集群(选择docker作为默认容器)

    目录 前言 步骤 初始化三台虚拟机 统一安装docker 修改docker镜像源 查看masterIP 安装master节点(重点设置) 查看master的token 安装worker节点 测试 部署 ...

  3. 阿里 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 ...

  4. mysql同步之otter/canal环境搭建完整详细版

    接上一篇mysql 5.7多源复制(用于生产库多主库合并到一个查询从库). 这一篇详细介绍otter/canal环境搭建以及当同步出现异常时如何排查.本文主要参考https://blog.csdn.n ...

  5. 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都 ...

  6. otter搭建

    转载: https://blog.csdn.net/inthat/article/details/93595156 https://www.cnblogs.com/Inspire-Yi/p/80943 ...

  7. otter双主同步安装与配置

    otter是阿里的开源数据同步项目,资源地址就不用说了哈,网上找,阿里云论坛关于单方向同步的配置已经很清楚了,理论上说,双主同步也不复杂,但是毕竟 是数据库,比较重要,配置双主的时候,总觉得心里没底, ...

  8. otter双A同步配置

    otter双A配置 最近做跨国服务器的数据同步,用了阿里的otter开源框架,遇到了不少问题,写一下文档为以后做参考. 第一步: 下载所需的文件 :otter,zookeeper,aria2 otte ...

  9. canal demo搭建全记录

    一.环境介绍 canal是阿里开源的中间件,主要用于同步mysql数据库变更.具体参见:https://github.com/alibaba/canal/releases 搭建环境: vmware c ...

随机推荐

  1. Promise小书(长文)

    promise基础 Promise是异步编程的一种解决方案.ES6 Promise的规范来源于Promises/A+社区,它有很多版本的实现. Promise比传统的解决方案(回调函数和事件)更合理和 ...

  2. python generator(生成器)

    a=(x*2 for x in range(1000)) # print(a.next())#python2使用 print(a.__next__()) #python3使用 print(next(a ...

  3. MapReduce极简教程

    一个有趣的例子 你想数出一摞牌中有多少张黑桃.直观方式是一张一张检查并且数出有多少张是黑桃?   MapReduce方法则是: 给在座的所有玩家中分配这摞牌 让每个玩家数自己手中的牌有几张是黑桃,然后 ...

  4. 远程无法访问linux Mysql解决方案

    在网上有很多关于这个的解决方案,我也采用了 写的比较详细的如: 1. 改表法.可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更 ...

  5. 认识:ThinkPHP的编译缓存文件~runtime.php

    1.定义单入口文件(index.php) 在单入口index.php中不定义这两项时,会生成编译缓存文件~runtime.php define('RUNTIME_PATH','./App/Temp/' ...

  6. React Router 按需加载+服务器渲染的闪屏问题

    伴随着React协议的『妥协』(v16采用MIT),React为项目的主体,这个在短期内是不会改变的了,在平时使用过程中发现了如下这个问题: 在服务器渲染的时候,刷新页面会出现闪屏的现象(白屏一闪而过 ...

  7. http://codeforces.com/contest/838/problem/A

    A. Binary Blocks time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...

  8. STM8学习

    今天正式学习STM8,用的是风驰STM8S208R开发板. 在编译例程遇到了如下这样的问题. " #error clnk debug\stm8s_demo.lkf:47 can't open ...

  9. Ubuntu访问window下的磁盘分区出现“Error mounting /dev/sda5 at/media”错误的解决方法

    我装ubuntu之前,电脑上安装了windows 10,为了装ubuntu,在window 10下的磁盘工具分配了30G的磁盘空间.安装完Ubuntu之后,访问window 10的磁盘分区出现“Err ...

  10. CentOS7 Redis安装

    Redis介绍 1.安装Redis 官方下载地址:http://download.redis.io 使用Linux下载:wget http://download.redis.io/redis-stab ...