otter 数据库单向同步和双向同步
OtterManager安装配置
MySQL安装
安装MySQL:
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm rpm -ivh mysql57-community-release-el7-9.noarch.rpm yum install mysql-server |
初始化MySQL:
mysqld --initialize |
启动MySQL:
systemctl start mysqld |
查看MySQL运行状态:
systemctl status mysqld |
验证MySQL安装:
[root@host]# mysqladmin –version mysqladmin Ver 8.23 Distrib 5.0.9-0, for redhat-linux-gnu |
设置MySQL密码:
[root@host]# mysqladmin -u root password "newPassword"; |
2 安装配置JDK
zookeeper和Otter-manager都依赖java环境
安装JDK
wget http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz tar -zxvf jdk-7u79-linux-x64.tar.gz mv jdk1.7/ /usr/local/ |
设定JAVA_HOME环境变数
vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.7 export JRE_HOME=/usr/local/jdk1.7/jre export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib: export PATH=$JAVA_HOME/bin:$PATH |
执行命令使其生效
source /etc/profile
执行java -version会看到如下版本信息证明已经安装成功
[root@localhost local]# java -version java version“1.8.0_65” Java(TM)SE Runtime Environment(build 1.8.0_65-b17) Java HotSpot(TM)64-Bit Server VM(build 25.65-b01,mixed mode) |
Zookeeper安装
安装配置zookeeper单机模式
cd /app/work wget http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz tar zxvf zookeeper-3.4.5.tar.gz -C /app/work/zookeeper mv zookeeper-3.4.5 zookeeper cd /app/work/zookeeper/ mv conf/zoo_sample.cfg conf/zoo.cfg mkdir -p /app/work/data/zookeeper/{data,log} cd /app/work/data/zookeeper/data echo 1 > myid #将本节点id设定到data/myid档案中 |
修改bin/zkEnv.sh指令码:
将ZOO_LOG_DIR=”.”修改为 ZOO_LOG_DIR=“/app/work/data/zookeeper/log” 将ZOO_LOG4J_PROP=”INFO,CONSOLE”修改为 ZOO_LOG4J_PROP=“INFO,ROLLINGFILE” |
修改bin/zkServer.sh指令码:
将ZOOBIN=”${BASH_SOURCE-$0}”修改为 ZOOBIN=`readlink -f“${BASH_SOURCE-$0}”` 修改bin/zkCli.sh指令码: 将ZOOBIN=”${BASH_SOURCE-$0}”修改为 ZOOBIN=`readlink -f“${BASH_SOURCE-$0}” |
建立软联机到PATH:
ln -s /app/work/zookeeper/bin/zkServer.sh /usr/local/bin/zk-server ln -s /app/work/zookeeper/bin/zkCli.sh /usr/local/bin/zk-cli |
使用如下命令即可启动zookeeper:
zk-server start
以下输出为执行成功
JMX enabled by default ... Starting zookeeper…STARTED |
Manager安装
开始安装manager
mkdir /app/work/manager cd /app/work/manager wget https://github.com/alibaba/otter/releases/download/v4.2.15/manager.deployer-4.2.15.tar.gz tar zxvf manager.deployer-4.2.15.tar.gz -C /app/work/manager |
安装manager的数据库
wget https://raw.github.com/alibaba/otter/master/manager/deployer/src/main/resources/sql/otter-manager-schema.sql mysql -uroot -p #输入mysql密码 source /app/work/manager/otter-manager-schema.sql |
修改vim conf/otter.properties配置档案
## otter manager domain name #修改为正确访问ip(内网访问配置内网地址外网访问配置外网地址),生成URL使用 otter.domainName = 127.0.0.1 ## otter manager http port otter.port = 8080 ## otter manager database config,修改为正确数据库信息 otter.database.driver.url = jdbc:mysql://127.0.0.1:3306/otter otter.database.driver.username = root otter.database.driver.password = password ## default zookeeper address,修改为正确的地址,手动选择一个地域就近的zookeeper丛集列表,zookeeper预设端口2181 otter.zookeeper.cluster.default = 127.0.0.1:2181 |
启动manager
./bin/startup.sh
检查日志 logs/manager.log
如下输出则为启动成功:
浏览器访问 http://ip:8080/ 出现如下界面说明Manager安装成功
OtterNode安装配置
Aria2安装
aria2是一个档案信道来保证需要同步的数据通过极快的速度同步到需要同步的服务器上
aria2安装第一种方式
cd /app/work/ wget http://sourceforge.net/projects/aria2/files/stable/aria2-1.17.1/aria2-1.17.1.tar.gz tar zxvf aria2-1.17.1.tar.gz mv aria2-1.17.1 aria2 cd aria2 ./configure make make install |
验证安装是否成功
aria2c -v 输出 aria2 version 1.17.1 Copyright(C)2006,2013 Tatsuhiro Tsujikawa |
第二种安装方式(主要解决第一种方式安装时tar包编译不通过的情况):
在有网络服务器上执行下面的命令,意思就是下载aria2的相关rpm包到tmp目录下。
yum install --downloadonly --downloaddir=/tmp aria2
然后把下载好的rpm传到要想安装aria2 的服务器上
执行命令 rpm –ivh aria2的相关包(可以使用*.rpm)--force --nodeps
Node安装
node主要负责接受manage下发任务的处理
安装
mkdir /app/work/node wget https://github.com/alibaba/otter/releases/download/v4.2.15/node.deployer-4.2.15.tar.gz tar xf node.deployer-4.2.13.tar.gz –C /app/work/node cd /app/work/node/ |
nid配置node的ID多个node协同工作时不能重复
echo 1 > conf/nid
修改配置档案vim conf/otter.properties
#主要是确认联机manager地址是否正确(这里使用服务器内网地址进行配置) otter.manager.address =127.0.0.1:1099(根据前面配置的Manager地址修改) |
顺序是先配置好manager在开启node,因为启动了node要是manager没有配置是没法建立联机的.
Manager、Node、Zookeepper关联
首先打开Manager管理页面http://ip:8080/
使用默认密码admin/admin登陆
机器管理—>zookeeper配置 选中点击:
添加Zookeeper
添加Zookeeper地址并保存
机器管理—>NODE管理 选中点击—>添加NODE:
配置好node的一些参数:
机器名称:可以随意定义,方便自己记忆即可
机器ip:对应node节点将要部署的机器ip,如果有多ip时,可选择其中一个ip进行暴露.(此ip是整个丛集通信的入口,实际情况千万别使用127.0.0.1,否则多个机器的node节点会无法识别)
机器端口:对应node节点将要部署时启动的数据通信端口,建议值:2088
下载端口:对应node节点将要部署时启动的资料下载端口,建议值:9090
外部ip:对应node节点将要部署的机器ip,存在的一个外部ip,允许通信的时候走公网处理。
Zookeeper地址:为提升通信效率,不同机房的机器可选择就近的zookeeper地址
node这种设计,是为解决单机部署多例项而设计的,允许单机多node指定不同的端口“:
以上配置完成就可以启动node:
cd /app/work/node/bin/
./startup.sh
启动前后NODE状态由未启动变为已启动
zookeeper页面点选”查看”选项可以看到zookeeper已经在执行了:
注:如果过程中出现问题的地方可以查看node/logs中的日志
配置管理
创建一个测试库
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; |
数据源配置
第一步数据源配置—>添加(添加完成保存前一定要测试验证一下)
同样的方式新增另一个数据源slave
数据表配置
首先添加master数据表
添加完成保存前一定要测试验证一下
同样方式添加slave数据表
canal配置
添加canal
注意需要双向同步则需要继续添加slave最为数据源
单向同步管理配置
同步规则配置
添加Channel
点击Channel名字进入内部设置
点击Pipline名字进入内部设置(映射关系配置同步的原表和目标表)
开启同步并验证
开启
验证
双向同步管理配置
双写配置
如果双写,需要执行下面步骤
点击使用文档-》数据库初始化页面。
在双机房的数据库(需要同步数据的数据库,而非manager自己的数据库)同时执行初始化SQL。
同步规则配置
还需要添加一个canal 数据源为你后面需要同步的数据库
添加Channel
点击Channel名字进入内部设置
添加第一个Pipline(master2slave)
添加第二个Pipline(slave2master)
点击Pipline名字进入内部设置(映射关系配置同步的原表和目标表)
两个Pipline映射关系都配置(注意选择正确的同步方向)
- 开启同步并验证
开启
验证
otter 数据库单向同步和双向同步相关推荐
- 基于阿里云盘二次开发实现磁盘同步,双向同步
基于阿里云盘实现磁盘同步 最近也是研究了一下阿里云盘也是把网盘的各种协议,在python上实现了一遍,也是大概了解了一些阿里在某些方面是如何处理的,比如:如何避免网盘数据泄露.如何实现快传.大文件传输 ...
- Otter 双向同步mysql
一.Otter目前支持了什么 1. 单向同步, mysql/oracle互相同步 2. 双向同步,无冲突变更 3. 文件同步,本地/aranda文件 4. 双A同步,冲突检测&冲突补救 5. ...
- centos mysql单向同步,虚拟机下实现Centos5.6下Mysql双向同步配置
环境 注意虚拟机环境下的NAT模式,务必把IP设置成固定的 Master操作系统:Centos 5.6 Ip:192.168.214.138 Slave操作系统:Centos 5.6 Ip:192.1 ...
- 达梦数据库-搭建DMHS双向同步
作为一个达梦的初学者,写这篇文章的目的是为了把学到的新知识做个总结梳理,在整理中查缺补漏,也希望大家看了我的文章能有收获,如有错误的地方欢迎指出. 数据同步工具 (DMHS),可实现同构.异构数据库间 ...
- 基于微软Synchronization Services双向同步技术在企业项目中的架构应用研究
项目应用场景: 某客户是一个大型集团企业的信息部门,掌管着企业几百台服务器,并且以后会不断扩充: 为了更好的维护信息办的服务器:信息部门需要开发一套维护系统,来记录各个服务器的相关状态信息(如, ...
- DMHS搭建、以及DMHS 双向同步
产品介绍 达梦数据实时同步软件(以下简称 DMHS)是支持异构环境的高性能.高可靠.高可扩展数据库实时同步复制系统.该产品采用基于日志的结构化数据复制技术,不依赖主机上源数据库的触发器或者规则,对主机 ...
- CentOS7部署文件双向同步工具(unison)
1,简介 Unison是一款跨windows/Linux/MAC OS平台的文件同步工具,不仅支持本地对本地同步,也支持通过SSH,RSH和Socket等网络协议与完程主机进行同步,最主要的是,Uni ...
- 国产ETL工具/ETL 产品 (BeeDI ) 集团财务 双向同步 审核平台
项目需求核心 实时同步.双向同步.部分同步.日志解析同步.断点续传 项目需求概要 35分公司财务数据实时同步汇总中心平台
- MySQL 数据库双向同步复制
MySQL 复制问题的最后一篇,关于双向同步复制架构设计的一些设计要点与制约. 问题和制约 数据库的双主双写并双向同步场景,主要考虑数据完整性.一致性和避免冲突.对于同一个库,同一张表,同一个记录中的 ...
最新文章
- HTTPS 的工作原理
- Codechef SEAARC Sereja and Arcs (分块)
- java 绘制动态小球_JavaScript动画实例:动感小球
- 四种有能力取代Cookies的客户端Web存储方案
- python工作目录,如何使用python 3获取当前工作目录?
- python可变类型和不可变深浅拷贝类型_理解python可变类型vs不可变类型,深拷贝vs浅拷贝...
- 管理感悟:不要做自己想做的事情
- 自动售货机软件工程课设_饮料自动售货机系统实验.docx
- 计算机网络体系结构中的环节,ppt课件-第二章计算机网络体系结构.ppt
- c语言中fprintf的作用,c语言中fprintf的用法
- 光电耦合器简介以及作用
- php 处理eml,php读取eml实例、php解析eml、eml解析成网页
- 关于服务器,看这一篇就够了!
- java基础—综合练习
- 后序线索化二叉树及遍历(图解)
- python实现 pdf转png格式
- 超微服务器如何查看服务器信息,超微服务器
- 彻底弄清补码加减法运算,正数、负数位移运算原理
- 什么是同态加密?为什么它不是主流加密算法?
- 为什么电磁炉加热一会就停了 电磁炉加热原理与维修技巧一点通_电磁炉电路图讲解