日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

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

数据库

Redis Cluster集群

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

一、redis-cluster設計

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

其結構特點:

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

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

?

? ?1、redis cluster節點分配

?

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


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

? ??

? ? ?獲取數據:

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

? ??

? ? ?新增一個主節點:

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

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


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

?

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

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

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

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

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

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

?

二、redis集群的搭建

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

? ?

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

? ? ?1、安裝redis節點指定端口

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

? ? ? ??

[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目錄

? ? ? ? ??

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

?

?

? ? ??? ?安裝ruby環境:

? ? ??

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

?

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

? ? ? ??

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

?

? ? ?3、啟動所有的redis節點

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

? ? ? ?

?

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?..??

?

? ? ?設置權限啟動

? ? ?

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

?

? ? ? ?查看redis進程啟動狀態

[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個節點已經啟動成功

? ?

? ? 殺死全部的節點:

?

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

?

? ? ?4、使用redis-trib.rb創建集群

?

?

./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 參數表示為每個主節點創建一個從節點,其他參數是實例的地址集合。

? ? ??

[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.??

?

? ? ???上面顯示創建成功,有3個主節點,3個從節點,每個節點都是成功連接狀態。

?

? ? ? ?3個主節點[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個從節點[S]以及附屬的主節點如下:

? ? ? ? ??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源碼,下載

?

[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,也會報節點創建失敗。

? ? ? ??


三、redis集群的測試

? ? ?1、測試存取值

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

[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>???

?

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

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

[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的從節點,從上面也是自動跳轉至7002獲取值,這也是redis cluster的特點,它是去中心化,每個節點都是對等的,連接哪個節點都可以獲取和設置數據。

?

?

四、集群節點選舉

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

?

[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節點

?

[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節點,而7005有原來的S轉換為M節點,代替了原來的7002節點。我們可以獲取name值:

[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節點連入,自動跳轉到7005節點,并且獲取name值。

?

? ? 現在我們將7002節點恢復,看是否會自動加入集群中以及充當的M還是S節點。

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

?

? ? ?在check一下7002節點

[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節點變成了a5db243087d8bd423b9285fa8513eddee9bb59a6 7005的從節點。

?

五、集群節點添加

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

? ? 1、新增主節點

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

?

[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服務

?

[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已經啟動,現在加入集群中。添加使用redis-trib.rb的add-node命令

?

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


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

? ? 執行以下add-node

?

[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,并成為一個新的節點。

? ? ?可以check以下7007節點狀態

[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節點,3個S節點,7007成為了M主節點,它沒有附屬的從節點,而且Cluster并未給7007分配哈希卡槽(0 slots)。

? ??

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

?

[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在新增節點時并未分配卡槽,需要我們手動對集群進行重新分片遷移數據,需要重新分片命令 reshard

? ??

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

?

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

[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個節點:16384/4 = 4096,我們需要移動4096個槽點到7007上。

?

[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的節點id,ee3efb90e5ac0725f15238a64fc60a18a71205d7

?

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

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

?

Source?node?#1:all??

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

?

????

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就開始執行分片操作,將哈希槽一個一個從源主節點移動到7007目標主節點。

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

?

[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節點分片的哈希槽片不是連續的,間隔的移動。

[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節點上,

? ? 主節點7007添加成功。

?

? ? 2、新增從節點

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

?

[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增加從節點的命令為:

?

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

?

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

?

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

?

[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主節點,并且添加成功。

? ? ?可以check一下7008:

?

[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的從節點。

? ? ? ??

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

?

[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主節點上

?

  • [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]#???

    ?

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

    ?

    [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節點掛掉,看7008和7009那個成為主節點。

    ?

    [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成了主節點。

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

    [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]#???

    ?

    ? ? 驗證了之前的測試。

    ?

    六、節點的移除

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

    ? ?1、移除主節點

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

    ?

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

    ?

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

    ?

    [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已經有數據了,不能夠被刪除,需要將他的數據轉移出去,也就是和新增主節點一樣需重新分片。

    ?

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

    ?

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

    ?

    >>>?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。

    ?

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

    ?

    ? ?

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

    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

    ?

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

    ?

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

    ?

    [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個卡槽。

    ?

    ? ? ?在執行移除操作

    ? ?

    [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節點。

    [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的從節點7004自動分配到了7009主節點中,7009現在3個從節點。

    ?

    ?2、移除從節點

    ? ? ?比如刪除7009的7008節點:

    ?

    [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]#???

    ? ? ?刪除從節點比較方便,現在redis-cluster中有3個主節點,4個從節點,如下:

    ?

    [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]#??

    ?

    總結

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

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

    久草在线免费色站 | 久久久国产成人 | 国产精品一区二区三区四 | 国产91精品一区二区麻豆亚洲 | 久久婷婷网 | 91日韩在线视频 | 正在播放亚洲精品 | 久久久久亚洲精品成人网小说 | 久久久在线观看 | 在线国产一区 | 97在线影视 | 国产美女精彩久久 | 91免费观看网站 | 欧洲一区二区在线观看 | 91在线资源 | 国产精品18久久久久久首页狼 | 国产日韩在线视频 | 丁香六月天婷婷 | 久久激五月天综合精品 | 91精品1区 | 精品视频不卡 | 在线成人免费电影 | zzijzzij亚洲成熟少妇 | 五月天天在线 | 日韩一级黄色片 | 日本aaa在线观看 | 成+人+色综合 | www.久久成人 | 久草在线观看视频免费 | 久草在线视频新 | 揉bbb玩bbb少妇bbb | 色婷婷在线观看视频 | 亚洲日本va午夜在线影院 | 国内视频在线观看 | 久久久久成人免费 | www.久久爱.cn| 国产成人99av超碰超爽 | 国产一区二区免费 | 亚洲成人软件 | 国产四虎影院 | 亚洲做受高潮欧美裸体 | 久操视频在线免费看 | 欧美在线观看视频 | 国产黄色在线看 | 欧美激情一区不卡 | 亚洲精品66 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 天天射综合网视频 | 国产午夜剧场 | 国产精品理论片在线观看 | 五月婷婷婷婷婷 | 婷婷在线精品视频 | 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | 91av国产视频 | 91av在线电影 | 特级黄色一级 | 亚洲欧美视频在线播放 | 国产精品成人一区二区三区吃奶 | 黄色软件在线观看免费 | 狠狠操综合 | 国产一区二区不卡视频 | 在线观看午夜av | 日韩在线看片 | 婷婷成人亚洲综合国产xv88 | 精品国产乱码一区二区三区在线 | 九九免费精品 | 美女视频国产 | 超碰免费公开 | 丁香久久五月 | 日韩高清成人 | 成人av免费电影 | 国产一区二区三区免费视频 | 五月天久久精品 | 黄色网址a | 四虎影视国产精品免费久久 | 日本久久99| 国产这里只有精品 | 日韩视频免费 | avcom在线 | 亚洲欧美成人网 | 黄色福利视频网站 | 91资源在线播放 | 久久女同性恋中文字幕 | 国产高清av免费在线观看 | 日韩在线视频看看 | 精品久久精品 | 免费看成人av | 黄色网址在线播放 | 国产精品中文字幕在线观看 | 日韩精品无码一区二区三区 | 久草网免费 | 精品国产伦一区二区三区观看体验 | 亚洲成人午夜av | 国产精品一区在线观看 | 国产精品自产拍在线观看网站 | av在线h| 国产成人99av超碰超爽 | 国产91区 | 在线小视频你懂得 | 91av片| 91在线一区二区 | 东方av在线免费观看 | 国产精品色在线 | 少妇性aaaaaaaaa视频 | 天天综合网久久 | 精品国自产在线观看 | 一区二区视频在线播放 | 日韩av免费一区二区 | 免费看麻豆| 91精品福利在线 | 在线免费观看不卡av | 91av网站在线观看 | 免费看的黄色网 | 久久久鲁 | 国产精品6 | 成人黄色在线 | 丁香五月亚洲综合在线 | 碰超在线97人人 | 一本—道久久a久久精品蜜桃 | 99久热 | 国产精品99久久久久久小说 | 在线观看一级 | 91三级视频 | 国产高清在线免费观看 | 在线观看免费黄视频 | 久久综合九色综合久久久精品综合 | 日日干日日 | 久草免费手机视频 | 免费久久网 | 国产精品麻豆视频 | 91黄色影视 | 99在线免费视频观看 | 色a在线观看 | 91一区一区三区 | 99精品视频在线观看免费 | 日韩网 | 日韩成人精品一区二区三区 | 99久久一区| 日日干干夜夜 | 五月花丁香婷婷 | 色综合久久久久综合99 | av免费线看 | 天天操操| 91精品国产欧美一区二区成人 | 免费男女羞羞的视频网站中文字幕 | 久久99视频免费 | 久久视频在线免费观看 | 国产热re99久久6国产精品 | 久久久国际精品 | 日韩欧美久久 | 在线三级播放 | 国产精品黑丝在线观看 | 色婷婷av一区二 | 日韩免费视频在线观看 | 亚洲国产无| 日本性xxx | 成人黄色av免费在线观看 | 久久久久免费精品国产 | 亚洲精品在线观看免费 | 久久久免费播放 | 精品国产一区二区三区男人吃奶 | 成人资源在线 | 色婷婷综合久色 | 69夜色精品国产69乱 | 九九免费在线观看视频 | 日韩毛片在线免费观看 | 久久国产午夜精品理论片最新版本 | 欧美伦理一区二区三区 | 成年人在线观看视频免费 | 视频一区二区免费 | 日p视频 | 狠狠躁夜夜躁人人爽超碰91 | 丁香5月婷婷久久 | 国产亚洲日本 | 超碰人人舔 | www.黄色片.com | 九九热免费在线视频 | 91精品一区二区在线观看 | 国产成人精品一区二区在线 | 久久久久日本精品一区二区三区 | 日日日操操 | 亚洲最大av网站 | 99精品国产在热久久下载 | 麻豆精品视频在线 | 午夜视频播放 | 中文乱幕日产无线码1区 | 婷婷丁香色 | 国产伦理久久 | 亚洲精选久久 | 91福利视频免费观看 | 久久视频 | 91大神一区二区三区 | 久草在线免费资源 | 色综合在| 高清av免费观看 | 国语精品久久 | 精品一区二区日韩 | 成人免费91| 欧美亚洲成人xxx | 久章草在线观看 | 欧美日韩亚洲第一 | 日本99热| 国产手机在线 | 99在线观看免费视频精品观看 | 99热精品久久| 国产精品久久久久久久久久东京 | 久久综合网色—综合色88 | 91视频在线播放视频 | 成人av资源 | 日韩精品久久久久久中文字幕8 | 超碰成人免费电影 | 亚洲天堂毛片 | 亚洲视频观看 | 毛片网在线观看 | av大片免费在线观看 | 99一级片| av大全在线播放 | www.在线看片.com | 国产99精品在线观看 | 97看片吧 | 色综合咪咪久久网 | japanese黑人亚洲人4k | 亚洲欧美日韩在线看 | 激情网婷婷 | 免费观看国产成人 | 免费观看9x视频网站在线观看 | 九九九热精品免费视频观看网站 | 国产精品免费av | 午夜av免费在线观看 | 国产精品不卡视频 | 亚洲精品国产精品乱码不99热 | 高清久久久久久 | 午夜神马福利 | av三区在线 | 337p日本欧洲亚洲大胆裸体艺术 | 黄色亚洲片 | 天天干夜夜夜操天 | 播五月婷婷 | 国产精品久久久 | 成人在线观看资源 | 97在线超碰 | 日韩精品一区二区免费 | 亚洲春色综合另类校园电影 | 最近更新好看的中文字幕 | 97热久久免费频精品99 | 有码视频在线观看 | 国产色啪 | 韩国av在线播放 | 99热这里有 | 午夜精品一区二区三区在线播放 | 国内偷拍精品视频 | 久草精品网 | 最近日本中文字幕 | 麻豆久久一区二区 | 精品在线视频观看 | 狠狠88综合久久久久综合网 | 亚洲一级片av | 免费在线观看视频a | 婷婷综合激情 | 久久久久在线 | 日韩激情综合 | 国产精品久久久久高潮 | 欧美色图视频一区 | 久久久www成人免费精品 | 激情欧美一区二区三区免费看 | 51久久夜色精品国产麻豆 | 久久成人免费电影 | 九九精品毛片 | 婷婷视频在线观看 | 久草精品视频在线播放 | 欧美狠狠操 | 国产在线一卡 | 九色激情网 | 国产精品久久伊人 | 国产精品综合在线观看 | 国产亚洲精品美女久久 | 欧美另类xxxx | 精品国产电影一区 | 国产精品久久9 | 97人人人| 狠狠干夜夜 | 丝袜少妇在线 | 激情欧美一区二区三区 | 国产欧美在线一区 | 久久精品免费看 | 韩日三级在线 | 一区二区中文字幕在线 | 久久久久久黄 | 五月婷婷黄色 | 日本黄色片一区二区 | 开心激情五月网 | 在线观看久草 | 久久精品国产一区二区 | 99热亚洲精品 | 日韩精品一区电影 | 欧美国产高清 | 精品一区91| 91在线中字| 在线国产视频 | 在线影院 国内精品 | 久草 | 天天综合久久综合 | 欧美激情视频在线观看免费 | 久久免费的精品国产v∧ | 夜夜躁狠狠躁日日躁视频黑人 | 日韩精品久久一区二区三区 | 狠狠狠色 | 色综合 久久精品 | 亚洲精品高清视频在线观看 | 亚洲一区二区天堂 | 日韩成人免费在线电影 | 国产成人精品女人久久久 | 在线日本v二区不卡 | 国产高清一 | 91精品久久久久久粉嫩 | 99r国产精品 | 天天操综合网 | 九九九视频在线 | 精品xxx| 最新av网址大全 | 美女视频免费一区二区 | 国产一级片网站 | 玖玖在线免费视频 | 综合色久| 婷婷色婷婷 | 国产亚洲精品久久久久久电影 | 欧美日韩精品在线视频 | 国产精品a级 | 国产精品v a免费视频 | 国产偷v国产偷∨精品视频 在线草 | 欧美极品裸体 | 四虎伊人 | 激情伊人五月天久久综合 | 韩国av一区二区三区在线观看 | 亚洲精品91天天久久人人 | av理论电影| 色姑娘综合天天 | 日一日干一干 | 福利视频一区二区 | 精品在线一区二区三区 | 国产成人在线观看免费 | 精品一区在线看 | 色综合天天做天天爱 | 亚洲美女精品视频 | 午夜久久成人 | 在线网站黄 | 美女国产免费 | 黄色天堂在线观看 | 亚洲精品美女久久久久网站 | av专区在线 | 97成人在线免费视频 | 狠狠激情中文字幕 | 韩日电影在线免费看 | 狠狠狠狠狠狠操 | 在线影院中文字幕 | 成人国产精品一区二区 | 国产精品久免费的黄网站 | 99激情网 | 久久国产精品久久精品 | 中文在线中文资源 | 国产专区在线播放 | 色.www | 国产一区二区精品久久91 | 97成人精品区在线播放 | 欧美另类交在线观看 | 中文字幕一区二区三区四区久久 | 日日夜夜综合网 | 日韩久久精品一区二区三区下载 | 91精品国产欧美一区二区 | 丁香六月激情 | 一区二区三区四区精品 | 免费看黄20分钟 | 精品自拍av | 国产色在线视频 | 久久久久久久18 | 国产在线日本 | 日韩高清在线一区二区三区 | 在线观看亚洲精品视频 | 一区二区三区www | 99精品福利 | www.国产视频| 免费看的黄色网 | 97超碰成人在线 | 一区二区 不卡 | 国产乱老熟视频网88av | 999成人国产 | 亚洲午夜久久久综合37日本 | 欧美日韩99| 五月激情综合婷婷 | 欧美韩日精品 | 日韩一级理论片 | 精品视频在线视频 | 亚洲精品视频免费在线观看 | 99综合久久 | 色资源二区在线视频 | 日韩精品一二三 | 久久永久免费 | 欧美a级一区二区 | 精品欧美一区二区在线观看 | 色综合在| 最新极品jizzhd欧美 | 亚洲日本韩国一区二区 | 在线观看视频99 | 久久视频国产精品免费视频在线 | 色a在线观看 | 日本黄色免费看 | 国产精品一区二 | 91视频在线自拍 | 中文字幕一区二区三区四区久久 | 欧美成天堂网地址 | 久久久久久久18 | 在线观看一 | 国产韩国日本高清视频 | 久久久久亚洲精品成人网小说 | 国产精品色在线 | 九九精品视频在线看 | 91麻豆产精品久久久久久 | 好看的国产精品视频 | 亚洲国产中文字幕 | 成年人看片网站 | 亚洲人视频在线 | 亚洲电影久久 | av成人动漫 | 五月婷婷电影网 | 久草99 | 欧美激情综合五月色丁香 | 亚洲首页 | 99精品亚洲 | 欧美成人高清 | 欧美怡红院视频 | 色中色亚洲 | 色狠狠婷婷 | 免费看黄电影 | 日韩精品久久一区二区三区 | 黄色网址a | 99热九九这里只有精品10 | 国产精品av一区二区 | 中文字幕中文中文字幕 | 911国产在线观看 | 国产精品中文字幕在线 | 天天综合人人 | 狠狠色丁香婷综合久久 | 天堂av色婷婷一区二区三区 | 国产不卡视频在线播放 | 国产成人av网站 | 成年人黄色免费看 | 97热在线观看 | 婷婷久久综合网 | 成人香蕉视频 | 久久视频这里只有精品 | 国产精品自在欧美一区 | 九九视频网 | 欧美日韩大片在线观看 | 国产精品久久久久久久久久免费看 | 午夜精品一区二区三区四区 | 国产在线毛片 | 在线91av| 国产伦精品一区二区三区免费 | 91在线国内视频 | 久草在线视频新 | 中文字幕日韩在线播放 | 国产亚洲综合在线 | 日韩大片免费在线观看 | 精品国产精品一区二区夜夜嗨 | 91欧美精品| 国产精品久久二区 | 天天狠狠干 | 不卡视频在线 | 夜夜干夜夜 | 五月婷婷综合在线观看 | 久久免费公开视频 | 91黄色在线视频 | 久久香蕉一区 | 国产白浆在线观看 | 亚洲一级黄色av | 91黄色在线视频 | 久久久久久久久福利 | 久久视频这里有久久精品视频11 | 欧美最猛性xxxxx(亚洲精品) | 久久深爱网 | 中文字幕4| 欧美日本啪啪无遮挡网站 | 国产亚洲成av人片在线观看桃 | www亚洲国产 | 亚洲精品久久在线 | 四虎免费在线观看视频 | 激情综合交 | 韩国av一区| 午夜精品久久久久久久久久久 | 超碰精品在线 | 91成年人视频 | 国产成人精品一区二区三区福利 | 免费久久久久久 | 国产亚洲精品成人 | 久久久久久久久久久久久9999 | av在线一| 看v片| 超碰在线97国产 | www.夜夜 | 麻豆国产精品va在线观看不卡 | 色婷婷综合久久久久 | 国产色a在线观看 | 热久久视久久精品18亚洲精品 | 国产精品短视频 | 99r在线播放 | 亚洲视频免费在线观看 | 成人欧美一区二区三区在线观看 | 天天色天天色天天色 | 婷婷香蕉 | 国产精品久久久网站 | 特级毛片在线 | 国产男女爽爽爽免费视频 | 国产免费亚洲高清 | 欧美极品久久 | 日韩精品一区在线观看 | 九九免费观看全部免费视频 | av大全在线看 | 精品久久久久久久久久岛国gif | 国产最新视频在线观看 | 久久久黄色 | 在线视频电影 | www.黄色片网站 | 亚洲精品国产区 | 蜜臀av网址 | 深爱激情综合网 | 亚洲六月丁香色婷婷综合久久 | 精品一区电影国产 | 国产小视频精品 | 国产精品视频免费 | 一区二区三区免费在线观看视频 | av网站大全免费 | 国产一区电影在线观看 | 日韩理论电影在线 | 97激情影院 | 亚洲国产成人久久 | 五月婷婷一区 | 久久人91精品久久久久久不卡 | 久久国内免费视频 | 国产在线观看国语版免费 | 99久久精品免费视频 | www.超碰 | 国产精品自拍av | 国产中文字幕视频在线观看 | 国产精品一级视频 | 日韩色av色资源 | 日韩精品视频免费 | 欧美日韩国产高清视频 | 久久久五月婷婷 | 美女网站在线播放 | 亚洲在线a| 日韩丝袜在线观看 | 免费h精品视频在线播放 | 黄色三级在线看 | 国产福利不卡视频 | 国产一区二区在线观看免费 | 亚洲精品色视频 | 色多多在线观看 | 午夜少妇一区二区三区 | 在线精品观看 | 五月天综合在线 | 色吊丝在线永久观看最新版本 | 久久人人97超碰国产公开结果 | 久章草在线观看 | 91精品第一页 | 免费视频xnxx com | 亚洲色图美腿丝袜 | 欧美成人精品三级在线观看播放 | 中文字幕在线视频第一页 | 日韩极品视频在线观看 | www久久久久 | 亚洲欧美视屏 | 亚洲v欧美v国产v在线观看 | 欧美激情精品久久久 | 奇米网网址 | 97精品免费视频 | 国产日产高清dvd碟片 | 亚洲欧美在线视频免费 | 在线免费观看黄色av | 麻豆视频免费入口 | 伊人色播| 4438全国亚洲精品在线观看视频 | 亚洲精品国产精品国自 | 欧美有色| 欧美激情视频三区 | 日韩高清一区 | 激情开心站 | 欧美在线一 | 91秒拍国产福利一区 | 国产视频欧美视频 | 九七在线视频 | 网址你懂的在线观看 | 99视频网址 | 97**国产露脸精品国产 | 久久久久久久av麻豆果冻 | 亚洲免费在线观看视频 | 成人a大片 | 在线观看中文字幕视频 | 国产精品毛片久久久久久 | 最近中文字幕高清字幕免费mv | 欧美日韩国产色综合一二三四 | 久久国产精品视频免费看 | 国产精品久久久久久五月尺 | 中文在线www| 久久电影国产免费久久电影 | 国产一级特黄电影 | 欧美a视频在线观看 | 久久男人中文字幕资源站 | 日韩欧美一区二区在线播放 | 天堂va欧美va亚洲va老司机 | 精品色999| 欧美日韩高清免费 | 中文字幕免费成人 | 日韩免费电影一区二区 | 成年人免费av网站 | 成人av久久 | 狠狠操狠狠干2017 | 在线免费观看黄色 | 91精品1区 | 国产日韩一区在线 | 免费在线观看成人av | 999电影免费在线观看 | 黄色小说视频网站 | 狠狠色丁香久久婷婷综合丁香 | 免费看v片| 伊人久久国产精品 | 探花在线观看 | 欧美日韩精品在线免费观看 | 女人18片毛片90分钟 | 国产视频69 | 久草网免费 | 国产精品毛片一区二区 | 久草在线一免费新视频 | 一级α片免费看 | 一区二区三区www | 色美女在线 | 国产视频一二三 | 一级国产视频 | 波多野结衣电影一区二区三区 | 91精品国自产拍天天拍 | 亚洲区另类春色综合小说校园片 | 久久免费片 | 99人久久精品视频最新地址 | 久久五月婷婷丁香 | 久久新 | 国产一区二区久久精品 | 久久综合五月天婷婷伊人 | 免费人做人爱www的视 | 国产一区免费看 | 免费观看黄色12片一级视频 | 欧美性色xo影院 | 日韩视频区 | 亚洲精品乱码白浆高清久久久久久 | 亚洲欧美偷拍另类 | 精品国产一区二区三区久久影院 | 欧美一级电影免费观看 | 国产精品一区二区精品视频免费看 | 国产精品二区在线 | 91丨九色丨蝌蚪丨对白 | 激情综合亚洲精品 | 97视频资源| 成人97视频一区二区 | 欧美亚洲一区二区在线 | 亚洲精品www久久久 www国产精品com | 亚洲一级二级 | 日韩精品aaa | 精品国产精品国产偷麻豆 | 日日操夜夜操狠狠操 | 久久99热久久99精品 | 久久久久欧美精品999 | 婷婷丁香五 | 国产亚洲精品久久久久秋 | 精品伊人久久久 | 99久久综合国产精品二区 | 欧美成人中文字幕 | 激情久久综合网 | 在线观看中文 | 成人免费在线视频观看 | 成人精品国产免费网站 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 国产一区国产二区在线观看 | 99视频精品 | 亚洲天堂网站视频 | 国产女做a爱免费视频 | 伊人天堂久久 | 免费看片网页 | 精品久久久久久久久久 | 欧美精品久久久久a | www.色午夜,com| 久久视频精品 | 亚洲 欧美 日韩 综合 | 2019免费中文字幕 | 在线观看免费日韩 | 狠狠色噜噜狠狠 | 伊甸园av在线 | 国产97免费 | 丁香视频 | 日本中文字幕观看 | 久久久香蕉视频 | 久久人人爽人人爽 | 亚洲三级网站 | 婷婷色 亚洲 | 久久久午夜精品理论片中文字幕 | 性日韩欧美在线视频 | 国产精品入口66mio女同 | 人人狠狠综合久久亚洲 | 国产一二区在线观看 | 久久手机在线视频 | 日韩高清 一区 | 91麻豆精品国产自产在线游戏 | 在线播放国产一区二区三区 | 国产免费一区二区三区最新 | 香蕉视频18 | 韩国av免费 | 91人人视频在线观看 | 久久激情片 | 日韩电影中文,亚洲精品乱码 | 久插视频 | 91视视频在线直接观看在线看网页在线看 | 国产精品免费在线视频 | www五月婷婷 | 成人午夜在线观看 | 久久亚洲免费视频 | 99在线精品视频 | 国内免费的中文字幕 | 日韩电影一区二区在线 | 免费成人av | 午夜精品久久久久久久久久久久 | 99久久精品国产亚洲 | 色多视频在线观看 | 五月综合网 | 日本视频高清 | av性网站| 成人午夜电影久久影院 | 夜夜操天天干, | 日韩三级在线 | 天天干,天天草 | 日韩精品一区二区三区第95 | 国产毛片aaa | 久久久久久久久久久高潮一区二区 | 久久综合久久综合久久 | 在线精品观看国产 | 九九精品视频在线观看 | 天天夜夜狠狠操 | 日本激情动作片免费看 | 日韩欧美极品 | 国产亚洲亚洲 | 在线免费看黄网站 | 六月天综合网 | 中文字字幕在线 | av在线播放观看 | 狠狠狠色丁香综合久久天下网 | 色狠狠狠 | 最近免费中文字幕mv在线视频3 | 欧美性生活免费看 | 精品字幕 | 少妇高潮冒白浆 | 国产视频日韩视频欧美视频 | 亚洲做受高潮欧美裸体 | 99色视频| 丁香婷婷综合激情五月色 | 亚洲欧美日韩国产一区二区三区 | 超碰成人免费电影 | 国产又黄又硬又爽 | 狠狠干天天 | 狠狠精品 | 久久天天躁狠狠躁亚洲综合公司 | 国产免费二区 | 免费视频你懂得 | 日本免费一二三区 | 久久66热这里只有精品 | 国产一区二区久久久久 | 欧美黄色特级片 | 免费看av片网站 | 中文字幕成人在线观看 | 黄色三级在线看 | av久久在线 | 成人黄色大片 | 国产高清精 | 亚洲欧美国产日韩在线观看 | 91在线视频 | 天天干夜夜 | 国内精品久久影院 | 国产精品专区在线观看 | 国产精品大片在线观看 | 国产精品国产亚洲精品看不卡15 | 九色porny真实丨国产18 | a黄色大片| 91精品啪啪 | 国产精品18久久久久vr手机版特色 | 国产精品99久久久久久久久久久久 | 免费看成人片 | 91九色蝌蚪视频网站 | 精品婷婷| 亚洲乱亚洲乱妇 | 日韩一二三区不卡 | 久久久午夜电影 | 久久久久国产精品免费 | 国产视频中文字幕 | 国产精品久久久久久久久久久杏吧 | 一区二区三区在线观看 | www操操操| 日韩欧美大片免费观看 | 99精品久久99久久久久 | 91社区国产高清 | a色视频 | 黄色网址中文字幕 | 久久香蕉国产精品麻豆粉嫩av | 午夜12点 | 99精品影视| 伊人五月天综合 | 日韩欧美99 | 亚洲涩涩涩涩涩涩 | 丁香激情婷婷 | 亚洲人视频在线 | 国产91精品一区二区麻豆网站 | 欧美日韩精品影院 | 亚洲国产精品激情在线观看 | 日韩在线精品视频 | 91最新在线| 国产成人一区二区三区在线观看 | 久久影院精品 | 国产精品专区h在线观看 | 日韩欧美99 | 中文字幕欧美激情 | 狠狠狠狠狠狠狠 | 人人干网| 中文在线字幕免费观看 | 丁香伊人网 | 免费观看完整版无人区 | 中文字幕在线有码 | 国产精品自产拍 | 99免费在线 | 爱爱av在线| 91av九色 | 日本在线观看一区二区三区 | 国产中文字幕在线免费观看 | av在线在线 | 成人性生交大片免费观看网站 | 亚洲最大成人网4388xx | 国产在线最新 | 国产视频99 | 午夜久久福利影院 | 7777精品伊人久久久大香线蕉 | 亚洲视频一区二区三区在线观看 | 国产精品热 | 免费国产在线视频 | 91精品欧美一区二区三区 | 精品国产一区二区三区免费 | 亚洲日本精品视频 | 国际精品久久久久 | 欧美精品久久久久久久久久丰满 | 久草视频播放 | 国产国语在线 | 一区 二区 精品 | 在线视频精品播放 | 色婷婷狠狠操 | 江苏妇搡bbbb搡bbbb | 精品毛片久久久久久 | 精品久久久国产 | 91在线视频精品 | 97操碰 | 一级久久久 | 国产在线观看一区 | 精品欧美一区二区在线观看 | 中文字幕在线看片 | 国产精品久久久视频 | 国产一区二区在线免费观看 | 日日爽天天爽 | 亚洲精品在线电影 | 久久免费视频在线 | 国产v视频| 最新国产精品亚洲 | 激情中文字幕 | 特黄免费av | 美州a亚洲一视本频v色道 | 精品国产资源 | 日韩欧美视频在线免费观看 | 日韩欧美在线一区二区 | 一区二区三区四区五区在线 | 国产精彩在线视频 | 欧美ⅹxxxxxx| 日韩在线视 | 精品国产一区二区三区男人吃奶 | 午夜久久福利影院 | 亚洲国产三级 | 久久人91精品久久久久久不卡 | 中文字幕精 | 国产精品毛片一区 | 99精品视频在线看 | 天堂网av在线 | 国产精品欧美久久久久三级 | 亚洲资源在线观看 | 韩国一区二区三区在线观看 | 欧美精品在线观看一区 | 亚洲丁香久久久 | 美女免费视频黄 | 亚洲天堂精品视频 | 69xx视频 | 99视频在线观看一区三区 | 婷婷五月在线视频 | 午夜精品视频免费在线观看 | av中文在线播放 | 国产成人精品一二三区 | 99在线精品视频在线观看 | 偷拍久久久 | www.99热精品| 九月婷婷人人澡人人添人人爽 | 日日摸日日添夜夜爽97 | 欧美日韩精品综合 | 天天做天天爱天天爽综合网 | 中文在线免费观看 | 欧美精品免费在线 | 国产亚洲情侣一区二区无 | 国产精品美女久久久久久免费 | 久久艹艹 | 国产精品久99 | 在线中文视频 | 日本久久久久久久久久久 | 中文字幕黄色 | 色婷婷激情四射 | 97在线观看免费高清 | 国产成人福利在线观看 | 一区二区中文字幕在线播放 | 精品视频专区 | 怡春院av| 国产一级片一区二区三区 | 免费网站在线观看人 | 精品a在线 | 区一区二区三区中文字幕 | 日日日日干 | 手机av永久免费 | 国产最新在线视频 | 日韩高清在线看 | 日本夜夜草视频网站 | 亚洲综合色网站 | 视频一区二区精品 | 91午夜精品 | 国产精品久久久久久麻豆一区 | 国产一区二区三区黄 | 夜夜躁狠狠燥 | av在线收看 | 亚洲综合小说 | 国产录像在线观看 | 国产精品精品久久久 | 国产精品久久麻豆 | 国产精品三级视频 | 亚洲五月 | 五月婷网站 | 久久久久久中文字幕 | 国产成人精品午夜在线播放 | 免费观看第二部31集 | 国产精品高清一区二区三区 | 久久久久久久久久久高潮一区二区 | 午夜影院一级片 | 亚洲综合视频在线观看 | 国产精品美女毛片真酒店 | 日操操 | 在线小视频国产 | 久久精品视频18 | 精品在线视频观看 | 婷婷免费在线视频 | av片一区二区 | 六月丁香伊人 | 99精品视频99 | 久久久av电影 | 午夜视频在线观看一区二区三区 | 97超碰在线资源 | 蜜臀久久99精品久久久无需会员 | 国产专区在线播放 | 久久久久国产精品午夜一区 | 波多野结衣一区三区 | 在线观看www.| 天天爱天天射天天干天天 | 日韩精品一区二区三区电影 | 在线一区av | 五月激情片 | 99久免费精品视频在线观看 | 日韩在线观看不卡 | 亚洲午夜精 | 国产999精品视频 | 视频国产精品 | 亚洲精品男人天堂 | 91精品久久久久久久99蜜桃 | 福利电影一区二区 | 久久精品一二三 | 免费观看国产视频 | 日韩精品一区二区三区免费观看 | 国产精品12345 | 超碰97久久| 久久久精品成人 | 成人aⅴ视频 | 欧美精品首页 | 中文字幕在线免费观看视频 | 黄色成人av | 国产又黄又爽又猛视频日本 | av一级在线 | 国产91国语对白在线 | 超碰成人免费电影 |