您好,登錄后才能下訂單哦!
1. 安裝Redis
https://redis.io/download
將Redis安裝在D:\Program Files\Redis\
目錄下,然后將exe的可執行文件copy到當前的bin目錄,然后配置系統環境變量。
2. 安裝Ruby
http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.4-x64.exe
這里將Ruby安裝在C:\Ruby22-x64
目錄下。
3. 安裝Redis的Ruby庫
gem install redis
4. 配置Redis Node
copy6份Redis安裝目錄下的redis.windows-service.conf
文件依次重命名為redis7001.conf、redis7002.conf、redis7003.conf、redis8001.conf、redis8002.conf、redis8003.conf。并分別修改這6個配置文件。具體修改內容如下:
redis7001.conf
port 7001 appendonly yes appendfilename "appendonly7001.aof" cluster-enabled yes cluster-config-file nodes-7001.conf cluster-node-timeout 15000 cluster-slave-validity-factor 10 cluster-migration-barrier 1 cluster-require-full-coverage yes
5. 編輯寫以下幾個簡單的腳步,以方便日常維護。
(1) 安裝redis服務腳本:
@echo off echo install redis services "D:\Program Files\Redis\bin\redis-server.exe" --service-install F:\Redis_cluster\7001\redis7001.conf --service-name redis7001 "D:\Program Files\Redis\bin\redis-server.exe" --service-install F:\Redis_cluster\7002\redis7002.conf --service-name redis7002 "D:\Program Files\Redis\bin\redis-server.exe" --service-install F:\Redis_cluster\7003\redis7003.conf --service-name redis7003 "D:\Program Files\Redis\bin\redis-server.exe" --service-install F:\Redis_cluster\8001\redis8001.conf --service-name redis8001 "D:\Program Files\Redis\bin\redis-server.exe" --service-install F:\Redis_cluster\8002\redis8002.conf --service-name redis8002 "D:\Program Files\Redis\bin\redis-server.exe" --service-install F:\Redis_cluster\8003\redis8003.conf --service-name redis8003 @pause
(2) 卸載redis服務腳本:
@echo off echo uninstall redis services "D:\Program Files\Redis\bin\redis-server.exe" --service-uninstall --service-name redis7001 "D:\Program Files\Redis\bin\redis-server.exe" --service-uninstall --service-name redis7002 "D:\Program Files\Redis\bin\redis-server.exe" --service-uninstall --service-name redis7003 "D:\Program Files\Redis\bin\redis-server.exe" --service-uninstall --service-name redis8001 "D:\Program Files\Redis\bin\redis-server.exe" --service-uninstall --service-name redis8002 "D:\Program Files\Redis\bin\redis-server.exe" --service-uninstall --service-name redis8003 @pause
(3) 啟動redis 服務腳本
@echo off echo start redis .... "D:\Program Files\Redis\bin\redis-server.exe" --service-start --service-name redis7001 "D:\Program Files\Redis\bin\redis-server.exe" --service-start --service-name redis7002 "D:\Program Files\Redis\bin\redis-server.exe" --service-start --service-name redis7003 "D:\Program Files\Redis\bin\redis-server.exe" --service-start --service-name redis8001 "D:\Program Files\Redis\bin\redis-server.exe" --service-start --service-name redis8002 "D:\Program Files\Redis\bin\redis-server.exe" --service-start --service-name redis8003 echo start redis success @pause
(4) 停止redis服務腳本
@echo off echo stop redis .... "D:\Program Files\Redis\bin\redis-server.exe" --service-stop --service-name redis7001 "D:\Program Files\Redis\bin\redis-server.exe" --service-stop --service-name redis7002 "D:\Program Files\Redis\bin\redis-server.exe" --service-stop --service-name redis7003 "D:\Program Files\Redis\bin\redis-server.exe" --service-stop --service-name redis8001 "D:\Program Files\Redis\bin\redis-server.exe" --service-stop --service-name redis8002 "D:\Program Files\Redis\bin\redis-server.exe" --service-stop --service-name redis8003 echo stop redis success @pause
(5)瀏覽啟動的端口
@echo off echo view redis startup ports netstat -an |find "7001" netstat -an |find "7002" netstat -an |find "7003" netstat -an |find "8001" netstat -an |find "8002" netstat -an |find "8003" @pause
6. 創建Redis Cluster
下載 https://raw.githubusercontent.com/MSOpenTech/redis/3.0/src/redis-trib.rb 腳本到Redis安裝目錄
D:\Program Files\Redis\bin>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:8001 127.0.0.1:8002 127.0.0.1:8003 >>> Creating cluster Connecting to node 127.0.0.1:7001: OK Connecting to node 127.0.0.1:7002: OK Connecting to node 127.0.0.1:7003: OK Connecting to node 127.0.0.1:8001: OK Connecting to node 127.0.0.1:8002: OK Connecting to node 127.0.0.1:8003: OK >>> Performing hash slots allocation on 6 nodes... Using 3 masters: 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 Adding replica 127.0.0.1:7001 to 127.0.0.1:8001 Adding replica 127.0.0.1:7002 to 127.0.0.1:8002 Adding replica 127.0.0.1:7003 to 127.0.0.1:8002 M: 49060b7f06bd3839895919a06ba43d0508b1149f 127.0.0.1:7001 slots:0-5460 (5461 slots) master M: 0bfbefc15a586f1a893ef150af43031a7ce04a9f 127.0.0.1:7002 slots:5461-10922 (5462 slots) master M: 5fb098d997e0f0b9e723b09400604344ec65179b 127.0.0.1:7003 slots:10923-16383 (5461 slots) master S: e2d74cfcccf88aef1dec16b1922ca2ad6dc16195 127.0.0.1:8001 replicates 49060b7f06bd3839895919a06ba43d0508b1149f S: bcbe8bf76a5b0d37768556ed752e30dcfea069f6 127.0.0.1:8002 replicates 0bfbefc15a586f1a893ef150af43031a7ce04a9f S: bbfc7026df6822bf3cfd8e4a3549b02ca57f7393 127.0.0.1:8003 replicates 5fb098d997e0f0b9e723b09400604344ec65179b Can I set the above configuration? (type 'yes' to accept): yes >>> Nodes configuration updated >>> Assign a different config epoch to each node >>> Sending CLUSTER MEET messages to join the cluster Waiting for the cluster to join... >>> Performing Cluster Check (using node 127.0.0.1:7001) M: 49060b7f06bd3839895919a06ba43d0508b1149f 127.0.0.1:7001 slots:0-5460 (5461 slots) master M: 0bfbefc15a586f1a893ef150af43031a7ce04a9f 127.0.0.1:7002 slots:5461-10922 (5462 slots) master M: 5fb098d997e0f0b9e723b09400604344ec65179b 127.0.0.1:7003 slots:10923-16383 (5461 slots) master M: e2d74cfcccf88aef1dec16b1922ca2ad6dc16195 127.0.0.1:8001 slots: (0 slots) master replicates 49060b7f06bd3839895919a06ba43d0508b1149f M: bcbe8bf76a5b0d37768556ed752e30dcfea069f6 127.0.0.1:8002 slots: (0 slots) master replicates 0bfbefc15a586f1a893ef150af43031a7ce04a9f M: bbfc7026df6822bf3cfd8e4a3549b02ca57f7393 127.0.0.1:8003 slots: (0 slots) master replicates 5fb098d997e0f0b9e723b09400604344ec65179b [OK] All nodes agree about slots configuration. >>> Check for open slots... >>> Check slots coverage... [OK] All 16384 slots covered. D:\Program Files\Redis\bin>
到此創建redis cluster 大功告成!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。