Windows系统下Redis集群搭建

单机开启多个Redis服务实例(生产环境部署到多台服务器):
下载redis3.2.1,地址https://github.com/MicrosoftArchive/redis/releases
解压复制6份成6个文件夹,并按端口号命名区分,集群最少需要三个master节点,且存储是分片机制,所以为保障高可用性再搭建三个从节点,具体如下:
Windows系统下Redis集群搭建
Redis文件夹内容
Windows系统下Redis集群搭建
修改配置文件
将每个文件夹下的redis.windows-service.conf文件加个端口后缀做区分,如:redis.windows-service-6400.conf,并将默认端口6379改为对应预设值端口6400,其它文件夹同理对应修改
Windows系统下Redis集群搭建
检查其它配置项(关于每个配置项,配置文件中都有注释说明使用用途)
loglevel notice 日志记录级别
logfile “server6400_log.txt” 日志文件
appendonly yes 开启AOF持久化数据
appendfilename “appendonly.6400.aof” 文件
cluster-enabled yes 启用集群
cluster-config-file nodes-6400.conf 集群配置文件(会自动生成)
cluster-node-timeout 15000 集群超时时间
cluster-slave-validity-factor 10 故障转移(从节点升级为主节点,但该从节点断开超过10秒不能提升为主节点)
cluster-migration-barrier 1 master的slave数量大于该值,slave才能迁移到其他孤立master上,如这个参数被设为2,那么只有当一个主节点拥有2个可工作的从节点时,它的一个从节点才会尝试迁移
cluster-require-full-coverage yes 集群全部的slot有节点负责,集群状态才为ok并提供服务。设置为no可以在slot没有全部分配的时候提供服务。

安装服务
redis-server --service-install --service-name redis_6400 redis.windows-service-6400.conf
启动服务
redis-server --service-start --service-name redis_6400
停止服务
redis-server --service-stop --service-name redis_6400
卸载服务
redis-server --service-uninstall --service-name redis_6400

Windows系统下Redis集群搭建
安装ruby环境(因为集群操作命令文件redis-trib.rb是用ruby写的)
https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.6-x64.exe
Windows系统下Redis集群搭建
下载ruby环境下Redis的驱动
 https://rubygems.org/gems/redis/versions/3.2.2
Windows系统下Redis集群搭建
下载redis-3.2.2.gem完成后我先放到ruby安装的目录中C:\Ruby22-x64
安装驱动
gem install --local C:\Ruby22-x64\redis-3.2.2.gem
Windows系统下Redis集群搭建
另存为下载
https://raw.githubusercontent.com/MSOpenTech/redis/3.2/src/redis-trib.rb

命令行运行redis-trib.rb创建集群
redis-trib.rb create --replicas 1 127.0.0.1:6400 127.0.0.1:6401 127.0.0.1:6402 127.0.0.1:6403 127.0.0.1:6404 127.0.0.1:6405
–replicas 1 分配1个从节点,0不设从节点。这里6个节点默认会按顺序前三个为主节点,后三个为从节点,且按顺序127.0.0.1:6400和127.0.0.1:6403是主从关系,以此类推。
Windows系统下Redis集群搭建
集群已经搭建完成,用cli工具来测试一下
redis-cli -h 主机 -p 端口 -c (集群下加-c)
redis-cli -h 127.0.0.1 -p 6400 -c
Windows系统下Redis集群搭建
Windows系统下Redis集群搭建
Windows系统下Redis集群搭建
Windows系统下Redis集群搭建