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
@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>
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。