Redis集群迁移工具推荐:redis-migrate-tool

    Redis集群迁移工具,基于redis复制,快速,稳定。

    Redis集群迁移工具推荐:redis-migrate-tool

    特点

    • 快速
    • 多线程
    • 基于redis复制
    • 实时迁移
    • 迁移过程中,源集群不影响对外提供服务
    • 异构迁移
    • 支持Twemproxy集群,redis cluster集群,rdb文件 和 aof文件
    • 过滤功能
    • 当目标集群是Twemproxy,数据会跳过Twemproxy直接导入到后端的redis
    • 迁移状态显示
    • 完善的数据抽样校验

    迁移工具的来源可以是:单独的redis实例,twemproxy集群,redis cluster,rdb文件,aof文件。

    迁移工具的目标可以是:单独的redis实例,twemproxy集群,redis cluster,rdb文件。

    版本说明

    https://github.com/vipshop/redis-migrate-tool #仅支持redis3及以下版本

    https://github.com/tanruixing88/redis-migrate-tool #基于上述版本修改,支持redis4及以上版本

    依赖

    1. yum -y install automake libtool autoconf bzip2

    安装

    1. git clone https://github.com/tanruixing88/redis-migrate-tool.git
    2. redis-migrate-tool
    3. autoreconf -fvi
    4. ./configure
    5. make
    6. cp src/redis-migrate-tool /usr/local/bin/redis-migrate-tool

    配置文件rmt.conf

    配置文件示例:从redis cluster集群迁移数据到twemproxy集群

    1. [source]
    2. type: redis cluster
    3. servers:
    4.  - 127.0.0.1:6379
    5.  - 127.0.0.1:6380
    6.  - 127.0.0.1:6381
    7.  - 127.0.0.1:6382
    8. [target]
    9. type: twemproxy
    10. hash: fnv1a_64
    11. hash_tag: "{}"
    12. distribution: ketama
    13. servers:
    14.  - 127.0.0.1:6380:1 server1
    15.  - 127.0.0.1:6381:1 server2
    16.  - 127.0.0.1:6382:1 server3
    17.  - 127.0.0.1:6383:1 server4
    18. [common]
    19. listen: 0.0.0.0:8888
    20. threads: 2
    21. step: 1
    22. mbuf_size: 1024
    23. source_safe: true

    配置文件示例:从redis cluster集群迁移数据到另外一个cluster集群

    1. [source]
    2. type: redis cluster
    3. servers:
    4.  - 127.0.0.1:8379
    5. [target]
    6. type: redis cluster
    7. servers:
    8.  - 127.0.0.1:7379
    9. [common]
    10. listen: 0.0.0.0:8888

    配置文件示例:从rdb文件恢复数据到redis cluster集群

    1. [source]
    2. type: rdb file
    3. servers:
    4.  - /data/redis/dump1.rdb
    5.  - /data/redis/dump2.rdb
    6.  - /data/redis/dump3.rdb
    7. [target]
    8. type: redis cluster
    9. servers:
    10.  - 127.0.0.1:7379
    11. [common]
    12. listen: 0.0.0.0:8888

    运行

    1. /usr/local/bin/redis-migrate-tool -c rmt.conf -o log -d

    状态

    通过redis-cli连接redis-migrate-tool监控的端口,运行info命令

    1. redis-cli -h 127.0.0.1 -p 8888
    2. 127.0.0.1:8888> info
    3. # Server
    4. version:0.1.0
    5. os:Linux 2.6.32-573.12.1.el6.x86_64 x86_64
    6. multiplexing_api:epoll
    7. gcc_version:4.4.7
    8. process_id:9199
    9. tcp_port:8888
    10. uptime_in_seconds:1662
    11. uptime_in_days:0
    12. config_file:/ect/rmt.conf
    13. # Clients
    14. connected_clients:1
    15. max_clients_limit:100
    16. total_connections_received:3
    17. # Memory
    18. mem_allocator:jemalloc-4.0.4
    19. # Group
    20. source_nodes_count:32
    21. target_nodes_count:48
    22. # Stats
    23. all_rdb_received:1
    24. all_rdb_parsed:1
    25. all_aof_loaded:0
    26. rdb_received_count:32
    27. rdb_parsed_count:32
    28. aof_loaded_count:0
    29. total_msgs_recv:7753587
    30. total_msgs_sent:7753587
    31. total_net_input_bytes:234636318
    32. total_net_output_bytes:255384129
    33. total_net_input_bytes_human:223.77M
    34. total_net_output_bytes_human:243.55M
    35. total_mbufs_inqueue:0
    36. total_msgs_outqueue:0
    37. 127.0.0.1:8888>

    数据校验

    1. /usr/local/bin/redis-migrate-tool -c rmt.conf -o log -C redis_check
    2. Check job is running...
    3. Checked keys: 1000
    4. Inconsistent value keys: 0
    5. Inconsistent expire keys : 0
    6. Other check error keys: 0
    7. Checked OK keys: 1000
    8. All keys checked OK!
    9. Check job finished, used 1.041s

    Thu Feb 28 15:21:35 CST 2019

    • 本文由 发表于 2019-02-28
    • 转载请务必保留本文链接:https://linuxeye.com/472.html
    Nginx Lua Redis防止CC攻击 Linux

    Nginx Lua Redis防止CC攻击

    Nginx Lua Redis防止CC攻击实现原理:同一个外网IP、同一个网址(ngx.var.request_uri)、同一个客户端(http_user_agent)在某一段时间(CCseconds...
    匿名

    发表评论

    匿名网友