一、上云步骤介绍

1、Redis上云准备

在这里插入图片描述

2、停机迁移准备

在这里插入图片描述

三、Redis数据同步到公有云

1、环境准备

机房redis集群:

192.168.184.161 9001 9002 9003
192.168.184.162 9001 9002 9003
192.168.184.163 redis-shake

在这里插入图片描述

2、申请云上Redis

(1)产品参数选择

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
稍等一会,如下就创建完成了

在这里插入图片描述

(2)设置白名单

这样的话,机房的redis就能连接上云上的redis了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(3)申请公网访问的地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、安装配置redis-shake

(1)下载安装

在163安装redis-shake,可参考:Redis数据迁移

(2)修改配置文件

cd /data/redisshake
vim shake.toml

修改如下内容:

[sync_reader]
cluster = true            # set to true if source is a redis cluster
address = "192.168.184.161:9001" # when cluster is true, set address to one of the cluster node
username = ""              # keep empty if not using ACL
password = "admin" 

[redis_writer]
cluster = false            # set to true if target is a redis cluster
address = "r-gc7o62i67q3wqgelefpd.redis.cn-chengdu.rds.aliyuncs.com:6379" # when cluster is true, set address to one of the cluster node
username = ""              # keep empty if not using ACL
password = "Twm@183465"

在这里插入图片描述
这里下面的就是云上的redis的地址,来着这里:
在这里插入图片描述

(3)测试连接

在163节点测试能否连接上云上的redis

redis-cli -p 6379 -a Twm@183465 -h r-gc7o62i67q3wqgelefpd.redis.cn-chengdu.rds.aliyuncs.com
keys *

在这里插入图片描述

(4)开启同步

nohup ./redis-shake shake.toml &

在这里插入图片描述

(5)查看日志

cd /data/redisshake
tail -100f nouhup.out

在这里插入图片描述

4、上云前准备

(1)检查数据是否同步

机房写入数据,161节点进行登录

redis-cli -p 9001 -a admin -c
set dba_test 12345

在这里插入图片描述

云上查看数据

redis-cli -p 6379 -a Twm@183465 -h r-gc7o62i67q3wqgelefpd.redis.cn-chengdu.rds.aliyuncs.com
keys *
get dba_test

在这里插入图片描述

(2)增加监控和备份

在这里插入图片描述

(3)给云上客户端增加白名单

在这里插入图片描述

五、迁移过程

1、查看A机房Redis数据库是否有连接

161节点编辑脚本检查是否有连接

cd /root
vim get_redis_connection.sh

脚本内容如下:

#!/bin/bash
redis_host="192.168.184.161"
redis_port=9001
redis_pass="admin"

# 获取主节点信息
cluster_info=$(redis-cli -h $redis_host -p $redis_port -a $redis_pass cluster nodes |grep master|cut -d' ' -f2|cut -d'@' -f1)

# 遍历集群中的每个主节点
for node in $cluster_info; do
    echo $node
    host=`echo $node|cut -d':' -f1`
    port=`echo $node|cut -d':' -f2`
    redis-cli -h $host -p $port -a $redis_pass client list
    echo "==============="
done

在这里插入图片描述

执行脚本

cd /root
chmod +x get_redis_connection.sh
sh get_redis_connection.sh

在这里插入图片描述

2、确定是否有同步延迟

机房写入数据,然后云上进行查看

3、停止同步

停止Redis-shake进程

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐