Redis集群的關閉、啟動、重啟等相關指令


關閉

  • 方式一:進入redis后,使用SHUTDOWN指令或SHUTDOWN SAVE指令或SHUTDOWN NOSAVE指令。
  • 方式二:通過redis的客戶端程序redis-clishutdown命令
redis-cli -p 6380 shutdown

 

  • 方式三(不推薦):謹慎使用直接kill -9 ${進程號}的方式。
# 查看redis進程
ps -ef|grep redis
# kill掉進程
kill -9 2177 2217

 

啟動

  • 如果之前集群已經搭建好了,由於某些原因kill掉了所有節點,如果此時需要啟動集群的話,只需要挨個啟動各個Redis節點即可,集群自然就起來了。(注意:啟動redis服務時請在上次成功啟動服務的目錄啟動,即已經生成rdb,conf的目錄,否則該節點加入不了集群)

相關指令(注意:redis-server命令已經用alias定義別名使用了):

redis-server /opt/redis-cluster-6379/redis.conf

執行效果如圖:

 

 

 

重啟

 

(保留原有集群的)重啟:

  • 不需要再執行(形如redis-cli -a ds123 --cluster create 10.8.109.24:6379 10.8.109.36:6379 10.8.109.49:6379 10.8.109.49:6380 10.8.109.24:6380 10.8.109.36:6380 --cluster-replicas 1這樣的)集群生成指令。
  • 第一步:關閉各個Redis節點。
  • 第二步:啟動各個Redis節點即可。(注意:啟動redis服務時請在上次成功啟動服務的目錄啟動,即已經生成rdb,conf的目錄,否則該節點加入不了集群)

(刪除原有集群的)重啟:

  • 需要再執行(形如redis-cli -a ds123 --cluster create 10.8.109.24:6379 10.8.109.36:6379 10.8.109.49:6379 10.8.109.49:6380 10.8.109.24:6380 10.8.109.36:6380 --cluster-replicas 1這樣的)集群生成指令。
  • 第一步:關閉各個Redis節點。
  • 第二步:刪除各個Redis安裝目錄下的節點配置文件nodes.conf數據文件dump.rdb

說明:此方式相當於重置到剛剛創建集群的時候了,所以需要刪除節點配置文件nodes.conf、還需要刪除數據存儲文件dump.rdb。

相關指令:

# 刪除節點配置文件
rm nodes.conf dump.rdb

 rm -f dump-1-6379.rdb dump-1-6380.rdb
 rm -f nodes-1-6379.conf nodes-1-6380.conf
 rm -f dump-2-6379.rdb dump-2-6380.rdb
 rm -f nodes-2-6379.conf nodes-2-6380.conf
 rm -f dump-2-6379.rdb dump-2-6380.rdb
 rm -f nodes-3-6379.conf nodes-3-6380.conf

注:節點配置文件nodes.conf、數據文件dump.rdb等可以在redis.conf文件中指定

  • 第三步:啟動各個Redis節點。
  • 第四步:(在集群中的任意一個節點)執行集群搭建指令
src/redis-cli -a ds123 --cluster create 10.8.109.24:6379 10.8.109.36:6379 10.8.109.49:6379 10.8.109.49:6380 10.8.109.24:6380 10.8.109.36:6380 --cluster-replicas 1

注:因為我們開啟了Redis密碼認證,所以需要在這里-a ds123指明密碼,其中ds123就是本人設置的密碼。

注:--cluster-replicas 1中,1代表的是一個master有一個slave;前三個ip是master,后三個ip是對應的slave。

執行效果如圖:

 

 注:如果此步時,最后提示[ERR] Not all 16384 slots are covered by nodes:

 

 那么就說明:有部分slot被占用了(因為之前的Redis集群中使用過了部分solt,所以我們“重置”集群時會受到影響),此時我們需要清理每個節點的solt,進入各節點的客戶端:

# 進入客戶端
src/redis-cli -c
# 密碼認證
auth ds123
# 清理當前連接的節點下的所有slot
cluster flushslots

執行效果為:

 

 再進行(刪除原有集群的)重啟即可。

 

集群相關指令:

查看集群相關指令:

# 進入redis客戶端,輸入
cluster help

查看集群狀態信息:

# 進入redis客戶端,輸入
cluster info

查看集群節點信息:

# 進入redis客戶端,輸入
cluster nodes

 

 

參考文獻:https://blog.csdn.net/justry_deng/article/details/89205155

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM