暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

电科金仓KFS安装部署-RabbitMQ作为目标端

原创 KFS补给站 2024-11-12
246

关键字:

金仓数据库、KingbaseFlySync、KFS、同步程序、安装部署、RabbitMQ

一、概述

Kingbase FlySync 支持RabbitMQ 作为数据同步的目标端。本文以下部分对RabbitMQ作为目标端时的部署过程进行阐述。

二、安装前准备

前置条件:已经完成RabbitMQ数据库的安装部署

2.1 环境信息

参数名 参数值
源端数据库IP地址 10.10.3.199
源端KUFL端口 3120
目标端数据库IP地址 10.10.3.199
安装KFS同步程序IP地址 10.10.3.199
RabbitMQ数据库监听端口 5672
可用内存 >4GB
可用储存空间 >1GB+7*每日数据增量

2.2 端口开放

1、临时关闭防火墙服务(服务器重启后失效)
service firewalld stop
永久关闭防火墙服务
chkconfig firewalld off
图片.png
2、若有特殊情况如业务要求需要开启防火墙,则需要保证KFS同步程序所需端口可用,若不可用,可以在后续配置中修改默认端口。
telnet xx.xx.xx.xx 端口号
Kingbase FlySync同步服务运行所需的默认端口如下:

端口 描述
11000/11001 KFS远程管理/监控RMI端口
3112 KUFL传输接口

2.3 ruby环境配置

上传ruby包到KFS同步程序安装服务器下并解压:
unzip rbenv_2.2.2_linux_x64.zip
图片.png
然后在KFS同步程序安装用户的环境变量中进行配置

vi ~/.bash_profile
export RUBY_HOME=ruby绝对路径
export PATH=$RUBY_HOME/bin:$PATH
source ~/.bash_profile

2.4 安装包准备

准备需要安装的Kingbase FlySync同步程序安装包和license文件。

三、安装执行

3.1 上传并解压KFS同步程序

tar –zxvf KingbaseFlysync-Vxxxxxxxxxxxxxx-replicator.tar.gz
图片.png

3.2 配置flysync.ini

在$HOME目录下新建flysync.ini文件,示例如下:

[defaults]
install-directory = /home/flysync/replicator
profile-script = ~/.bash_profile
rmi-port = 11000

[s_rabbitmq_3121]
kufl-port = 3121
datasource-type = rabbitmq
role = slave
replication-host = 10.10.3.199
replication-port = 5672
replication-user = guest
replication-password = guest
repl_auto_recovery_max_attempts = 30
repl_auto_recovery_delay_interval = 60s
repl_auto_recovery_reset_interval = 300s
repl_mode = normal
property = replicator.store.kufl.dataSource=file_metadata
property = replicator.applier.dbms.msgEncoding=UTF-8
property = replicator.applier.dbms.useTemplate=false
property = replicator.applier.dbms.dmlTemplatePath=/home/flysync/replicator/flysync/flysync-replicator/support/msg-template/dml-mq.vm
property = replicator.applier.dbms.loadConfirm=false
property = replicator.applier.dbms.batchConfirmSize=100
property = replicator.applier.dbms.loadMode=sql
property = replicator.privileged.slave=true
property = replicator.extractor.kufl-remote.compressType=none
property = 
undefinedproperty = replicator.applier.dbms.ddlQueue=flysync_ddl
svc-remote-filters = rename
master = localhost199
members = localhost199
master-kufl-port = 3120
mq-virtualhost = /

参数说明:

[defaults]	
install-directory=/home/fly/kfs	同步程序安装目录
profile-script=~/.bash_profile	
rmi-port=11000	rmi端口号,默认为11000
	
[s_rabbitmq_3121]	服务名
role=slave	同步角色,源端为master,目标端为slave
master=localhost199	源端服务的安装ip/hostname
master-kufl-port=3114	源端同步程序KUFL端口号
members=10.10.3.200	本服务的安装ip
kufl-port=3114	KUFL端口号
replication-host=10.10.3.199	数据库ip
replication-port=5672	数据库端口
replication-user=guest	数据库用户名
replication-password=guest	数据库用户密码
datasource-type=rabbitmq	数据库类型
property = replicator.applier.dbms.useTemplate	目标端是否使用格式模板
replicator.applier.dbms.dmlTemplatePath	输出json数据类型使用的格式模板
property = replicator.applier.dbms.loadMode	消息队列目标端数据处理格式
undefinedproperty = replicator.applier.dbms.ddlQueue	设置rabbitmq目标端ddl要写入的队列名
mq-virtualhost	Rabbitmq的虚拟地址

3.3 执行安装

执行解压目录/tools/下的fspm install
图片.png
更新环境配置
source ~/.bash_profile

3.4 上传license文件

上传license文件至$HOME/kfs/目录
图片.png

3.5 启动同步程序

replicator start
图片.png

3.6 查看同步服务情况

fsrepctl services或fsrepctl status(state:online表示服务正常)

图片.png

四、测试验证

执行kufl list 查看接收KUFL并入库的情况
图片.png

目标端队列信息
图片.png

KFS同步程序常见操作命令:

KFS同步程序的启停
replicator start
replicator stop
replicator restart
查看同步服务状态
fsrepctl services
fsrepctl -service 同步服务名 status
同步服务的启停
fsrepctl -service 同步服务名 online
fsrepctl -service 同步服务名 offline
重置KUFL
fsrepctl -service 同步服务名 reset  –all  –y
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论