欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

Redis集群管理(一)

1、集群管理常用命令

// 集群(cluster) ?
CLUSTER INFO ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?打印集群的狀態信息 ?
CLUSTER NODES ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 列出集群當前已知的所有節點(node),以及這些節點的相關信息?

// 節點(node) ?
CLUSTER MEET <ip> <port> ? ? ? ? ? ? ? ? ? ?將ip和port所指定的節點添加到集群當中,讓它成為集群的一份子
CLUSTER FORGET <node_id> ? ? ? ? ? ? ? ? ? ?從集群中移除node_id指定的節點
CLUSTER REPLICATE <node_id> ? ? ? ? ? ? ? ? 將當前節點設置為node_id指定節點的從節點
CLUSTER SAVECONFIG ? ? ? ? ? ? ? ? ? ? ? ? ?將當前節點的配置信息手動保存到硬盤(nodes-port.conf)?
CLUSTER SLAVES <master_node_id> ? ? ? ? ? ? 查詢指定的master_node_id主節點有哪些從(slave)節點

// 槽(slot) ?
CLUSTER ADDSLOTS <slot> [slot ...] ? ? ? ? ?將一個或多個槽(slot)指派(assign)給當前節點
CLUSTER DELSLOTS <slot> [slot ...] ? ? ? ? ?將一個或多個槽從當前節點移除
CLUSTER FLUSHSLOTS ? ? ? ? ? ? ? ? ? ? ? ? ?移除指派給當前節點的所有槽,讓當前節點變成一個沒有指派任何槽的節點
CLUSTER SETSLOT <slot> NODE <node_id> ? ? ? 將當前節點指定的槽(slot)指派給node_id指定的節點,如果槽已經指派給另一個節點,那么先讓另一個節點刪除該槽,然后再進行指派
CLUSTER SETSLOT <slot> MIGRATING <node_id> ?將當前節點指定的槽(slot)遷移到node_id指定的節點中
CLUSTER SETSLOT <slot> IMPORTING <node_id> ?從node_id指定節點中的槽(slot)導入到當前節點
CLUSTER SETSLOT <slot> STABLE ? ? ? ? ? ? ? 取消對當前節點指定槽(slot)的導入(import)或者遷移(migrate)
CLUSTER SLOTS ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 查看槽(slot)在集群中的分配情況

// 鍵 (key) ?
CLUSTER KEYSLOT <key> ? ? ? ? ? ? ? ? ? ? ? 計算鍵key應該被分配在哪個槽上 ?
CLUSTER COUNTKEYSINSLOT <slot> ? ? ? ? ? ? ?返回指定槽(slot)保存key的數量 ?
CLUSTER GETKEYSINSLOT <slot> <count> ? ? ? ?獲取指定槽(slot)中count個key,如果指定槽中大于count個key,則只返回前cout個key,小于或為空,則返回最多數量的key?

以上命令是集群特有的,必須登錄到redis集群才能使用。注釋中提到的當前節點,指登錄到集群中指定的節點。如:redis-cli -h 192.168.0.201 -p 6379,當前登錄的節點就是192.168.0.201:6379。
更多集群管理命令請參考官網

shell> redis-cli -c -h 192.168.0.201 -p 6379
127.0.0.1:6379> cluster nodes
459dbcccc1e5be021f19efde794b9e84474c0c02 192.168.0.202:16379 slave b6814c717080de33907e6f769e1fd8dc4fe53c38 0 1468339459776 11 connected
06023f8283389ad5580c782797f49a5996c108b3 192.168.0.201:6379 myself,master - 0 0 10 connected 500-11255
91179b96d9b8abce85fa7a5748aa9b4114f0b260 192.168.0.202:16380 slave 06023f8283389ad5580c782797f49a5996c108b3 0 1468339462797 10 connected
ef8a49e5242c791551f1b317d5039144e38acde6 192.168.0.201:6380 slave 13567f6f8787d3aa3f4ef3abd15c2cc500a1469b 0 1468339466819 8 connected
b6814c717080de33907e6f769e1fd8dc4fe53c38 192.168.0.201:6381 master - 0 1468339465813 11 connected 0-499
13567f6f8787d3aa3f4ef3abd15c2cc500a1469b 192.168.0.202:16381 master - 0 1468339463802 8 connected 11256-16383

2、添加節點

添加一對(一主一從)新的節點加入到集群當中:192.168.0.201:6382(Master)和192.168.0.201:6383(Slave),文中簡稱201:6381和201:16382。

1> 添加master節點

shell> redis-trib.rb add-node 192.168.0.201:6382 192.168.0.201:6379

參數說明:
192.168.0.201:6382:新節點
192.168.0.201:6379:可以是集群中的任意一個節點(這里以201:6379為例)

注意:
1> 新的節點必須開啟了集群配置
2> 新的節點必須已啟動
如果不同時滿足以上兩點,將無法加入到集群中。成功加入集群后,會打印如下信息:

Redis集群管理(一)

2> 為master節點分配slot

當往Redis集群中存儲一份數據時,redis根據key的hash值對16384(slot)取模,算出負責指定slot范圍內的某個節點來存儲這個key。集群在第一次創建的時候,會給每個master節點在16384個slot中平均分配相應的slot數量,而后面新加入的master節點默認是不會分配slot的。所以我們需要手動為新加入的節點分配一定范圍的slot,以便集群在存取數據的時候,能夠找到這個新加入的節點。

[root@localhost redis-3.2.0]# redis-cli cluster nodes
901cade1bc2703ef2bb4ff49466b38762346755d 192.168.0.201:6382 master - 0 1468324422110 0 connected
06023f8283389ad5580c782797f49a5996c108b3 192.168.0.201:6379 myself,master - 0 0 1 connected 0-5460
...

sloat范圍顯示在節點狀態(connected)后邊,從上可以看出,新加入的節點201:6382是沒有分配slot的,所以為空。而為201:6379節點分配了0-5460范圍的slot。
為新節點分配slot的原理是從其它主節點中負責的slot中,各移出一部份
slot給新的節點。下面為201:6382分配slot:

shell> redis-trib.rb reshard 192.168.0.201:6382

Redis集群管理(一)

注意上圖中紅框部份:
1> 1000 : 為新的master節點分配1000個slot
2> 901cade1bc2703ef2bb4ff49466b38762346755d:接收1000個slot的master節點ID
3> 選擇從哪些主節點移動slot到新加入的主節點中:
* all:表示從集群中所有master節點中各移動一部份slot,湊夠1000個slot為止
* 選擇輸入一個或多個master的node_id來從中移動,最后輸入done完成選擇
4> yes:執行slot移動操作,輸入no表示終止操作。
下面看下新的集群節點及slot分布情況:

[root@localhost redis-3.2.0]# redis-cli cluster nodes
901cade1bc2703ef2bb4ff49466b38762346755d 192.168.0.201:6382 master - 0 1468325773988 9 connected 0-332 5461-5794 10923-11255
459dbcccc1e5be021f19efde794b9e84474c0c02 192.168.0.202:16379 slave b6814c717080de33907e6f769e1fd8dc4fe53c38 0 1468325769968 7 connected
06023f8283389ad5580c782797f49a5996c108b3 192.168.0.201:6379 myself,master - 0 0 1 connected 333-5460
91179b96d9b8abce85fa7a5748aa9b4114f0b260 192.168.0.202:16380 slave 06023f8283389ad5580c782797f49a5996c108b3 0 1468325775495 5 connected
ef8a49e5242c791551f1b317d5039144e38acde6 192.168.0.201:6380 slave 13567f6f8787d3aa3f4ef3abd15c2cc500a1469b 0 1468325772982 8 connected
b6814c717080de33907e6f769e1fd8dc4fe53c38 192.168.0.201:6381 master - 0 1468325771976 7 connected 5795-10922
13567f6f8787d3aa3f4ef3abd15c2cc500a1469b 192.168.0.202:16381 master - 0 1468325774992 8 connected 11256-16383

已經成功為201:6382節點分配了0-332、5461-5794、10923-11255范圍的slot,可以看出redis從其它三個master節點中均勻的移動了一部份slot到201:6382中。

文章鏈接: http://www.qzkangyuan.com/13632.html

文章標題:Redis集群管理(一)

文章版權:夢飛科技所發布的內容,部分為原創文章,轉載請注明來源,網絡轉載文章如有侵權請聯系我們!

聲明:本站所有文章,如無特殊說明或標注,均為本站原創發布。任何個人或組織,在未征得本站同意時,禁止復制、盜用、采集、發布本站內容到任何網站、書籍等各類媒體平臺。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。

給TA打賞
共{{data.count}}人
人已打賞
建站教程投稿分享

Redis集群搭建(二)

2022-12-2 0:14:42

建站教程投稿分享

Redis集群管理(二)

2022-12-2 0:24:47

0 條回復 A文章作者 M管理員
    暫無討論,說說你的看法吧
?
個人中心
購物車
優惠劵
今日簽到
有新私信 私信列表
搜索
主站蜘蛛池模板: 沙雅县| 绥化市| 怀化市| 新密市| 周宁县| 静乐县| 山东| 石门县| 馆陶县| 武鸣县| 江都市| 鄄城县| 丰都县| 太谷县| 射洪县| 荣昌县| 安乡县| 宝丰县| 遂川县| 云安县| 泉州市| 阿城市| 张北县| 墨竹工卡县| 阿拉善右旗| 宾阳县| 揭阳市| 哈密市| 扶绥县| 绥棱县| 精河县| 安溪县| 石河子市| 崇信县| 广丰县| 扶风县| 黔西| 兴化市| 开原市| 万安县| 娱乐|