codis/redis数据数据迁移至阿里云redis服务器

时间:2022-07-03 06:31:02

本次迁移采用了唯品会的开源工具RMT

1.阿里云redis服务器的购买

注:要和生产上数据的内存大小一致 不然有些key会迁移失败

codis/redis数据数据迁移至阿里云redis服务器

很明显的OOM报错

2.迁移机器的cpu要足够  迁移会有一段时间的负载上升 对迁移机器的IOPS有要求

rmt_redis.c:1474 Error: I/O error reading bulk count from MASTER   

这种报错你就需要查看一下 迁移codis服务器的性能了

3.RMT(redis-migrate-tool)工具的安装

git clone https://github.com/vipshop/redis-migrate-tool.git

cd redis-migrate-tool

autoreconf -fvi  (没有的话yum一下)

./configure

make

4.RMT的配置

[source]
type: single
servers:
- codis:端口

[target]
type: single
servers:
 - ali.redis.rds.aliyuncs.com:端口
 redis_auth:密码
[common]
listen: 0.0.0.0:8888
mbuf_size: 1024

5.RMT启动

redis-migrate-tool -c rmt.conf -o rmt.log -d

6.RMT日志

出现如下说明 开始备份了

540350520268102-16856.rdb write complete

7.检查

通知状态页和 dbsize 确定 Key 数量是否一致 (初始同步完成) 执行 redis-cli -p 8888 info 确认

# 为 1
all_rdb_received:1 all_rdb_parsed:1 # Codis group 数量 rdb_received_count:2 rdb_parsed_count:2 

配置服务连接 Redis 实例,检查 Codis 连接,知道所有连接断开,执行 redis-cli -p 8888 info 确认

# 为1
all_rdb_received:1 all_rdb_parsed:1 # Codis group 数量 rdb_received_count:2 rdb_parsed_count:2 # 一致 total_msgs_recv:27005 total_msgs_sent:27005 # 为0 total_mbufs_inqueue:0 total_msgs_outqueue:0

 

 具体配置文件可以参考:https://blog.csdn.net/ahzxj2012/article/details/74347984