windows下redis叢集安裝和部署

來源:互聯網
上載者:User

標籤:pretty   使用   content   分配   覆蓋   完成   測試   files   演算法   

 

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 yescluster-config-file nodes.confcluster-node-timeout 15000appendonly yes

 

3). 啟動6個redis服務

進入每個連接埠命名的檔案夾下啟動服務 

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

或者用下面的命令建立一個bat檔案啟動

title redis-9000redis-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 -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 
被分配到了7001連接埠的redis服務上。

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

 

 

windows下redis叢集安裝和部署

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.