最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Redis集群水平擴展、集群中添加以及刪除節(jié)點的操作

 更新時間:2021年03月25日 15:20:56   作者:只管努力,剩下的交給時間  
這篇文章主要介紹了Redis集群水平擴展、集群中添加以及刪除節(jié)點的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

Redis集群搭建中,我們搭建了下圖所示的Redis集群,接下來我們就來看看如何為我們的Redis集群進行水平擴容。

[root@localhost redis-5.0.3]# src/redis-server redis-cluster/8001/redis.conf 
[root@localhost redis-5.0.3]# src/redis-server redis-cluster/8004/redis.conf
[root@localhost redis-5.0.3]# src/redis-server redis-cluster/8002/redis.conf 
[root@localhost redis-5.0.3]# src/redis-server redis-cluster/8005/redis.conf 
[root@localhost redis-5.0.3]# src/redis-server redis-cluster/8003/redis.conf 
[root@localhost redis-5.0.3]# src/redis-server redis-cluster/8006/redis.conf 

首先,先啟動我們的集群(在上一篇博客中,我們已經(jīng)將集群環(huán)境搭好了,只需要重啟啟動redis服務(wù)即可)

查看集群中的信息:

為集群水平擴容

接下來,我們將在集群得基礎(chǔ)上再添加一主一從,增加后集群如下圖所示:

1. 增加8007和8008倆個redis實例

在/usr/local/software/redis-5.0.3/redis-cluster下創(chuàng)建8007和8008文件夾,并拷貝8001文件夾下的redis.conf文件到8007和8008這兩個文件夾下,進行修改

mkdir 8007 8008
cd 8001
cp redis.conf /usr/local/software/redis-5.0.3/redis-cluster/8007/
cp redis.conf /usr/local/software/redis-5.0.3/redis-cluster/8008/

# 修改8007文件夾下的redis.conf配置文件
vim /usr/local/software/redis-5.0.3/redis-cluster/8007/redis.conf
# 修改如下內(nèi)容:
port 8007
dir /usr/local/software/redis-5.0.3/redis-cluster/8007
cluster-config-file nodes-8007.conf

# 修改8008文件夾下的redis.conf配置文件
vim /usr/local/software/redis-5.0.3/redis-cluster/8008/redis.conf
修改內(nèi)容如下:
port 8008
dir /usr/local/software/redis-5.0.3/redis-cluster/8008
cluster-config-file nodes-8008.conf

# 啟動8007和8008倆個服務(wù)并查看服務(wù)狀態(tài)
src/redis-server /usr/local/software/redis-5.0.3/redis-cluster/8007/redis.conf
src/redis-server /usr/local/software/redis-5.0.3/redis-cluster/8008/redis.conf
ps -el | grep redis

2. 將8007和8008加入集群中

查看redis集群得幫助命令:

1.create:創(chuàng)建一個集群環(huán)境host1:port1 … hostN:portN

2.call:可以執(zhí)行redis命令

3.add-node:將一個節(jié)點添加到集群里,第一個參數(shù)為新節(jié)點的ip:port,第二個參數(shù)為集群中任意一個已經(jīng)存在的節(jié)點的ip:port

4.del-node:移除一個節(jié)點

5.reshard:重新分片

6.check:檢查集群狀態(tài)

添加8007和8008節(jié)點到集群中

[root@localhost redis-5.0.3]# src/redis-cli --cluster add-node 192.168.243.133:8007 192.168.243.133:8001
[root@localhost redis-5.0.3]# src/redis-cli --cluster add-node 192.168.243.133:8008 192.168.243.133:8001

3. 查看集群狀態(tài)

我們發(fā)現(xiàn)對于新加入的節(jié)點默認都是master節(jié)點,最重要的是,他們都沒有分配slots槽位,所以根據(jù)Redis集群分片的原理,這些剛加入集群的節(jié)點實際上是不能讀寫數(shù)據(jù)的。

4. 為新加入的節(jié)點分配槽位

使用集群中的任意一個主節(jié)點,對其進行重新分片工作

[root@localhost redis-5.0.3]# src/redis-cli --cluster reshard 192.168.243.133:8001

輸入命令后,會進入一個交互式的操作:

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

你想移動多少個槽位? 這里移動600個

2. What is the receiving node ID? 7cbcddaea49560b2847327b1465e8db7082655d2

要將槽位分配給拿給節(jié)點? 指定節(jié)點的ID

3. 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: all

要從哪幾個節(jié)點抽取槽位,all:從所有的節(jié)點中,各自抽取一部分槽位給8007。輸入all后會有一個抽取槽位的計劃

4.Do you want to proceed with the proposed reshard plan (yes/no)? yes開始執(zhí)行

是否執(zhí)行該reshard計劃。

查看集群的最新狀態(tài):

我們可以看到8007已經(jīng)有hash槽位了,此時我們就能往8007進行讀寫操作了

5. 將8008配置為8007的從節(jié)點

我們可以通過replicate命令指定當(dāng)前節(jié)點成為哪一個節(jié)點的從節(jié)點。

192.168.243.133:8008> cluster replicate 7cbcddaea49560b2847327b1465e8db7082655d2
OK

查看集群的狀態(tài):

發(fā)現(xiàn)8008已經(jīng)成為8007的從節(jié)點了,至此,Redis水平擴容成功。

刪除集群中的節(jié)點

刪除8008從節(jié)點

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

[root@localhost redis-5.0.3]# src/redis-cli --cluster del-node 192.168.243.133:8008 840340ce7a2dabdfc6ad40fde17e9e0c803b386c

發(fā)現(xiàn)8008已經(jīng)被移除了。

刪除8007主節(jié)點

刪除8007節(jié)點比刪除8008節(jié)點麻煩一點,因為8007節(jié)點管理一部分slots,在刪除它之前,需要將slots分配給其他可用的master節(jié)點上,否則就會出現(xiàn)數(shù)據(jù)丟失問題。

1、重新分配8007上的slots

[root@localhost redis-5.0.3]# src/redis-cli --cluster reshard 192.168.243.133:8007

交互流程:

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

2. What is the receiving node ID? ec0001bd4282f790017d1e68259c67f2d7037a3c

接收slots的節(jié)點ID(這里是8001的主節(jié)點ID)

3. 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: 7cbcddaea49560b2847327b1465e8db7082655d2
Source node #2: done

數(shù)據(jù)源ID,這里輸入8007節(jié)點的ID,表示600個slots都由8007提供(8007總共就600個slots)

4. Do you want to proceed with the proposed reshard plan (yes/no)? yes

查看集群節(jié)點狀態(tài):

2、使用del-node命令刪除8007節(jié)點

[root@localhost redis-5.0.3]# src/redis-cli --cluster del-node 192.168.243.133:8007 7cbcddaea49560b2847327b1465e8db7082655d2

再次查看集群狀態(tài):

8007已經(jīng)被移除

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • Redis 實現(xiàn)“附近的人”功能

    Redis 實現(xiàn)“附近的人”功能

    Redis基于geohash和有序集合提供了地理位置相關(guān)功能。這篇文章主要介紹了Redis 實現(xiàn)“附近的人”功能,需要的朋友可以參考下
    2019-11-11
  • 基于Redis實現(xiàn)共享Session登錄的實現(xiàn)

    基于Redis實現(xiàn)共享Session登錄的實現(xiàn)

    本文主要介紹了基于Redis實現(xiàn)共享Session登錄的實現(xiàn),包括發(fā)送短信驗證碼、短信驗證碼登錄和注冊、以及登錄狀態(tài)校驗的流程,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • Redis分布式鎖如何實現(xiàn)續(xù)期

    Redis分布式鎖如何實現(xiàn)續(xù)期

    這篇文章主要介紹了Redis分布式鎖如何實現(xiàn)續(xù)期的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • 分布式使用Redis實現(xiàn)數(shù)據(jù)庫對象自增主鍵ID

    分布式使用Redis實現(xiàn)數(shù)據(jù)庫對象自增主鍵ID

    本文介紹在分布式項目中使用Redis生成對象的自增主鍵ID,通過Redis的INCR等命令實現(xiàn)計數(shù)器功能,具有一定的參考價值,感興趣的可以了解一下
    2024-12-12
  • 詳解緩存穿透擊穿雪崩解決方案

    詳解緩存穿透擊穿雪崩解決方案

    在我們?nèi)粘5拈_發(fā)中,有時需要系統(tǒng)在極短的時間內(nèi)完成成千上萬次的讀/寫操作,這個時候不是數(shù)據(jù)庫能夠承受的,通常會引入NoSQL技術(shù)。redis技術(shù)就是NoSQL技術(shù)中的一種,但是引入redis又有可能出現(xiàn)緩存穿透,緩存擊穿,緩存雪崩等問題。本文就對這三種問題進行較深入剖析。
    2021-05-05
  • 一篇文章帶你徹底搞懂Redis?事務(wù)

    一篇文章帶你徹底搞懂Redis?事務(wù)

    這篇文章主要介紹了一篇文章帶你徹底搞懂Redis?事務(wù)的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • redis lettuce連接池經(jīng)常出現(xiàn)連接拒絕(Connection refused)問題解決

    redis lettuce連接池經(jīng)常出現(xiàn)連接拒絕(Connection refused)問題解決

    本文主要介紹了在Windows 10/11系統(tǒng)中使用Spring Boot和Lettuce連接池訪問Redis時,遇到的連接拒絕問題,下面就來介紹一下解決方法,感興趣的可以了解一下
    2025-03-03
  • redis-cli命令行工具的使用小結(jié)

    redis-cli命令行工具的使用小結(jié)

    redis-cli是Redis的命令行客戶端,支持多種參數(shù)用于連接、操作和管理Redis數(shù)據(jù)庫,本文給大家介紹redis-cli命令行工具的使用小結(jié),感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • Redis實現(xiàn)分布式鎖的實例講解

    Redis實現(xiàn)分布式鎖的實例講解

    在本篇文章里小編給大家整理了一篇關(guān)于Redis實現(xiàn)分布式鎖的實例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。
    2021-12-12
  • redis?主從哨兵模式實現(xiàn)一主二從

    redis?主從哨兵模式實現(xiàn)一主二從

    本文主要介紹了redis?主從哨兵模式實現(xiàn)一主二從,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評論

长兴县| 安宁市| 龙胜| 翁源县| 中方县| 衡阳市| 南宁市| 巴青县| 张家川| 大名县| 子长县| 绥德县| 新密市| 舒城县| 宁城县| 兴国县| 泉州市| 丘北县| 新密市| 溧水县| 天台县| 沙田区| 平远县| 偏关县| 弥渡县| 白山市| 微山县| 长汀县| 肥西县| 内丘县| 黄浦区| 灌南县| 利川市| 连州市| 慈利县| 清远市| 榆社县| 通州市| 通榆县| 海宁市| 连州市|