redis集群添加刪除節點


Redis3.0集群添加節點

1:首先把需要添加的節點啟動

cd /usr/local/cluster/

mkdir 7006

cp /usr/local/cluster/redis.conf  /usr/local/cluster/7006/

cd /usr/local/cluster/7006/

vi redis.conf

##修改redis.conf中的port參數的值為7006

redis-server redis.conf

 

2:執行以下命令,將這個新節點添加到集群中

cd /usr/local/redis3.0/src/

./redis-trib.rb add-node 192.168.1.160:7006 192.168.1.160:7000

 

3:執行命令redis-cli -c -p 7000 cluster nodes,查看剛才新增的節點

 

 

4:增加了新的節點之后,這個新的節點可以成為主節點或者是從節點

 4.1 把這個節點變成主節點,使用redis-trib程序,將集群中的某些哈希槽移動到新節點里面,    這個新節點就成為真正的主節點了。

執行下面的命令對集群中的哈希槽進行移動

cd /usr/local/redis3.0/src

./redis-trib.rb reshard 192.168.1.160:7000

系統會提示我們要移動多少哈希槽,這里移動1000個

然后還需要指定把這些哈希槽轉移到哪個節點上,

輸入我們剛才新增的節點的ID

f32dc088c881a6b930474fc5b52832ba2ff71899

然后需要我們指定轉移哪幾個幾點的哈希槽

 

輸入all 表示從所有的主節點中隨機轉移,湊夠1000個哈希槽

然后再輸入yes,redis集群就開始分配哈希槽了。

至此,一個新的主節點就添加完成了,執行命令查看現在的集群中節點的狀態

redis-cli -c -p 7000 cluster nodes

4.2:把這個節點變成從節點

前面我們已經把這個新節點添加到集群中了,現在我們要讓新節點成為192.168.1.160:7001的從節點,只需要執行下面的命令就可以了,命令后面的節點ID就是192.168.1.160:7001的節點ID

redis-cli -c -p 7006 cluster replicate 0b00721a509444db793d28448d8f02168b94bd38

使用下面命令來確認一下192.168.1.160:7006是否已經成為192.168.1.160:7001的從節點

redis-cli -p 7000 cluster nodes | grep slave | grep 0b00721a509444db793d28448d8f02168b94bd38

看到下面圖片中的情況就表示添加成功

 

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Redis3.0集群刪除節點

1:如果刪除的節點是主節點,這里我們刪除192.168.1.160:7006節點,這個節點有1000個哈希槽

首先要把節點中的哈希槽轉移到其他節點中,執行下面的命令

cd /usr/local/redis3.0/src

./redis-trib.rb reshard 192.168.1.160:7000

系統會提示我們要移動多少哈希槽,這里移動1000個,因為192.168.1.160:7006節點有1000個哈希槽

然后系統提示我們輸入要接收這些哈希槽的節點的ID,這里使用192.168.1.160:7001的節點ID

然后要我們選擇從那些節點中轉出哈希槽,這里一定要輸入192.168.1.160:7006這個節點的ID,最后輸入 done  表示輸入完畢

最后一步,使用下面的命令把這個節點刪除

cd /usr/local/redis3.0/src/

./redis-trib.rb del-node 192.168.1.160:7000  需要刪除的節點ID

2:如果節點是從節點的,直接使用下面的命令刪除即可。

cd /usr/local/redis3.0/src/

./redis-trib.rb del-node 192.168.1.160:7000 需要刪除的節點ID


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM