日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Redis Cluster集群搭建

發(fā)布時間:2023/12/18 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Redis Cluster集群搭建 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Redis Cluster集群

一、redis-cluster設計

Redis集群搭建的方式有多種,例如使用zookeeper等,但從redis 3.0之后版本支持redis-cluster集群,Redis-Cluster采用無中心結構,每個節(jié)點保存數(shù)據(jù)和整個集群狀態(tài),每個節(jié)點都和其他所有 節(jié)點連接。其redis-cluster架構圖如下:

其結構特點:

? ? ?1、所有的redis節(jié)點彼此互聯(lián)(PING-PONG機制),內部使用二進制協(xié)議優(yōu)化傳輸速度和帶寬。
? ? ?2、節(jié)點的fail是通過集群中超過半數(shù)的節(jié)點檢測失效時才生效。
? ? ?3、客戶端與redis節(jié)點直連,不需要中間proxy層.客戶端不需要連接集群所有節(jié)點,連接集群中任何一個可用節(jié)點即可。
? ? ?4、redis-cluster把所有的物理節(jié)點映射到[0-16383]slot上(不一定是平均分配),cluster 負責維護node<->slot<->value。

? ? ?5、Redis集群預分好16384個桶,當需要在 Redis 集群中放置一個 key-value 時,根據(jù) CRC16(key) mod 16384的值,決定將一個key放到哪個桶中。

?

? ?1、redis cluster節(jié)點分配

?

? ?現(xiàn)在我們是三個主節(jié)點分別是:A, B, C 三個節(jié)點,它們可以是一臺機器上的三個端口,也可以是三臺不同的服務器。那么,采用哈希槽 (hash slot)的方式來分配16384個slot 的話,它們三個節(jié)點分別承擔的slot 區(qū)間是:


? ? ? 節(jié)點A覆蓋0-5460;
? ? ? 節(jié)點B覆蓋5461-10922;
? ? ? 節(jié)點C覆蓋10923-16383.

? ??

? ? ?獲取數(shù)據(jù):

? ? ? 如果存入一個值,按照redis cluster哈希槽的算法:?CRC16('key')%16384 = 6782。 那么就會把這個key 的存儲分配到 B 上了。同樣,當我連接(A,B,C)任何一個節(jié)點想獲取'key'這個key時,也會這樣的算法,然后內部跳轉到B節(jié)點上獲取數(shù)據(jù)?

? ??

? ? ?新增一個主節(jié)點:

? ? ??新增一個節(jié)點D,redis cluster的這種做法是從各個節(jié)點的前面各拿取一部分slot到D上,我會在接下來的實踐中實驗。大致就會變成這樣:
??

? ? 節(jié)點A覆蓋1365-5460
? ? 節(jié)點B覆蓋6827-10922
? ? 節(jié)點C覆蓋12288-16383
? ? 節(jié)點D覆蓋0-1364,5461-6826,10923-12287


? ? ?同樣刪除一個節(jié)點也是類似,移動完成后就可以刪除這個節(jié)點了。

?

??? ?2、Redis Cluster主從模式

? ? ? ? ? redis cluster 為了保證數(shù)據(jù)的高可用性,加入了主從模式,一個主節(jié)點對應一個或多個從節(jié)點,主節(jié)點提供數(shù)據(jù)存取,從節(jié)點則是從主節(jié)點拉取數(shù)據(jù)備份,當這個主節(jié)點掛掉后,就會有這個從節(jié)點選取一個來充當主節(jié)點,從而保證集群不會掛掉。

? ? ? 上面那個例子里, 集群有ABC三個主節(jié)點, 如果這3個節(jié)點都沒有加入從節(jié)點,如果B掛掉了,我們就無法訪問整個集群了。A和C的slot也無法訪問。

? ? ?所以我們在集群建立的時候,一定要為每個主節(jié)點都添加了從節(jié)點, 比如像這樣, 集群包含主節(jié)點A、B、C, 以及從節(jié)點A1、B1、C1, 那么即使B掛掉系統(tǒng)也可以繼續(xù)正確工作。

? ? ?B1節(jié)點替代了B節(jié)點,所以Redis集群將會選擇B1節(jié)點作為新的主節(jié)點,集群將會繼續(xù)正確地提供服務。 當B重新開啟后,它就會變成B1的從節(jié)點。

? ? 不過需要注意,如果節(jié)點B和B1同時掛了,Redis集群就無法繼續(xù)正確地提供服務了。

?

二、redis集群的搭建

? ? 集群中至少應該有奇數(shù)個節(jié)點,所以至少有三個節(jié)點,每個節(jié)點至少有一個備份節(jié)點,所以下面使用6節(jié)點(主節(jié)點、備份節(jié)點由redis-cluster集群確定)。

? ?

? ? ?下面使用redis-3.2.0安裝,下載地址? ?

? ? ?1、安裝redis節(jié)點指定端口

? ? ? ? ?解壓redis壓縮包,編譯安裝

? ? ? ? ?

[plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-3.2.0]#?tar?xzf?redis-3.2.0.tar.gz??
  • [root@localhost?redis-3.2.0]#?cd?redis-3.2.0??
  • [root@localhost?redis-3.2.0]#?make??
  • [root@localhost?redis01]#?make?install?PREFIX=/usr/andy/redis-cluster??
  • ?

    ? ? ? ??在redis-cluster下?修改bin文件夾為redis01,復制redis.conf配置文件

    ? ? ? ?

    ? ? ?配置redis的配置文件redis.conf

    ?

    ? ? ? ? ?daemonize yes #后臺啟動

    ? ? ? ??port 7001 #修改端口號,從7001到7006

    ? ? ? ??cluster-enabled yes #開啟cluster,去掉注釋

    ? ? ? ? cluster-config-file nodes.conf

    ? ? ? ??cluster-node-timeout 15000

    ? ? ? ??appendonly yes

    ?

    ?

    ? ? ? ? 復制六份,修改對應的端口號

    ? ? ? ??

    ?

    ??? ?2、安裝redis-trib所需的 ruby腳本

    ? ? ? ? ? 復制redis解壓文件src下的redis-trib.rb文件到redis-cluster目錄

    ? ? ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cp?/usr/andy/redis/redis-3.2.0/src/redis-trib.rb?./??
  • ?

    ? ? ??? ?安裝ruby環(huán)境:

    ? ? ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?yum?install?ruby??
  • [root@localhost?redis-cluster]#?yum?install?rubygems??
  • ?

    ? ? ? ??安裝redis-trib.rb運行依賴的ruby的包redis-3.2.2.gem,下載

    ? ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?gem?install?redis-3.2.2.gem??
  • ?

    ? ? ?3、啟動所有的redis節(jié)點

    ? ? ? ?可以寫一個命令腳本start-all.sh

    ? ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • cd?redis01??
  • ./redis-server?redis.conf??
  • cd?..??
  • cd?redis02??
  • ./redis-server?redis.conf??
  • cd?..??
  • cd?redis03??
  • ./redis-server?redis.conf??
  • cd?..??
  • cd?redis04??
  • ./redis-server?redis.conf??
  • cd?..??
  • cd?redis05??
  • ./redis-server?redis.conf??
  • cd?..??
  • cd?redis06??
  • ./redis-server?redis.conf??
  • cd?..??
  • ?

    ? ? ?設置權限啟動

    ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?chmod?777?start-all.sh???
  • [root@localhost?redis-cluster]#?./start-all.sh???
  • ?

    ? ? ? ?查看redis進程啟動狀態(tài)

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?ps?-ef?|?grep?redis??
  • ??
  • root???????4547??????1??0?23:12??????????00:00:00?./redis-server?127.0.0.1:7001?[cluster]??
  • root???????4551??????1??0?23:12??????????00:00:00?./redis-server?127.0.0.1:7002?[cluster]??
  • root???????4555??????1??0?23:12??????????00:00:00?./redis-server?127.0.0.1:7003?[cluster]??
  • root???????4559??????1??0?23:12??????????00:00:00?./redis-server?127.0.0.1:7004?[cluster]??
  • root???????4563??????1??0?23:12??????????00:00:00?./redis-server?127.0.0.1:7005?[cluster]??
  • root???????4567??????1??0?23:12??????????00:00:00?./redis-server?127.0.0.1:7006?[cluster]??
  • root???????4840???4421??0?23:26?pts/1????00:00:00?grep?--color=auto?redis??
  • ? ?

    ? 可以看到redis的6個節(jié)點已經啟動成功

    ? ?

    ? ? 殺死全部的幾點:

    ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?pkill?-9?redis??
  • ?

    ? ? ?4、使用redis-trib.rb創(chuàng)建集群

    ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • ./redis-trib.rb?create?--replicas?1?127.0.0.1:7001?127.0.0.1:7002?127.0.0.1:7003?127.0.0.1:7004?127.0.0.1:7005?127.0.0.1:7006??
  • ?

    ? ? ???使用create命令 --replicas 1 參數(shù)表示為每個主節(jié)點創(chuàng)建一個從節(jié)點,其他參數(shù)是實例的地址集合。

    ? ? ??

    ? ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?create?--replicas?1?127.0.0.1:7001?127.0.0.1:7002?127.0.0.1:7003?127.0.0.1:7004?127.0.0.1:7005?127.0.0.1:7006??
  • >>>?Creating?cluster??
  • >>>?Performing?hash?slots?allocation?on?6?nodes...??
  • Using?3?masters:??
  • 127.0.0.1:7001??
  • 127.0.0.1:7002??
  • 127.0.0.1:7003??
  • Adding?replica?127.0.0.1:7004?to?127.0.0.1:7001??
  • Adding?replica?127.0.0.1:7005?to?127.0.0.1:7002??
  • Adding?replica?127.0.0.1:7006?to?127.0.0.1:7003??
  • M:?dfd510594da614469a93a0a70767ec9145aefb1a?127.0.0.1:7001??
  • ???slots:0-5460?(5461?slots)?master??
  • M:?e02eac35110bbf44c61ff90175e04d55cca097ff?127.0.0.1:7002??
  • ???slots:5461-10922?(5462?slots)?master??
  • M:?4385809e6f4952ecb122dbfedbee29109d6bb234?127.0.0.1:7003??
  • ???slots:10923-16383?(5461?slots)?master??
  • S:?ec02c9ef3acee069e8849f143a492db18d4bb06c?127.0.0.1:7004??
  • ???replicates?dfd510594da614469a93a0a70767ec9145aefb1a??
  • S:?83e5a8bb94fb5aaa892cd2f6216604e03e4a6c75?127.0.0.1:7005??
  • ???replicates?e02eac35110bbf44c61ff90175e04d55cca097ff??
  • S:?10c097c429ca24f8720986c6b66f0688bfb901ee?127.0.0.1:7006??
  • ???replicates?4385809e6f4952ecb122dbfedbee29109d6bb234??
  • Can?I?set?the?above?configuration??(type?'yes'?to?accept):?yes??
  • >>>?Nodes?configuration?updated??
  • >>>?Assign?a?different?config?epoch?to?each?node??
  • >>>?Sending?CLUSTER?MEET?messages?to?join?the?cluster??
  • Waiting?for?the?cluster?to?join......??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7001)??
  • M:?dfd510594da614469a93a0a70767ec9145aefb1a?127.0.0.1:7001??
  • ???slots:0-5460?(5461?slots)?master??
  • M:?e02eac35110bbf44c61ff90175e04d55cca097ff?127.0.0.1:7002??
  • ???slots:5461-10922?(5462?slots)?master??
  • M:?4385809e6f4952ecb122dbfedbee29109d6bb234?127.0.0.1:7003??
  • ???slots:10923-16383?(5461?slots)?master??
  • M:?ec02c9ef3acee069e8849f143a492db18d4bb06c?127.0.0.1:7004??
  • ???slots:?(0?slots)?master??
  • ???replicates?dfd510594da614469a93a0a70767ec9145aefb1a??
  • M:?83e5a8bb94fb5aaa892cd2f6216604e03e4a6c75?127.0.0.1:7005??
  • ???slots:?(0?slots)?master??
  • ???replicates?e02eac35110bbf44c61ff90175e04d55cca097ff??
  • M:?10c097c429ca24f8720986c6b66f0688bfb901ee?127.0.0.1:7006??
  • ???slots:?(0?slots)?master??
  • ???replicates?4385809e6f4952ecb122dbfedbee29109d6bb234??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • ?

    ? ? ???上面顯示創(chuàng)建成功,有3個主節(jié)點,3個從節(jié)點,每個節(jié)點都是成功連接狀態(tài)。

    ?

    ? ? ? ?3個主節(jié)點[M]以及分配的哈希卡槽如下:

    ??M: dfd510594da614469a93a0a70767ec9145aefb1a 127.0.0.1:7001
    ??? ???slots:0-5460 (5461 slots) master
    ??M: e02eac35110bbf44c61ff90175e04d55cca097ff 127.0.0.1:7002
    ??? ? ?slots:5461-10922 (5462 slots) master
    ??M: 4385809e6f4952ecb122dbfedbee29109d6bb234 127.0.0.1:7003
    ??? ???slots:10923-16383 (5461 slots) master

    ? ? ??

    ? ? ? ? ??3個從節(jié)點[S]以及附屬的主節(jié)點如下:

    ? ? ? ? ??S: ec02c9ef3acee069e8849f143a492db18d4bb06c 127.0.0.1:7004
    ? ? ? ? ? ? ?replicates dfd510594da614469a93a0a70767ec9145aefb1a
    ? ? ? ? ? S: 83e5a8bb94fb5aaa892cd2f6216604e03e4a6c75 127.0.0.1:7005
    ? ? ? ? ? ? ?replicates e02eac35110bbf44c61ff90175e04d55cca097ff
    ? ? ? ? ? S: 10c097c429ca24f8720986c6b66f0688bfb901ee 127.0.0.1:7006
    ? ? ? ? ? ? ?replicates 4385809e6f4952ecb122dbfedbee29109d6bb234

    ?

    ? ? ? ??以上集群安裝成功了,如果安裝未成功報如下錯誤
    ? ? ? ?>>> Creating cluster
    ? ? ? ?[ERR] Sorry, can't connect to node??....

    ? ? ? ? ? 需要安裝最新的ruby源碼,下載

    ? ? ? ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?tar?-zxvf?ruby-2.3.1.tar.gz???
  • [root@localhost?redis-cluster]#?cd????
  • [root@localhost?redis-cluster]#?./configure?--prefix=/usr/local/ruby-2.3.1????
  • [root@localhost?redis-cluster]#?make?&&?make?install???????
  • [root@localhost?redis-cluster]#gem?install?redis????
  • ? ? ? ? ?還有一種情況是,在VMware做測試的時間(都在一臺服務器時),ip應該使用127.0.0.1,如果使用局域網ip,也會報節(jié)點創(chuàng)建失敗。

    ? ? ? ??

    三、redis集群的測試

    ? ? ?1、測試存取值

    ? ? ? ? ?客戶端連接集群redis-cli需要帶上 -c ,redis-cli -c -p 端口號

    ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis01]#?./redis-cli?-c?-p?7001??
  • 127.0.0.1:7001>?set?name?andy??
  • ->?Redirected?to?slot?[5798]?located?at?127.0.0.1:7002??
  • OK??
  • 127.0.0.1:7002>?get?name??
  • "andy"??
  • 127.0.0.1:7002>???
  • ?

    ? ? ? ? 根據(jù)redis-cluster的key值分配,name應該分配到節(jié)點7002[5461-10922]上,上面顯示redis cluster自動從7001跳轉到了7002節(jié)點。

    ? ? ? ?我們可以測試一下7006從節(jié)點獲取name值

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis06]#?./redis-cli?-c?-p?7006??
  • 127.0.0.1:7006>?get?name??
  • ->?Redirected?to?slot?[5798]?located?at?127.0.0.1:7002??
  • "andy"??
  • 127.0.0.1:7002>???

  • ?

    ? ? ? ? 7006位7003的從節(jié)點,從上面也是自動跳轉至7002獲取值,這也是redis cluster的特點,它是去中心化,每個節(jié)點都是對等的,連接哪個節(jié)點都可以獲取和設置數(shù)據(jù)。

    ?

    ?

    四、集群節(jié)點選舉

    ? ? ? ? ?現(xiàn)在模擬將7002節(jié)點掛掉,按照redis-cluster原理會選舉會將 7002的從節(jié)點7005選舉為主節(jié)點。

    ? ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?ps?-ef?|?grep?redis??
  • root???????7950??????1??0?12:50??????????00:00:28?./redis-server?127.0.0.1:7001?[cluster]??
  • root???????7952??????1??0?12:50??????????00:00:29?./redis-server?127.0.0.1:7002?[cluster]??
  • root???????7956??????1??0?12:50??????????00:00:29?./redis-server?127.0.0.1:7003?[cluster]??
  • root???????7960??????1??0?12:50??????????00:00:29?./redis-server?127.0.0.1:7004?[cluster]??
  • root???????7964??????1??0?12:50??????????00:00:29?./redis-server?127.0.0.1:7005?[cluster]??
  • root???????7966??????1??0?12:50??????????00:00:29?./redis-server?127.0.0.1:7006?[cluster]??
  • root??????11346??10581??0?14:57?pts/2????00:00:00?grep?--color=auto?redis??
  • [root@localhost?redis-cluster]#?kill?7952??
  • ?

    ? ? ? ? 在查看集群中的7002節(jié)點

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#???
  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7002??
  • [ERR]?Sorry,?can't?connect?to?node?127.0.0.1:7002??
  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7005??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7005)??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:5461-10922?(5462?slots)?master??
  • ???0?additional?replica(s)??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:10923-16383?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:0-5460?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???

  • ? ? ? 可以看到集群連接不了7002節(jié)點,而7005有原來的S轉換為M節(jié)點,代替了原來的7002節(jié)點。我們可以獲取name值:

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis01]#?./redis-cli?-c?-p?7001??
  • 127.0.0.1:7001>?get?name??
  • ->?Redirected?to?slot?[5798]?located?at?127.0.0.1:7005??
  • "andy"??
  • 127.0.0.1:7005>???
  • 127.0.0.1:7005>???

  • ? ?從7001節(jié)點連入,自動跳轉到7005節(jié)點,并且獲取name值。

    ?

    ? ? 現(xiàn)在我們將7002節(jié)點恢復,看是否會自動加入集群中以及充當?shù)腗還是S節(jié)點。

    ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cd?redis02??
  • [root@localhost?redis02]#?./redis-server?redis.conf???
  • [root@localhost?redis02]#???
  • ?

    ? ? ?在check一下7002節(jié)點

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7002??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7002)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:10923-16383?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:5461-10922?(5462?slots)?master??
  • ???1?additional?replica(s)??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:0-5460?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???
  • ?

    ? ? 可以看到7002節(jié)點變成了a5db243087d8bd423b9285fa8513eddee9bb59a6 7005的從節(jié)點。

    ?

    五、集群節(jié)點添加

    ? ?節(jié)點新增包括新增主節(jié)點、從節(jié)點兩種情況。以下分別做一下測試:

    ? ? 1、新增主節(jié)點

    ? ? ? ?新增一個節(jié)點7007作為主節(jié)點修改配置文件

    ? ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cp?-r??redis01?redis07??
  • [root@localhost?redis-cluster]#?cd?redis07/??
  • [root@localhost?redis07]#?sed?-i?"s/7001/7007/g"?./redis.conf???
  • ?

    ? ? ? 啟動7007redis服務

    ?

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis07]#?./redis-server?redis.conf???
  • [root@localhost?redis07]#?netstat?-anp?|?grep?7007??
  • tcp????????0??????0?127.0.0.1:17007?????????0.0.0.0:*???????????????LISTEN??????13441/./redis-serve???
  • tcp????????0??????0?127.0.0.1:7007??????????0.0.0.0:*???????????????LISTEN??????13441/./redis-serve???
  • [root@localhost?redis07]#???

  • ? 上面可以看到,7007已經啟動,現(xiàn)在加入集群中。添加使用redis-trib.rb的add-node命令

    ?

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • ./redis-trib.rb?add-node?127.0.0.1:7007?127.0.0.1:7002??

  • ? ? add-node是加入集群節(jié)點,127.0.0.1:7007為要加入的節(jié)點,127.0.0.1:7002 表示加入的集群的一個節(jié)點,用來辨識是哪個集群,理論上那個集群的節(jié)點都可以。

    ? ? 執(zhí)行以下add-node

    ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?add-node?127.0.0.1:7007?127.0.0.1:7002??
  • >>>?Adding?node?127.0.0.1:7007?to?cluster?127.0.0.1:7002??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7002)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:10923-16383?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:5461-10922?(5462?slots)?master??
  • ???1?additional?replica(s)??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:0-5460?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • >>>?Send?CLUSTER?MEET?to?node?127.0.0.1:7007?to?make?it?join?the?cluster.??
  • [OK]?New?node?added?correctly.??
  • [root@localhost?redis-cluster]#???
  • ?

    ? ???可以看到7007加入這個Cluster,并成為一個新的節(jié)點。

    ? ? ?可以check以下7007節(jié)點狀態(tài)

    ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7007??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7007)??
  • M:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:?(0?slots)?master??
  • ???0?additional?replica(s)??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:0-5460?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:10923-16383?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:5461-10922?(5462?slots)?master??
  • ???1?additional?replica(s)??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???
  • ?

    ??M: ee3efb90e5ac0725f15238a64fc60a18a71205d7 127.0.0.1:7007
    ? ?slots: (0 slots) master
    ? ?0 additional replica(s)

    ??上面信息可以看到有4個M節(jié)點,3個S節(jié)點,7007成為了M主節(jié)點,它沒有附屬的從節(jié)點,而且Cluster并未給7007分配哈希卡槽(0 slots)。

    ? ??

    ? ?可以從客戶端連接集群查看一下,集群節(jié)點的連接情況

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cd?redis07/??
  • [root@localhost?redis07]#?./redis-cli?-c?-p?7007??
  • 127.0.0.1:7007>?cluster?nodes??
  • 8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006?slave?f9886c71e98a53270f7fda961e1c5f730382d48f?0?1462955393326?3?connected??
  • dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001?master?-?0?1462955388247?1?connected?0-5460??
  • ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007?myself,master?-?0?0?0?connected??
  • f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003?master?-?0?1462955390270?3?connected?10923-16383??
  • 1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002?slave?a5db243087d8bd423b9285fa8513eddee9bb59a6?0?1462955394334?7?connected??
  • a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005?master?-?0?1462955392309?7?connected?5461-10922??
  • 50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004?slave?dd19221c404fb2fc4da37229de56bab755c76f2b?0?1462955389663?1?connected??
  • 127.0.0.1:7007>???
  • ?

    ? ? ?redis-cluster在新增節(jié)點時并未分配卡槽,需要我們手動對集群進行重新分片遷移數(shù)據(jù),需要重新分片命令 reshard

    ? ??

    ? ? ? ? ? ? ? redis-trib.rb reshard 127.0.0.1:7005

    ?

    ? ? ?這個命令是用來遷移slot節(jié)點的,后面的127.0.0.1:7005是表示是哪個集群,端口填[7000-7007]都可以,執(zhí)行結果如下:

    ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?reshard?127.0.0.1:7005??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7005)??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:5461-10922?(5462?slots)?master??
  • ???1?additional?replica(s)??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:10923-16383?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • M:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:?(0?slots)?master??
  • ???0?additional?replica(s)??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:0-5460?(5461?slots)?master??
  • ???1?additional?replica(s)??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • How?many?slots?do?you?want?to?move?(from?1?to?16384)????
  • ?

    ? ? ? 它提示我們需要遷移多少slot到7007上,我們平分16384個哈希槽給4個節(jié)點:16384/4 = 4096,我們需要移動4096個槽點到7007上。

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [OK]?All?16384?slots?covered.??
  • How?many?slots?do?you?want?to?move?(from?1?to?16384)??4096??
  • What?is?the?receiving?node?ID????
  • ?

    ? ? ?需要輸入7007的節(jié)點id,ee3efb90e5ac0725f15238a64fc60a18a71205d7
    ?

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • Please?enter?all?the?source?node?IDs.??
  • ??Type?'all'?to?use?all?the?nodes?as?source?nodes?for?the?hash?slots.??
  • ??Type?'done'?once?you?entered?all?the?source?nodes?IDs.??
  • Source?node?#1:??
  • ?

    ? ? ??redis-trib 會向你詢問重新分片的源節(jié)點(source node),即,要從特點的哪個節(jié)點中取出 4096 個哈希槽,還是從全部節(jié)點提取4096個哈希槽, 并將這些槽移動到7007節(jié)點上面。

    ? ? ?如果我們不打算從特定的節(jié)點上取出指定數(shù)量的哈希槽,那么可以向redis-trib輸入 all,這樣的話, 集群中的所有主節(jié)點都會成為源節(jié)點,redis-trib從各個源節(jié)點中各取出一部分哈希槽,湊夠4096個,然后移動到7007節(jié)點上:

    ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • Source?node?#1:all??
  • ?

    ? ? 然后開始從別的主節(jié)點遷移哈希槽,并且確認。

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • ????Moving?slot?1343?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1344?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1345?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1346?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1347?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1348?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1349?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1350?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1351?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1352?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1353?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1354?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1355?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1356?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1357?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1358?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1359?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1360?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1361?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1362?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1363?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • ????Moving?slot?1364?from?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • Do?you?want?to?proceed?with?the?proposed?reshard?plan?(yes/no)??yes??

  • ? ? ?確認之后,redis-trib就開始執(zhí)行分片操作,將哈希槽一個一個從源主節(jié)點移動到7007目標主節(jié)點。

    ? ? ?重新分片結束后我們可以check以下節(jié)點的分配情況。

    ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7001??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7001)??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:1365-5460?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • M:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:0-1364,5461-6826,10923-12287?(4096?slots)?master??
  • ???0?additional?replica(s)??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:6827-10922?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:12288-16383?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???
  • ?

    ? ?slots:0-1364,5461-6826,10923-12287 (4096 slots) master

    ? ?可以看到7007節(jié)點分片的哈希槽片不是連續(xù)的,間隔的移動。

    ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cd?redis07/??
  • [root@localhost?redis07]#?./redis-cli?-c?7007??
  • Could?not?connect?to?Redis?at?127.0.0.1:6379:?Connection?refused??
  • [root@localhost?redis07]#?./redis-cli?-c?-p?7007??
  • 127.0.0.1:7007>?keys?*??
  • 1)?"name"??
  • 2)?"age"??
  • 127.0.0.1:7007>???
  • 127.0.0.1:7007>???
  • ?

    ? ? 可以看到將7001的age[741]和name[5798]移動到7007節(jié)點上,

    ? ? 主節(jié)點7007添加成功。

    ?

    ? ? 2、新增從節(jié)點

    ? ? ? ?新增一個節(jié)點7008節(jié)點,使用add-node --slave命令。

    ? ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cp?-r?redis01/?redis08??
  • [root@localhost?redis-cluster]#?cd?redis08/??
  • [root@localhost?redis08]#?sed?-i?"s/7001/7008/g"?./redis.conf??
  • [root@localhost?redis08]#?./redis-server?redis.conf???

  • ? ?redis-trib增加從節(jié)點的命令為:

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • ./redis-trib.rb?add-node?--slave?--master-id?$[nodeid]?127.0.0.1:7008?127.0.0.1:7000??
  • ?

    ? ? nodeid為要加到master主節(jié)點的node id,127.0.0.1:7008為新增的從節(jié)點,127.0.0.1:7000為集群的一個節(jié)點(集群的任意節(jié)點都行),用來辨識是哪個集群;如果沒有給定那個主節(jié)點--master-id的話,redis-trib將會將新增的從節(jié)點隨機到從節(jié)點較少的主節(jié)點上。

    ?

    ? ? 現(xiàn)在我們添加一下7008,看是否會自動加到沒有從節(jié)點的7007主節(jié)點上。

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?add-node?--slave?127.0.0.1:7008?127.0.0.1:7001>>>?Adding?node?127.0.0.1:7008?to?cluster?127.0.0.1:7001??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7001)??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:1365-5460?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • M:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:0-1364,5461-6826,10923-12287?(4096?slots)?master??
  • ???0?additional?replica(s)??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:6827-10922?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:12288-16383?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • Automatically?selected?master?127.0.0.1:7007??
  • >>>?Send?CLUSTER?MEET?to?node?127.0.0.1:7008?to?make?it?join?the?cluster.??
  • Waiting?for?the?cluster?to?join.??
  • >>>?Configure?node?as?replica?of?127.0.0.1:7007.??
  • [OK]?New?node?added?correctly.??
  • [root@localhost?redis-cluster]#???

  • ? ? ?可以看到自動選擇了127.0.0.1:7007為master主節(jié)點,并且添加成功。

    ? ? ?可以check一下7008:

    ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7008??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7008)??
  • S:?2ab1b061c36f30ae35604e9a171ae3afdc3c87e5?127.0.0.1:7008??
  • ???slots:?(0?slots)?slave??
  • ???replicates?ee3efb90e5ac0725f15238a64fc60a18a71205d7??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:6827-10922?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:1365-5460?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:0-1364,5461-6826,10923-12287?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:12288-16383?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???
  • ?

    ? ? ? ?可以看到7008作為了7007的從節(jié)點。

    ? ? ? ??

    ? ? ? ?再測試一下指定主節(jié)點添加從節(jié)點,給7007增加7009從節(jié)點。

    ? ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cp?-r?redis01/?redis09??
  • [root@localhost?redis-cluster]#?cd?redis09??
  • [root@localhost?redis09]#?sed?-i?"s/7001/7009/g"?./redis.conf??
  • [root@localhost?redis09]#?./redis-server?redis.conf???
  • ?

    ? ? ? ?添加7007主節(jié)點上

    ? ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?add-node?--slave?--master-id?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7009?127.0.0.1:7001??
  • >>>?Adding?node?127.0.0.1:7009?to?cluster?127.0.0.1:7001??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7001)??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:1365-5460?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?2ab1b061c36f30ae35604e9a171ae3afdc3c87e5?127.0.0.1:7008??
  • ???slots:?(0?slots)?slave??
  • ???replicates?ee3efb90e5ac0725f15238a64fc60a18a71205d7??
  • M:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:0-1364,5461-6826,10923-12287?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:6827-10922?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:12288-16383?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • >>>?Send?CLUSTER?MEET?to?node?127.0.0.1:7009?to?make?it?join?the?cluster.??
  • Waiting?for?the?cluster?to?join.??
  • >>>?Configure?node?as?replica?of?127.0.0.1:7007.??
  • [OK]?New?node?added?correctly.??
  • [root@localhost?redis-cluster]#???
  • ?

    ? ? ?顯示從節(jié)點7009節(jié)點添加到7007主節(jié)點,可以看一下7007的從節(jié)點,如下:

    ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cd?./redis07??
  • [root@localhost?redis07]#?./redis-cli?-c?-p?7007?cluster?nodes?|?grep?ee3efb90e5ac0725f15238a64fc60a18a71205d7???
  • 1f51443ede952b98724fea2a12f61fe710ab6cb1?127.0.0.1:7009?slave?ee3efb90e5ac0725f15238a64fc60a18a71205d7?0?1462962710266?8?connected??
  • ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007?myself,master?-?0?0?8?connected?0-1364?5461-6826?10923-12287??
  • 2ab1b061c36f30ae35604e9a171ae3afdc3c87e5?127.0.0.1:7008?slave?ee3efb90e5ac0725f15238a64fc60a18a71205d7?0?1462962711607?8?connected??
  • [root@localhost?redis07]#???

  • ? ? ?maser 7007有2個slave 7008,7009。

    ?

    ? ? ?我們測試一下7007節(jié)點掛掉,看7008和7009那個成為主節(jié)點。

    ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?ps?-ef?|?grep?redis??
  • root???????7950??????1??0?12:50??????????00:02:05?./redis-server?127.0.0.1:7001?[cluster]??
  • root???????7956??????1??0?12:50??????????00:02:11?./redis-server?127.0.0.1:7003?[cluster]??
  • root???????7960??????1??0?12:50??????????00:01:47?./redis-server?127.0.0.1:7004?[cluster]??
  • root???????7964??????1??0?12:50??????????00:02:07?./redis-server?127.0.0.1:7005?[cluster]??
  • root???????7966??????1??0?12:50??????????00:01:46?./redis-server?127.0.0.1:7006?[cluster]??
  • root??????12070??????1??0?15:14??????????00:01:08?./redis-server?127.0.0.1:7002?[cluster]??
  • root??????13441??????1??0?16:09??????????00:01:25?./redis-server?127.0.0.1:7007?[cluster]??
  • root??????15939??????1??0?17:41??????????00:00:20?./redis-server?127.0.0.1:7008?[cluster]??
  • root??????16623??????1??0?18:07??????????00:00:10?./redis-server?127.0.0.1:7009?[cluster]??
  • root??????17295??10581??0?18:37?pts/2????00:00:00?grep?--color=auto?redis??
  • [root@localhost?redis-cluster]#?kill?-9?13441??
  • [root@localhost?redis-cluster]#?cd?./redis08??
  • [root@localhost?redis08]#?./redis-cli?-c?-p?7008??
  • 127.0.0.1:7008>?get?name??
  • ->?Redirected?to?slot?[5798]?located?at?127.0.0.1:7009??
  • "andy"??
  • 127.0.0.1:7009>?cluster?nodes??
  • ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007?master,fail?-?1462963082317?1462963080194?8?disconnected??
  • 50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004?slave?dd19221c404fb2fc4da37229de56bab755c76f2b?0?1462963170968?1?connected??
  • f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003?master?-?0?1462963168525?3?connected?12288-16383??
  • dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001?master?-?0?1462963164466?1?connected?1365-5460??
  • 2ab1b061c36f30ae35604e9a171ae3afdc3c87e5?127.0.0.1:7008?slave?1f51443ede952b98724fea2a12f61fe710ab6cb1?0?1462963167508?9?connected??
  • 1f51443ede952b98724fea2a12f61fe710ab6cb1?127.0.0.1:7009?myself,master?-?0?0?9?connected?0-1364?5461-6826?10923-12287??
  • 1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002?slave?a5db243087d8bd423b9285fa8513eddee9bb59a6?0?1462963170564?7?connected??
  • 8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006?slave?f9886c71e98a53270f7fda961e1c5f730382d48f?0?1462963167915?3?connected??
  • a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005?master?-?0?1462963169538?7?connected?6827-10922??
  • 127.0.0.1:7009>???
  • ?

    ? ? ? 可以看到7009代替7007成了主節(jié)點。

    ? ? ? ?重啟7007之后,會自動變成7009的從節(jié)點。

    ? ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?cd?redis07??
  • [root@localhost?redis07]#?./redis-server?redis.conf???
  • [root@localhost?redis07]#?cd?../??
  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7007??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7007)??
  • S:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • M:?1f51443ede952b98724fea2a12f61fe710ab6cb1?127.0.0.1:7009??
  • ???slots:0-1364,5461-6826,10923-12287?(4096?slots)?master??
  • ???2?additional?replica(s)??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:1365-5460?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:6827-10922?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:12288-16383?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?2ab1b061c36f30ae35604e9a171ae3afdc3c87e5?127.0.0.1:7008??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???
  • ?

    ? ? 驗證了之前的測試。

    ?

    六、節(jié)點的移除

    ? ?和節(jié)點添加一樣,移除節(jié)點也有移除主節(jié)點,從節(jié)點。

    ? ?1、移除主節(jié)點

    ? ? ? ?移除節(jié)點使用redis-trib的del-node命令,

    ? ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • redis-trib?del-node?127.0.0.1:7002??${node-id}??
  • ?

    ? ? 127.0.0.1:7002位集群節(jié)點,node-id為要刪除的主節(jié)點。 和添加節(jié)點不同,移除節(jié)點node-id是必需的,測試刪除7001主節(jié)點:

    ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?del-node?127.0.0.1:7001?<span?style="font-size:?14px;">dd19221c404fb2fc4da37229de56bab755c76f2b</span>??
  • >>>?Removing?node?<span?style="font-size:?14px;">dd19221c404fb2fc4da37229de56bab755c76f2b</span>?from?cluster?127.0.0.1:7002??
  • [ERR]?Node?127.0.0.1:7001?is?not?empty!?Reshard?data?away?and?try?again.??
  • [root@localhost?redis-cluster]#???
  • ?

    ? redis cluster提示7001已經有數(shù)據(jù)了,不能夠被刪除,需要將他的數(shù)據(jù)轉移出去,也就是和新增主節(jié)點一樣需重新分片。

    ? ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?reshard?127.0.0.1:7002??
  • ?

    ? 執(zhí)行以后會提示我們移除的大小,因為7001占用了4096個槽點

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • How?many?slots?do?you?want?to?move?(from?1?to?16384)????

  • ? 輸入4096

    ? 提示移動的node id,填寫7009的node id。

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • How?many?slots?do?you?want?to?move?(from?1?to?16384)??4096??
  • What?is?the?receiving?node?ID????
  • ? ?

    ? ?需要移動到全部主節(jié)點上還是單個主節(jié)點

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • Please?enter?all?the?source?node?IDs.??
  • ??Type?'all'?to?use?all?the?nodes?as?source?nodes?for?the?hash?slots.??
  • ??Type?'done'?once?you?entered?all?the?source?nodes?IDs.??
  • Source?node?#1:??

  • ? ?將4096個槽點移動到7009上,填寫7001的node id :dd19221c404fb2fc4da37229de56bab755c76f2b

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • Source?node?#1:dd19221c404fb2fc4da37229de56bab755c76f2b??
  • Source?node?#2:done??
  • Do?you?want?to?proceed?with?the?proposed?reshard?plan?(yes/no)??yes??
  • ?

    ? ?確認之后會一個一個將7001的卡槽移到到7009上。

    ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7009??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7009)??
  • M:?1f51443ede952b98724fea2a12f61fe710ab6cb1?127.0.0.1:7009??
  • ???slots:0-6826,10923-12287?(8192?slots)?master??
  • ???3?additional?replica(s)??
  • S:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:12288-16383?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • M:?dd19221c404fb2fc4da37229de56bab755c76f2b?127.0.0.1:7001??
  • ???slots:?(0?slots)?master??
  • ???0?additional?replica(s)??
  • S:?2ab1b061c36f30ae35604e9a171ae3afdc3c87e5?127.0.0.1:7008??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:6827-10922?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???

  • ? ? ?可以看到7001有0個卡槽,而7009有8192個卡槽。

    ?

    ? ? ?在執(zhí)行移除操作

    ? ? ?

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?del-node?127.0.0.1:7002?dd19221c404fb2fc4da37229de56bab755c76f2b??
  • >>>?Removing?node?dd19221c404fb2fc4da37229de56bab755c76f2b?from?cluster?127.0.0.1:7002??
  • >>>?Sending?CLUSTER?FORGET?messages?to?the?cluster...??
  • >>>?SHUTDOWN?the?node.??
  • [root@localhost?redis-cluster]#???

  • ? ? 已經刪除了7001節(jié)點。

    ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7001??
  • [ERR]?Sorry,?can't?connect?to?node?127.0.0.1:7001??
  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7009??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7009)??
  • M:?1f51443ede952b98724fea2a12f61fe710ab6cb1?127.0.0.1:7009??
  • ???slots:0-6826,10923-12287?(8192?slots)?master??
  • ???3?additional?replica(s)??
  • S:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:12288-16383?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?2ab1b061c36f30ae35604e9a171ae3afdc3c87e5?127.0.0.1:7008??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:6827-10922?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???

  • ? 可以看到7001已經連接不了;而7001的從節(jié)點7004自動分配到了7009主節(jié)點中,7009現(xiàn)在3個從節(jié)點。

    ?

    ?2、移除從節(jié)點

    ? ? ?比如刪除7009的7008節(jié)點:

    ? ? ??

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?del-node?127.0.0.1:7009?2ab1b061c36f30ae35604e9a171ae3afdc3c87e5??
  • >>>?Removing?node?2ab1b061c36f30ae35604e9a171ae3afdc3c87e5?from?cluster?127.0.0.1:7009??
  • >>>?Sending?CLUSTER?FORGET?messages?to?the?cluster...??
  • >>>?SHUTDOWN?the?node.??
  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7008??
  • [ERR]?Sorry,?can't?connect?to?node?127.0.0.1:7008??
  • [root@localhost?redis-cluster]#???
  • ?

    ? ? ?刪除從節(jié)點比較方便,現(xiàn)在redis-cluster中有3個主節(jié)點,4個從節(jié)點,如下:

    [plain]?view plain?copy?轉存失敗重新上傳取消轉存失敗重新上傳取消

  • [root@localhost?redis-cluster]#?./redis-trib.rb?check?127.0.0.1:7009??
  • >>>?Performing?Cluster?Check?(using?node?127.0.0.1:7009)??
  • M:?1f51443ede952b98724fea2a12f61fe710ab6cb1?127.0.0.1:7009??
  • ???slots:0-6826,10923-12287?(8192?slots)?master??
  • ???2?additional?replica(s)??
  • S:?ee3efb90e5ac0725f15238a64fc60a18a71205d7?127.0.0.1:7007??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • S:?50ce1ea59106b4c2c6bc502593a6a7a7dabf5041?127.0.0.1:7004??
  • ???slots:?(0?slots)?slave??
  • ???replicates?1f51443ede952b98724fea2a12f61fe710ab6cb1??
  • M:?f9886c71e98a53270f7fda961e1c5f730382d48f?127.0.0.1:7003??
  • ???slots:12288-16383?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • S:?1f07d76585bfab35f91ec711ac53ab4bc00f2d3a?127.0.0.1:7002??
  • ???slots:?(0?slots)?slave??
  • ???replicates?a5db243087d8bd423b9285fa8513eddee9bb59a6??
  • S:?8bb3ede48319b46d0015440a91ab277da9353c8b?127.0.0.1:7006??
  • ???slots:?(0?slots)?slave??
  • ???replicates?f9886c71e98a53270f7fda961e1c5f730382d48f??
  • M:?a5db243087d8bd423b9285fa8513eddee9bb59a6?127.0.0.1:7005??
  • ???slots:6827-10922?(4096?slots)?master??
  • ???1?additional?replica(s)??
  • [OK]?All?nodes?agree?about?slots?configuration.??
  • >>>?Check?for?open?slots...??
  • >>>?Check?slots?coverage...??
  • [OK]?All?16384?slots?covered.??
  • [root@localhost?redis-cluster]#???

  • ? ?ok,測試到這兒吧。

    總結

    以上是生活随笔為你收集整理的Redis Cluster集群搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。