rediscluster全局数据_redis迁移,从redis cluster集群迁移数据到另外一个redis cluster集群...
redis遷移,redis集群遷移$?yum?install?automake?libtool?autoconf?bzip2?-y
$?git?clone?https://github.com/vipshop/redis-migrate-tool
$?cd?redis-migrate-tool
$?autoreconf?-fvi
$?./configure
$?make
2、配置文件從redis cluster集群遷移數(shù)據(jù)到另外一個redis cluster集群 rmt.conf[source]
type:?redis?cluster
servers:
-?127.0.0.1:8379
[target]
type:?redis?cluster
servers:
-?127.0.0.1:7379
[common]
listen:?0.0.0.0:8888
運(yùn)行
$ src/redis-migrate-tool -c rmt.conf -o log -d
檢查狀態(tài)
$ redis-cli -h 127.0.0.1 -p 8888 info
查看所有key
KEYS *
查看key總數(shù)
DBSIZE
清空所有數(shù)據(jù)
FLUSHALL
5、數(shù)據(jù)校驗:當(dāng)數(shù)據(jù)遷移完成后,就可以進(jìn)行數(shù)據(jù)遷移后的檢查操作$?src/redis-migrate-tool?-c?rmt.conf?-o?log?-C?"redis_check"
Check?job?is?running...
Checked?keys:?1000
Inconsistent?value?keys:?0
Inconsistent?expire?keys?:?0
Other?check?error?keys:?0
Checked?OK?keys:?1000
All?keys?checked?OK!
Check?job?finished,?used?1.041s
6、如何完成業(yè)務(wù)切換?
如果是異構(gòu)集群的遷移,更改redis驅(qū)動/客戶端和修改代碼,重新發(fā)布是必然的事情。如果是同構(gòu)集群,做配置發(fā)布就可以。如果沒有做重啟發(fā)布,等待源集群沒有連接之后,可以關(guān)閉RMT進(jìn)程(kill)。或者重啟應(yīng)用,強(qiáng)制斷開長連接。
五、注意事項
1、重要的事說三遍,RMT遷移數(shù)據(jù)到twemproxy,需要保持rmt.conf 中 [target]? hash、distribution、servers 三個參數(shù)和目標(biāo)集群的twemproxy配置嚴(yán)格一致。
2、遷移中和業(yè)務(wù)切換之前,請反復(fù)觀察“-o rmt.log”日志信息,確認(rèn)是否有異常。
3、業(yè)務(wù)切換之前,請充分檢查,特別是數(shù)據(jù)的一致性。
4、RMT 建議部署在單獨(dú)空閑機(jī)器上,同目的集群在同一個網(wǎng)段(跨機(jī)房遷移數(shù)據(jù),可以提高遷移速度)。千萬不要部署在源集群所在的機(jī)器,防止資源不足,比如內(nèi)存,帶寬,IOPS。
5、注意RDB傳輸是否超時。
6、redis client buf中的slave項,設(shè)置足夠大的buffer size和超時時間。
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的rediscluster全局数据_redis迁移,从redis cluster集群迁移数据到另外一个redis cluster集群...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dll文件复制和替换不了_重新编译mon
- 下一篇: c++ 获取文件的hashcode_js