redis cluster 迁移

redis cluster 迁移

准备

  • 迁移工具,redis shake – https://github.com/alibaba/RedisShake

生成dump文件

  • 找一个机器,可以访问被迁移redis cluster 的机器
  • wget https://github.com/alibaba/RedisShake/releases/download/release-v2.1.1-20210903/release-v2.1.1-20210903.tar.gz
  • tar -zxvf release-v2.1.1-20210903.tar.gz
  • cd release-v2.1.1-20210903
  • 修改配置,vi redis-shake.conf
        #配置source.type, source.address
        #示例
        source.type = cluster
        # 需要配置所有的master
        source.address = 10.1.xx.xx:6379;10.1.xx.xx:6379;10.1.xx.xx:6379
    
        # 更多的配置详情,https://github.com/alibaba/RedisShake/wiki/%E7%AC%AC%E4%B8%80%E6%AC%A1%E4%BD%BF%E7%94%A8%EF%BC%8C%E5%A6%82%E4%BD%95%E8%BF%9B%E8%A1%8C%E9%85%8D%E7%BD%AE%EF%BC%9F
    
  • 执行dump命令 : ./redis-shake.linux -conf=redis-shake.conf -type=dump
  • 文件下多了几个local_dump 文件

恢复数据

  • 一个可以访问目标redis cluster机器
  • wget https://github.com/alibaba/RedisShake/releases/download/release-v2.1.1-20210903/release-v2.1.1-20210903.tar.gz
  • tar -zxvf release-v2.1.1-20210903.tar.gz
  • cd release-v2.1.1-20210903
  • 把上面导出local_dump文件放到当前目录
  • 修改配置,vi redis-shake.conf
        #配置source.input.rdb, target.type, target.address
        #示例
        source.rdb.input = local_dump.0;local_dump.1;local_dump.2
        target.type = cluster
        # 需要配置所有的master
        target.address = 10.1.xx.xx:6379;10.1.xx.xx:6379;10.1.xx.xx:6379
    
        # 更多的配置详情,https://github.com/alibaba/RedisShake/wiki/%E7%AC%AC%E4%B8%80%E6%AC%A1%E4%BD%BF%E7%94%A8%EF%BC%8C%E5%A6%82%E4%BD%95%E8%BF%9B%E8%A1%8C%E9%85%8D%E7%BD%AE%EF%BC%9F
    
  • 执行restore命令 : ./redis-shake.linux -conf=redis-shake.conf -type=restore
  • check 数据是否正确

ps

  1. 迁移后验证同步的正确性的工具
    • https://github.com/alibaba/RedisFullCheck?spm=a2c6h.12873639.0.0.4b897495FRKWKh
  2. 阿里云机器 gcc升级
    • https://www.alibabacloud.com/help/zh/doc-detail/111881.htm
    • 依次运行以下命令可以安装软件包。
       # 先安装scl-utils
       sudo yum install -y scl-utils
       # 打开YUM仓库支持
       sudo yum install -y alinux-release-experimentals
       # 从YUM源安装您需要的软件包,以下示例命令同时安装了SCL插件方式支持的所有开发工具包
       sudo yum install -y devtoolset-7-gcc devtoolset-7-gdb devtoolset-7-binutils devtoolset-7-make
       sudo yum install -y devtoolset-8-gcc devtoolset-8-gdb devtoolset-8-binutils devtoolset-8-make
       sudo yum install -y devtoolset-9-gcc devtoolset-9-gdb devtoolset-9-binutils devtoolset-9-make
    
    • 安装成功后,您即可使用高版本的GCC以及相关工具。示例代码如下:
      # 先查看现有的SCL,需要指定库名,本示例代码中,库名为devtoolset-7
      scl -l devtoolset-7
      # 运行相关的SCL软件
      scl enable devtoolset-7 'gcc --version'
    
  3. 部署redis6.0.8集群
    • https://blog.51cto.com/net881004/2538344
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值