windows下redis集群安裝和部署


 

1、下載windows版本的Redis

官網只提供linux版本的下載

官網下載地址:http://redis.io/download

github下載地址:https://github.com/MSOpenTech/redis/tags

 

解壓之后,拷貝到自定義的Redis目錄下,例如D:\Redis\Redis

打開cmd,切換到Redis目錄下,執行

redis-server redis.windows.conf

 

 

再重新打開一個cmd窗口,連接Redis執行

redis-cli.exe -h 127.0.0.1 -p 6379

 

 

2. 安裝Ruby並配置環境

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

程序:  rubyinstaller-2.3.3-x64.exe

 

安裝時3個選項都勾選

注意:系統變量里面  path 需要配置 ruby的安裝目錄bin 

          PATHEXT 需要配置  .RB;.RBW

 

3. 搭建Redis集群

要讓集群正常運作至少需要三個主節點,不過在剛開始試用集群功能時, 強烈建議使用六個節點: 其中三個為主節點, 而其余三個則是各個主節點的從節點。

主節點崩潰,從節點的Redis就會提升為主節點,代替原來的主節點工作,崩潰的主Redis回復工作后,會成為從節點

1). 創建Redis集群目錄

在redis安裝的根目錄下創建6個以端口命名的文件夾

 

將安裝的redis文件夾中的redis.windows.conf以及redis-server,分別拷貝到新建的六個文件夾中

2). 更改配置

將六個文件夾下的redis.windows.conf文件中以下屬性進行修改:

port 9000  
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 15000
appendonly yes

 

3). 啟動6個redis服務

進入每個端口命名的文件夾下啟動服務 

啟動命令:redis-server.exe redis.windows.conf

或者用下面的命令創建一個bat文件啟動

title redis-9000
redis-server.exe redis.windows.conf

 其他幾個目錄同上(端口對應各自的端口)

然后把把這幾個節點都啟動起來

 

4. 安裝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

 

5 安裝集群腳本redis-trib

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

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

集群的命令為 

ruby redis-trib.rb create --replicas 1 127.0.0.1:9000 127.0.0.1:9001 127.0.0.1:9002 127.0.0.1:9003 127.0.0.1:9004 127.0.0.1:9005

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

 

6. 連接集群進行測試

連接集群的指令:

方式1:
redis-cli.exe -h 127.0.0.1 -c -p 9000

   方式2:

redis-cli.exe -c -p 9000


執行set 命令我們能看到集群起效,把值存到 9001 節點上了


Redis集群數據分配策略:

采用一種叫做哈希槽 (hash slot)的方式來分配數據,redis cluster 默認分配了 16384 個slot,當我們set一個key 時,會用CRC16算法來取模得到所屬的slot,然后將這個key分到哈希槽區間的節點上,具體算法就是:CRC16(key) % 16384

注意的是:必須要3個以后的主節點,否則在創建集群時會失敗,三個節點分別承擔的slot 區間是:

    節點A覆蓋0-5460;
    節點B覆蓋5461-10922;
    節點C覆蓋10923-16383.

 

所以上圖中按照redis cluster的哈希槽算法:CRC16(‘name’)%16384 
被分配到了9001端口的redis服務上。

至此,Redis Cluster在Windows上的配置就完成了

 

 


免責聲明!

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



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