Redis集羣搭建操作說明

1、創建集羣文件夾

在/usr/local/下新建redis-cluster目錄並在redis-cluster下新建7031~7036共6個文件夾(對應redis集羣的端口號),這6個文件夾代表創建redis集羣的6個節點。命令如下:

mkdir -p /usr/local/redis-cluster

mkdir 7031 7032 7033 7034 7035 7036

 

2、在redis-cluster目錄裏下載redis文件。命令如下:

cd /usr/local/redis-cluster

wget http://download.redis.io/releases/redis-4.0.12.tar.gz

tar xzf redis-4.0.12.tar.gz

cd redis-4.0.12

make

3、拷貝修改配置文件

將已有的/usr/local/redis-cluster/redis-4.0.12/下的redis.conf拷貝到新創建的7031目錄中。命令如下:

cd /usr/local/redis-cluster/redis-4.0.12/

cp redis.conf /usr/local/redis-cluster/7031

修改項如下:

(1)綁定端口,port 7031

(2)綁定IP,redis所在機器的ip,如:bind 192.168.2.128

(3)指定數據存放路徑,dir /usr/local/redis-cluster/7031

(4)啓動集羣模式,cluster-enabled yes

(5)指定集羣節點配置文件,cluster-config-file nodes-7031.conf

(6)後臺啓動,daemonize yes

(7)指定集羣節點超時時間,cluster-node-timeout 5000

(8)指定持久化方式,appendonly yes

上面紅色項目最好全部設置,不然會出意想不到的錯誤,703x最好與節點文件夾保持一致。

將7031的redis.conf改完後再拷貝到剩下的5個目錄中,然後只要全局替換redis.conf中的7031爲相應的節點即可。

4、安裝ruby

redis集羣的啓動需要用到ruby實現的redis-trib.rb,所以我們需要先安裝ruby。命令如下:

yum install ruby

yum install rubygems

gem install redis

注:如果在執行gem install redis時,出現下圖問題,見步驟9解決方案,或參考:https://blog.csdn.net/fengye_yulu/article/details/77628094

5、啓動redis,分別啓動6個redis實例。也可以用腳本循環啓動。命令如下:

for((i=1;i<=6;i++)); do /usr/local/redis-cluster/redis-4.0.12/src/redis-server /usr/local/redis-cluster/703$i/redis.conf; done

查看redis實例是否啓動成功。命令如下:

 

netstat -tunpl | grep redis-server

 或者

ps -ef | grep redis-server

6、創建並啓動集羣

進入redis安裝目錄的src目錄下:

cd /usr/local/redis-cluster/redis-4.0.12

./redis-trib.rb create --replicas 1 192.168.2.128:7031 192.168.2.128:7032 192.168.2.128:7033 192.168.2.128:7034 192.168.2.128:7035 192.168.2.128:7036

命令的意義如下:

給定 redis-trib.rb 程序的命令是 create,表示創建一個新的集羣。選項 --replicas 1 表示爲集羣中的每個主節點創建一個從節點。

之後跟着的其他參數則是實例的地址列表, 指定使用這些地址所指示的實例來創建新集羣。

“All 16384 slots covered.”表示集羣中的 16384 個槽都有至少一個主節點在處理, 集羣運作正常。從打印出來的信息也可以看出,7031,7032,7033是主節點,其它三個是從節點。

7、客戶端連接集羣

集羣啓動成功後,我們可以在pc機上安裝RedisDesktopManager客戶端連接工具連接redis集羣,如圖:

 

                         

RedisDesktopManager客戶端下載地址:https://pan.baidu.com/s/1kU8sY3P

8、集羣關閉

關閉集羣需要逐個關閉

for((i=1;i<=6;i++)); do /usr/local/redis-cluster/redis-4.0.12/src/redis-cli -c -h 192.168.2.128 -p 703$i shutdown; done

 如果重新啓動集羣報以下錯誤:

需要清除殺掉redis實例,然後刪除每個節點下的臨時數據文件appendonly.aof,dump.rdb,nodes-703x.conf,然後再重新啓動redis實例即可啓動集羣。命令如下:

殺掉redis實例:

kill -s 9 1827(redis每個節點的pId)

刪除每個節點下的臨時數據文件:

cd /usr/local/redis-cluster/

for((i=1;i<=6;i++)); do cd 703$i; rm -rf appendonly.aof; rm -rf dump.rdb; rm -rf nodes-703$i.conf; cd ..; done

 9、在執行gem install redis時,出現如下異常的處理

問題原因:CentOS7 yum庫中ruby的版本支持到 2.0.0,可gem 安裝redis需要最低是2.2.2

解決方案:

1)安裝RVM,命令如下:

gpg2 --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3

curl -L get.rvm.io | bash -s stable

source /usr/local/rvm/scripts/rvm

2)查看rvm庫中已知的ruby版本,命令如下:

rvm list known

查詢到內容如下:

3)安裝一個ruby版本

rvm install 2.3.3

4)使用一個ruby版本

rvm use 2.3.3

5)設置默認版本

rvm use 2.3.3 --default

6)卸載一個已知版本

rvm remove 2.0.0

7)查看ruby版本

ruby --version

如果顯示如下圖,則說明安裝ruby2.3.3成功

8)ruby2.3.3成功後,再安裝redis,並進行之後的步驟

gem install redis

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章