在windows上搭建redis集群(redis-cluster)


一 所需軟件:Redis、Ruby語言運行環境、Redis的Ruby驅動redis-xxxx.gem、創建Redis集群的工具redis-trib.rb

二 安裝配置redis 

redis下載地址   https://github.com/MSOpenTech/redis/releases ;  下載Redis-x64-3.2.100.zip。

集群規划有三個節點的集群,每個節點有一主一備。需要6台虛擬機。

把 redis 解壓后,再復制出 5 份,配置 三主三從集群。 由於 redis 默認端口號為 6379,那么其它5份的端口可以為6380,6381,6382,6383,6384。 並且把目錄使用端口號命名

 打開目錄6379下有一個文件 redis.windows.conf,修改里面的端口號,以及集群支持配置。

修改其他配置支持集群

cluster-enabled yes

cluster-config-file nodes-6379.conf

cluster-node-timeout 15000

appendonly yes

如果cluster-enabled 不為yes, 那么在使用JedisCluster集群代碼獲取的時候,會報錯。

cluster-node-timeout 調整為  15000,那么在創建集群的時候,不會超時。

cluster-config-file nodes-6379.conf 是為該節點的配置信息,這里使用 nodes-端口.conf命名方法。服務啟動后會在目錄生成該文件。

編寫一個 bat 來啟動 redis,在每個節點目錄下建立 start.bat,內容如下:

title redis-6380

redis-server.exe redis.windows.conf

 

三 安裝Ruby

redis的集群使用  ruby腳本編寫,所以系統需要有 Ruby 環境 ,下載地址 http://dl.bintray.com/oneclick/rubyinstaller/:rubyinstaller-2.3.3-x64.exe

安裝時3個選項都勾選。

 

四 安裝Redis的Ruby驅動redis-xxxx.gem

下載地址 https://rubygems.org/pages/download, 下載后解壓,當前目錄切換到解壓目錄中,如 D:\Program Files\redis\rubygems-2.6.12 然后在命令行執行  ruby setup.rb。

 

然后GEM 安裝 Redis :切換到redis安裝目錄,需要在命令行中,執行 gem install redis

 

五 安裝集群腳本redis-trib

下載地址  https://raw.githubusercontent.com/antirez/redis/unstable/src/redis-trib.rb

 打開該鏈接如果沒有下載,而是打開一個頁面,那么將該頁面保存為redis-trib.rb,建議保存到一個Redis的目錄下,例如放到6379目錄下。

集群的命令為 

redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384

--replicas 1 表示每個主數據庫擁有從數據庫個數為1。master節點不能少於3個,所以我們用了6個redis

 

六 啟動每個節點並且執行集群構建腳本

把每個節點下的 start.bat雙擊啟動, 在切換到redis目錄在命令行中執行   redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384

備注:有朋友反應上面的語句執行不成功。可以在前面加上ruby再運行。

 

ruby redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384
 


在出現 Can I set the above configuration? (type 'yes' to accept):   請確定並輸入 yes 。成功后的結果如下:

 

七測試

使用Redis客戶端Redis-cli.exe來查看數據記錄數,以及集群相關信息

命令 redis-cli –c –h ”地址” –p "端口號" ;  c 表示集群

輸入dbsize查詢 記錄總數

輸入cluster info可以從客戶端的查看集群的信息

 

=====================================

注意:如果出現創建集群不成功:

dos命令窗口執行創建集群命令,出現以下提示:

D:\redis\6379>redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384
WARNING: redis-trib.rb is not longer available!
You should use redis-cli instead.

All commands and features belonging to redis-trib.rb have been moved
to redis-cli.
In order to use them you should call redis-cli with the --cluster
option followed by the subcommand name, arguments and options.

Use the following syntax:
redis-cli --cluster SUBCOMMAND [ARGUMENTS] [OPTIONS]

Example:
redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 --cluster-replicas 1

To get help about all subcommands, type:
redis-cli --cluster help

原因是redis-trib.rb的鏈接指向官網最新的版本。從對應版本(redis3.2.0即可)的源碼壓縮包中src文件夾下找到對應的redis-trib.rb文件使用,即可解決問題。

下載redis源碼版壓縮包:http://download.redis.io/releases/

至此,redis集群搭建成功,可在項目中測試redis集群。

 

 

 


免責聲明!

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



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