標籤:redis cluster redis 群集 redis群集安裝在windows
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 7001appendonly yesappendfilename "appendonly7001.aof"cluster-enabled yescluster-config-file nodes-7001.confcluster-node-timeout 15000cluster-slave-validity-factor 10cluster-migration-barrier 1cluster-require-full-coverage yes
5. 編輯寫以下幾個簡單的腳步,以方便日常維護。
(1) 安裝redis服務指令碼:
@echo offecho 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 offecho 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 offecho 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 redis8003echo start redis success@pause
(4) 停止redis服務指令碼
@echo offecho 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 redis8003echo stop redis success@pause
(5)瀏覽啟動的連接埠
@echo offecho view redis startup portsnetstat -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 clusterConnecting to node 127.0.0.1:7001: OKConnecting to node 127.0.0.1:7002: OKConnecting to node 127.0.0.1:7003: OKConnecting to node 127.0.0.1:8001: OKConnecting to node 127.0.0.1:8002: OKConnecting to node 127.0.0.1:8003: OK>>> Performing hash slots allocation on 6 nodes...Using 3 masters:127.0.0.1:7001127.0.0.1:7002127.0.0.1:7003Adding replica 127.0.0.1:7001 to 127.0.0.1:8001Adding replica 127.0.0.1:7002 to 127.0.0.1:8002Adding replica 127.0.0.1:7003 to 127.0.0.1:8002M: 49060b7f06bd3839895919a06ba43d0508b1149f 127.0.0.1:7001 slots:0-5460 (5461 slots) masterM: 0bfbefc15a586f1a893ef150af43031a7ce04a9f 127.0.0.1:7002 slots:5461-10922 (5462 slots) masterM: 5fb098d997e0f0b9e723b09400604344ec65179b 127.0.0.1:7003 slots:10923-16383 (5461 slots) masterS: e2d74cfcccf88aef1dec16b1922ca2ad6dc16195 127.0.0.1:8001 replicates 49060b7f06bd3839895919a06ba43d0508b1149fS: bcbe8bf76a5b0d37768556ed752e30dcfea069f6 127.0.0.1:8002 replicates 0bfbefc15a586f1a893ef150af43031a7ce04a9fS: bbfc7026df6822bf3cfd8e4a3549b02ca57f7393 127.0.0.1:8003 replicates 5fb098d997e0f0b9e723b09400604344ec65179bCan 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 clusterWaiting 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) masterM: 0bfbefc15a586f1a893ef150af43031a7ce04a9f 127.0.0.1:7002 slots:5461-10922 (5462 slots) masterM: 5fb098d997e0f0b9e723b09400604344ec65179b 127.0.0.1:7003 slots:10923-16383 (5461 slots) masterM: e2d74cfcccf88aef1dec16b1922ca2ad6dc16195 127.0.0.1:8001 slots: (0 slots) master replicates 49060b7f06bd3839895919a06ba43d0508b1149fM: bcbe8bf76a5b0d37768556ed752e30dcfea069f6 127.0.0.1:8002 slots: (0 slots) master replicates 0bfbefc15a586f1a893ef150af43031a7ce04a9fM: 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 大功告成!
本文出自 “-=湖邊竹=-” 部落格,請務必保留此出處http://bronte.blog.51cto.com/2418552/1900698
windows 上安裝配置redis 群集