Windows 配置Reids集羣 Redis Cluster

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

二 、安裝配置redis node

redis下載地址詳見上一節Redis安裝部分git

集羣規劃有三個節點的集羣,每一個節點有一主一備。github

把 redis 解壓後,再複製出 5 份,配置 三主三從集羣。 因爲 redis 默認端口號爲 6379,那麼其它5份的端口能夠爲6380,6381,6382,6383,6384。 而且把目錄使用端口號命名redis

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

修改其餘配置支持集羣
cluster-enabled yes
cluster-config-file nodes-6379.conf
cluster-node-timeout 15000
appendonly yeswindows

槽是否全覆蓋:cluster-require-full-coverage no。默認是yes,只要有結點宕機致使16384個槽沒全被覆蓋,整個集羣就所有中止服務,因此必定要改成noruby

 

若是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.confapp

作成windows服務

redis-server --service-install redis.windows.conf --service-name redis6379

三 、安裝Ruby

redis的集羣使用  ruby腳本編寫,因此係統須要有 Ruby 環境 ,下載地址 https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.6-x64.exe

安裝時3個選項都勾選。

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

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

-------------------------------------------------------------------------------------

安裝過程當中出現錯誤提示信息:「cannot load such file -- rubygems.rb」

有多是由於中文路徑(或者其餘字符路徑)致使的。請卸載ruby以後,而後在英文路徑下,從新安裝ruby

-------------------------------------------------------------------------------------

而後GEM 安裝 Redis :切換到redis安裝目錄,須要在命令行中,執行 gem install redis

注意:若是此處服務器沒法訪問外網,這裏須要手動更新redis依賴項,方法以下:

 打開 https://gems.ruby-china.org/ 網站,在搜索欄中輸入 Redis,找到對應版本redis.gem,下載。

將下載的文件拷貝到服務器redis目錄下,執行本地安裝命令:gem install redis-3.2.1.gem --local ,完成安裝

五 、安裝集羣腳本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

 

6、 啓動每一個節點而且執行集羣構建腳本

把每一個節點下的 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 。成功後的結果以下:

 

7、測試

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

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

輸入dbsize查詢 記錄總數

輸入cluster info能夠從客戶端的查看集羣的信息

相關文章
相關標籤/搜索