準備
下載安裝redis
redis安裝成功後文件
Redis只有3.0之後的版本纔有集羣
修改配置文件
redis.windows.conf
修改內容爲
port 7001//修改爲與當前文件夾名字一樣的端口號
appendonly yes //指定是否在每次更新操作後進行日誌記錄,Redis在默認情況下是異步的把數據寫入磁盤,如果不開啓,可能會在斷電時導致一段時間內的數據丟失。 yes表示:存儲方式,aof,將寫操作記錄保存到日誌中
cluster-enabled yes //開啓集羣模式
cluster-config-file nodes-7001.conf //保存節點配置,自動創建,自動更新(建議命名時加上端口號)
cluster-node-timeout 15000 //集羣超時時間,節點超過這個時間沒反應就斷定是宕機
然後把7001 redis文件,每樣複製一份到7002 7003 ---- 7006 一份!
Redis集羣至少需要3個master節點,所以現在總共有6個節點,就只能是1master對應1slave這種方式。
然後代開沒7001 — 7006 得redis.windows.conf文件把端口和cluster-config-file文件一下,這裏建議打開直接替換7001對應的端口(全局替換每個redis.windows.conf 文件)
然後每個節點文件下建立一個啓動bat文件
startbat.bat
title redis
redis-server.exe redis.windows.conf
然後每個點擊啓動即可
下載Ruby並安裝
下載地址:http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.4-x64.exe
下載後雙擊安裝下一步,勾全選。
下載安裝Redis的Ruby驅動redis-xx.gem
根據你的redis版本進行下載
下載之後放到Ruby安裝目錄下
cmd打開命令框
執行命令 gem install --local C:\Ruby22-x64\redis-3.2.2.gem
出現以下信息說明配置成功
安裝集羣腳本redis-trib
下載地址 https://raw.githubusercontent.com/antirez/redis/unstable/src/redis-trib.rb
或者百度雲 鏈接:https://pan.baidu.com/s/1kOZs9f7onZOFgmgazRGGtA 提取碼:vdhf
下載後放到redis集羣文件根目錄下
啓動集羣
首先
啓動7001 – 7006 所有的redis ( 或者啓動所有集羣節點start.bat ) 這裏無論什麼方式 只要啓動redis了就可以。
然後
開始創建集羣 打開cmd 執行構建集羣腳本 redis-trib.rb
ruby redis-trib.rb create --replicas 1 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7006
replicas 1
中的 1
表示佔比,表示主和從的比例數據,這裏是三主三從
,所以是1
說明各個集羣在進行
上面啓動的腳本創建集羣的時候
中途會詢問是否打印更多詳細信息,輸入yes ,然後 redis-trib 就會將這份配置應用到集羣當中,讓各個節點開始互相通訊。
中途會打印輸出很多日誌
測試
在7001 庫添加一個數據測試,然後其他庫進行查詢 數據同步過來就說明成功。
分配策略
Redis集羣數據分配策略
採用一種叫做哈希槽 (hash slot)的方式來分配數據,redis cluster 默認分配了 16384 個slot,三個節點分別承擔的slot 區間是