redis-cluster (5.X)集羣擴容

最近在工作中需要對redis集羣擴容,在網上搜了些帖子都是3.X,4.X版本的,由於公司使用的是5.X版本,於是乎,久久無果.最後按照官網操作了一下還是挺簡單的

要擴容,先添加主節點,然後再分配hash槽,然後再添加從節點.
注:此處redis-server和redis-cli文件在redis根目錄/src下


一.添加主節點

1.從原有的集羣拷貝實例

2.啓動實例

./src/redis-server ./redis.conf

 redis.conf 注意修改端口

3.添加節點

./src/redis-cli --cluster add-node 127.0.0.1:7000 xxx.xxx.xxx.xxx:7000

此時新添的節點:
    ①由於沒有分配的哈希槽,因此不保存任何數據。
    ②因爲它是沒有分配插槽的主機,所以當從機要成爲主機時,它不會參與選舉過程

4.分配hash槽

① 開始重新分片

redis-cli --cluster reshard 127.0.0.1:7000

鍵入上面的命令後會出現一下語句,意思是你準備重新分配多少個hash槽

How many slots do you want to move (from 1 to 16384)?

② 輸入1-16384 需要重新分配多少個哈希槽

③ 輸入哈希槽的目標節點id

④ 被移動的哈希槽的原節點  如果原來的所有節點是源節點 直接輸入all  也可以指定源節點,依次輸入源節點後輸入 done 結束
二.添加從節點

1.啓動實例(端口我設置的7001)

2.節點添加爲副本

./src/redis-cli --cluster add-node 127.0.0.1:7001 xxx.xxx.xxx.xxx:7000 --cluster-slave --cluster-master-id 48c711cf275d4e2e849c5b5e094ddafe694d8534

後面的uuid,是主節點在集羣的節點id,輸入上述重新分片的命令可以查看

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章