1. 程式人生 > >Redis叢集配置與原理

Redis叢集配置與原理

叢集原理:

其實它的原理不是三兩句話能說明白的,redis 3.0 版本之前是不支援叢集的,官方    推薦最大的節點數量為 1000,至少需
要 3(Master)+3(Slave)才能建立叢集,是無中心的分散式儲存架構,可以在多個節點之間進行資料共享,解決了 Redis 高可
用、可擴充套件等問題。叢集可以 將資料自動切分(split)到多個節點,當叢集中的某一個節點故障時,redis 還可以繼續處理客戶
端的請求。

1.裝包(6臺主機都裝)

yum  -y install gcc 
tar  -zxvf  redis-4.0.8.tar.gz
cd  redis-4.0.8
make &&make install  
./utils/install_server.sh

2.修改配置檔案

vim  /etc/redis/6379.conf
bind IP地址                         //只寫實體地址介面
port 63xx              //xx代表主機IP地址的最後一個數字
cluster-enabled yes                  //啟用叢集
cluster-config-file node-63xx.conf   //指定叢集資訊檔案
cluster-node-timeout  5000           //請求時間超過5000毫秒(5秒)

3.啟動服務

/etc/init.d/redis_6379 start

4.檢視埠

ss -utnlp | grep redis-server

5.檢視叢集資訊

登入redis資料庫:redis-cli -h 192.168.4.51 -p 6351
輸入命令:cluster info    檢視叢集資訊
          cluster nodes   檢視叢集節點資訊

6.選擇一臺主機作為管家,管理其他伺服器

裝包:
yum -y install ruby rubygems
rpm -ivh --nodeps ruby-devel-2.0.0.648-30.el7.x86_64.rpm
gem  install redis-3.2.1.gem

7.建立叢集

redis-trib.rb create --replicas 1 
192.168.4.51:6351 192.168.4.52:6352 
192.168.4.53:6353 192.168.4.54:6354 
192.168.4.55:6355 192.168.4.56:6356

8.測試叢集

在客戶端訪問任意一臺master主機存取資料:

redis-cli -c -h IP地址 -p 埠

redis-cli 命令
語法格式:redis-cli 選項 引數
檢視命令幫助:redsi-cli -h

常用選項:-h + IP地址 
          -p + 埠
          -c         應用叢集模式,不需要再加引數

redis-trib.rb 命令
語法格式:redis-trib.rb 選項 引數

選項:add-node               //新增master主機
      add-node --slave       //新增slave主機
      del-node               //刪除主機
      check                  //檢測叢集 
      reshard                //重新分片

停止master主機的redis服務後,master主機對應的slave主機自動選舉為master
原先的master主機重新啟動後會自動配置為當前master的slave