redis集群時,出現的幾個異常問題

2021-08-08 19:21:58 字數 2444 閱讀 4806

/my_soft/redis安裝包及jar包/redis-3.0.4/src 目錄下

執行redis 集群安裝命令:

[sql]view plain

copy

./redis-trib.rb create

--replicas 0 192.168.3.15:6379 192.168.3.15:6380 192.168.3.15:6381

命令時,出現了

in `call': err slot 8579 is already busy (redis::commanderror)

如下圖所示:

錯誤提示是

slot插槽被占用了(這是 搭建集群前時,以前redis的舊資料和配置資訊沒有清理乾淨。)

解決方案是

用redis-cli 登入到每個節點執行  flushall  和 cluster reset  就可以了。

然後重新執行群集指令碼命令:

[sql]view plain

copy

./redis-trib.rb create

--replicas 0 192.168.3.15:6379 192.168.3.15:6380 192.168.3.15:6381 

redis群集搭建成功後,6379節點莫名其的宕機,重啟了幾次,一會兒就又宕機了。

/my_soft/redis安裝包及jar包/redis-3.0.4/src 目錄下執行check指令碼:

[sql]view plain

copy

//依次執行了下面的指令碼  

./redis-trib.rb check 192.168.3.15:6379  

./redis-trib.rb check 192.168.3.15:6380  

./redis-trib.rb check 192.168.3.15:6381  

其中,6379節點出現了:[err] not all 16384 slots are covered by nodes.如下圖所示:

slot插槽出問題了,修復slot 執行下面的命令:

當然了,我們也可以把6380、6381節點都修復一下:

[sql]view plain

copy

./redis-trib.rb fix 192.168.3.15:6380  

./redis-trib.rb fix 192.168.3.15:6381  

修改完畢後,重啟6379節點,

[plain]view plain

copy

/usr/local/bin/redis-server  /my_soft/my_config/redis3/6379/redis.conf  

重啟後,6379節點自動重新加入整合。

檢視各節點的情況:

[sql]view plain

copy

/usr/local/bin/redis-cli -p 6379  

/usr/local/bin/redis-cli -p 6380  

/usr/local/bin/redis-cli -p 6381  

使用上面的任意一條命令,登入任意乙個節點:

檢視集群節點的情況:

我們也可以使用linux的通用命令來檢視

redis集群時,出現的幾個異常問題

當前 redis 的部署情況是 192.168.3.15 6379 192.168.3.15 6380 192.168.3.15 6381 在 my soft redis redis 3.0.4 src 目錄下 執行redis 集群安裝命令 redis trib.rb create replicas...

部署Redis集群遇見的異常

需要將提示節點中的資料清空,在節點目錄中,選擇相應埠 redis cli p7001 flushdb1.redis.clients.jedis.exceptions.jedisconnectionexception could not get a resource from the pool 可能是...

service stop時出現異常

sbin service line 66 23299 terminated env i lang lang path path term term 原因是 我把管理指令碼的名稱設為和後台程序名稱一樣,即 後台程序名稱 deamon name,指令碼名稱 etc init.d deamon name ...