遷移方案步驟
部署新節(jié)點redis 實例。(注意部署以后是單實例,不用創(chuàng)建成集群)
例如:
舊環(huán)境:
192.168.3.5:7000 M
192.168.3.5:7001 M
192.168.3.5:7002 M
192.168.3.5:7003 S
192.168.3.5:7004 S
192.168.3.5:7005 S
創(chuàng)新互聯(lián)公司是一家從事企業(yè)網(wǎng)站建設(shè)、成都網(wǎng)站制作、網(wǎng)站設(shè)計、行業(yè)門戶網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計制作的專業(yè)網(wǎng)站制作公司,擁有經(jīng)驗豐富的網(wǎng)站建設(shè)工程師和網(wǎng)頁設(shè)計人員,具備各種規(guī)模與類型網(wǎng)站建設(shè)的實力,在網(wǎng)站建設(shè)領(lǐng)域樹立了自己獨特的設(shè)計風(fēng)格。自公司成立以來曾獨立設(shè)計制作的站點1000多家。
新環(huán)境:
192.168.3.6:7000 M
192.168.3.6:7001 M
192.168.3.6:7002 M
192.168.3.6:7003 S
192.168.3.6:7004 S
192.168.3.6:7005 S
將新節(jié)點redis 添加到老集群中。(添加master 節(jié)點)
redis-trib.rb add-node 192.168.3.6:7000 192.168.3.5:7000
redis-trib.rb add-node 192.168.3.6:7001 192.168.3.5:7000
redis-trib.rb add-node 192.168.3.6:7002 192.168.3.5:7000
將新節(jié)點redis 添加到老集群中。(添加slave 節(jié)點)
redis-trib.rb add-node --slave 192.168.3.6:7003 192.168.3.6:7000
redis-trib.rb add-node --slave 192.168.3.6:7004 192.168.3.6:7001
redis-trib.rb add-node --slave 192.168.3.6:7005 192.168.3.6:7002
檢查集群主從節(jié)點信息
redis-cli -p 7000 -a 'password' cluster nodes
檢查集群狀態(tài)()是否為ok
redis-cli -p 7000 -a 'password' cluster nodes
查看redis 集群master 節(jié)點
redis-cli -p 7000 -a 'password' cluster nodes | grep master
查看集群信息
./redis-trib.rb info 192.168.3.5:7000
集群進行遷移
./redis-trib.rb reshard 192.168.3.5:7000
備注:將所有slot遷移至一個新的集群master 節(jié)點。
輸入:all
輸入slot: 16384
遷移至node_id: 614272e21df1cbbcda117f277ff7baa075b3d15e (遷移的新節(jié)點id)
將槽位均勻分片給新的剩余master 節(jié)點
./redis-trib.rb reshard 192.168.3.5:7000
./redis-trib.rb reshard 192.168.3.5:7001
./redis-trib.rb reshard 192.168.3.5:7002
檢查節(jié)點遷移是否正常
/redis-trib.rb echek 192.168.3.5:7000
刪除老節(jié)點信息(先刪除從節(jié)點,然后再刪除主節(jié)點)
刪除從節(jié)點
/redis-trib.rb del-node 192.168.3.5:7000 3c0bb15b23407f7eb6f8c5a6a2a4c9ffb7065098
/redis-trib.rb del-node 192.168.3.5:7001 32afb3fec4ecad4bd33573a45754616324a9311b
/redis-trib.rb del-node 192.168.3.5:7002 5f2018a5a56f3e4cfc76df566e721ca7ace8bd83
刪除主節(jié)點(同上)
注意:del-node 后 老環(huán)境redis 進程shutdown,集群失效!?。?/p>
檢查集群可用性,以及數(shù)據(jù)完整性
/redis-trib.rb check 192.168.3.5:7000
/redis-trib.rb info 192.168.3.5:7000
redis-cli -p 7000 -a 'password' cluster nodes
redis-cli -p 7000 -a 'password' cluster info
親測好用!?。。?!