免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

Redis集群操作的方法

本篇內容介紹了“redis集群操作的方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

為忠縣等地區用戶提供了全套網頁設計制作服務,及忠縣網站建設行業解決方案。主營業務為成都網站制作、網站建設、外貿網站建設、忠縣網站設計,以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業、用心的態度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

Redis集群操作的方法

基于已有一定基礎,這里搭建一個基礎版本三主三從,架構如下

Redis集群操作的方法

1、啟動集群

/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8001/redis.conf 
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8002/redis.conf 
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8003/redis.conf 
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8004/redis.conf 
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8005/redis.conf 
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8006/redis.conf

查看集群狀態:cluster nodes

Redis集群操作的方法從上圖可以看出,整個集群運行正常,三個master節點和三個slave節點,

  • 8001端口的實例節點存儲0-5460這些hash槽,

  • 8002端口的實例節點存儲5461-10922這些hash槽,

  • 8003端口的實例節點存儲10923-16383這些hash槽,

這三個master節點存儲的所有hash槽組成 redis集群的存儲槽位,slave點是每個主節點的備份從節點,不顯示存儲槽位。

2、集群操作

       我們在原始集群基礎上再增加一主(8007)一從(8008),增加節點后的集群參見下圖,新增節點用虛線框表示

Redis集群操作的方法

2.1、增加redis實例

       在/usr/local/redis-cluster下創建8007和8008文件夾,并拷貝8001文件夾下的redis.conf文件到8007和8008這兩個文件夾下

mkdir 8007 8008 
cd 8001
cp redis.conf /usr/local/redis‐cluster/8007/ 
cp redis.conf /usr/local/redis‐cluster/8008/
 
# 修改8007文件夾下的redis.conf配置文件
vim /usr/local/redis‐cluster/8007/redis.conf 
# 修改如下內容:
port:8007 
dir /usr/local/redis‐cluster/8007/
cluster‐config‐file nodes‐8007.conf 

# 修改8008文件夾下的redis.conf配置文件
vim /usr/local/redis‐cluster/8008/redis.conf
# 修改內容如下:
port:8008
dir /usr/local/redis‐cluster/8008/
cluster‐config‐file nodes‐8008.conf

# 啟動8007和8008倆個服務并查看服務狀態
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8007/redis.conf
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8008/redis.conf

ps ‐el | grep redis

2.2、配置8007為主節點

用add-node命令新增一個主節點8007(master),前面的ip:port為新增節點,后面的ip:port為已知存在節點,看到日志最后有"[OK] New node added correctly"提示代表新節點加入成功

/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster add‐node 192.168.0.61:8007 192.168.0.61:8001

查看集群狀態

/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐c ‐h 192.168.0.61 ‐p 8001

192.168.0.61:8001> cluster nodes

如下所示:

Redis集群操作的方法

注意:當添加節點成功以后,新增的節點不會有任何數據,因為它還沒有分配任何的slot(hash槽),我們需要為新節點手工分配hash槽

使用redis-cli命令為8007分配hash槽,找到集群中的任意一個主節點,對其進行重新分片工作

/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster reshard 192.168.0.61:8001

2.3、配置8008為8007的從節點

添加從節點8008到集群中去并查看集群狀態

/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster add‐node 192.168.0.61:8008 192.168.0.61:8001

如下:

Redis集群操作的方法

如圖所示,還是一個master節點,沒有被分配任何的hash槽。

原因:我們需要執行replicate命令來指定當前節點(從節點)的主節點id為哪個,首先需要連接新加的8008節點的客戶端,然后使用集群命令進行操作,把當前的8008(slave)節點指定到一個主節點下(這里使用之前創建的8007主節點)

執行指令

/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐c ‐h 192.168.0.61 ‐p 8008 

192.168.0.61:8008> cluster replicate 2728a594a0498e98e4b83a537e19f9a0a3790f38 #后面這串id為8007的節點id

查看集群狀態,8008節點已成功添加為8007節點的從節點

Redis集群操作的方法

2.4、刪除8080從節點[不刪除四主四從]

用del-node刪除從節點8008,指定刪除節點ip和端口,以及節點id(紅色為8008節點id)

/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster del‐node 192.168.0.61:8008 a1cfe35722d151cf70585cee212755653 93c0956

再次查看集群狀態,如下圖所示,8008這個slave節點已經移除,并且該節點的redis服務也已被停止

Redis集群操作的方法

2.5、刪除8007主節點[不刪除四主四從]

因為主節點的里面是有分配了hash槽的,所以我們這里必須先把8007里的hash槽放入到其他的可用主節點中去,然后再進行移除節點操作,不然會出現數據丟失問題(目前只能把master的數據遷移到一個節點上,暫時做不了平均分配功能),執行命令如下:

/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster reshard 192.168.0.61:8007

遷移驗證:會發現8007下面已經沒有任何hash槽了,證明遷移成功!

Redis集群操作的方法

用del-node命令刪除8007主節點即可

/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster del‐node 192.168.0.61:8007 2728a594a0498e98e4b83a537e19f9a0a 3790f38

查看最終集群狀態,發現一切恢復如初,至此水平擴展結束

Redis集群操作的方法

“Redis集群操作的方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注創新互聯網站,小編將為大家輸出更多高質量的實用文章!

分享題目:Redis集群操作的方法
分享鏈接:http://m.newbst.com/article38/jheopp.html

成都網站建設公司_創新互聯,為您提供網站改版商城網站網站收錄做網站軟件開發微信公眾號

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

綿陽服務器托管