一、下载Redis for Window
Windows最常用的版本是Redis-x64-3.2.100,但是这个版本,在创建集群的时候需要redis-trib.rb,需要安装Ruby环境。使用5.0以后的版本,可以支持redis-cli命令创建集群。
可以在这个页面下载:https://github.com/tporadowski/redis/releases
二、修改配置打开集群模式
下载的zip解压后,就可以直接使用了。但是是standalone模式的。修改配置文件redis.windows.conf,如下:
搜索下面的字符串,按照后面的描述做修改,注释了的地方要去掉注释:
port 6379
appendonly no
# cluster-enabled yes
# cluster-config-file nodes-6379.conf
# cluster-node-timeout 15000
其中端口6379根据实际的改,比如7000,那么改为如下:
port 7000
appendonly yes
cluster-enabled yes
cluster-config-file nodes-7000.conf
cluster-node-timeout 15000
使用这个配置文件启动redis-server,命令是:
# 将Redis安装为Windows服务,开机自动运行
redis-server.exe --service-install redis.windows.conf
# 启动Redis服务
redis-server.exe --service-start
# 停止Redis服务
redis-server.exe --service-stop
# 卸载Redis服务
redis-server.exe --service-uninstall
执行后,如图,已经是cluster模式了。
写一个批处理,方便启动集群服务。在目录中增加文件start.bat,内容为:
title redis-7000
redis-server.exe redis.windows.conf
三、单机构建集群
打算在单机上构建一个3个master和3个slave,共6个节点的集群。本地IP地址是127.0.0.1,端口使用7000-7005这6个。
把修改好配置文件的目录复制6份目录,目录名按照端口号取,如下图:
修改每个目录中的redis.windows.conf文件和start.bat,按照实际的端口号,其它文件都是一样的。
redis.windows.conf文件修改:(xxxx为实际的端口号,比如7001目录的就是7001,7002目录的就是7002)
port xxxx
cluster-config-file nodes-xxxx.conf
start.bat文件修改:(xxxx为实际的端口号,比如7001目录的就是7001,7002目录的就是7002)
title redis-xxxx
把6个文件夹都改完。
分别执行这6个目录中的start.bat,就把6个节点服务器都运行起来了。
接着用redis-cli.exe命令来创建集群,命令为:
redis-cli.exe --cluster create --cluster-replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005
也可以写到一个批处理文件中。执行情况如下图,输入yes表示接受配置。
按照执行的打印结果,7000、7001、7002是master,slave是7003、7004、7005。
到此集群就创建好了。
四、redis集群密码设置
打开客户端,输入以下命令:
## 设置密码
config set requirepass "密码"
##回车后,输入以下命令:
AUTH "密码"
## 获取密码
config get requirepass
五、测试集群
使用redis-cli.exe连接7000节点,命令为:
redis-cli -c -h 127.0.0.1 -p 7000
-c表示集群。如下图:
命令cluster info
看集群信息。如下图:
状态是ok。
设置键值,读取键值测试,如下图:
两个key,分别是name和age,set和get都没问题,而且看到存储时重定向到了对应的不同节点。name存储到了节点7001中,age存储到了节点7000中。通过info replicatin命令看对应的slave,连接对应的slave后,也能看到有对应的key,如下图:
7000的slave是7005,连接7005的节点,确实看到了age这个key。
至此,确认了集群搭建成功了。