Windows Redis 集群安装配置及部署说明

1. 部署Redis集群说明

     需要用到6台主机,所以采用Redis Replication + Redis Sentinel实现主从复制与故障转换。采用1 master 2 slave 3 sentinel(一主二从三哨兵)模式。3个sentinel是为了保证其中一个sentinel和主主机挂掉后,其它2个检测到并且同意后才会实现故障转移。如果总共只有2个sentinel的话,只能设置一个sentinel同意转移(具体设置文中会提到),那么可能会引起不必要的冲突。

      Redis简介:Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对很多其它。包含string(字符串)、list(链表)、set(集合)、zset(sorted

set --有序集合)和hash(哈希类型)。为了保证效率,数据都是缓存在内存中。

2. 下载Windows 版Redis

       由于Redis官网没有提供Windows版本,下载微软提供的 Redis-x64-3.2.100 解压包,下载Url:https://pan.baidu.com/s/1mi3QB4O。 三台主机都需要安装。例如主主机IP 192.168.38.204 ,从主机IP 192.168.38.205,从主机IP 192.168.38.206为例(一主二从三哨兵)。

3. 在主主机中,解压后去根目录,打开redis.windows.conf文件,将默认的bind 127.0.0.1修改为主机的真实IP,如下:


4. 配置从主机 192.168.38.205 (192.168.38.206一样配置)

       解压后去根目录,打开redis.windows.conf文件,将默认的bind 127.0.0.1修改为主机的真实IP,如下:


添加以下,关联主主机的Redis


至此,Redis主从配置完成,数据会实时进行同步

5. 以下为配置Sentinel进行故障转移

3个Sentinel的部署主机分别IP为:192.168.36.227, 192.168.36.228, 192.168.36.229

6.配置Sentinel (三台配置方式一致)

        解压后去根目录,新建sentinel文件夹并且在文件夹中新建sentinel.conf文件并打开,插入如下信息:

bind 192.168.38.205

port 26379

dir sentinel

sentinel monitor mymaster 192.168.38.204 6379 2     //这里的2代表需要2台sentinel同意才实现转移

sentinel down-after-milliseconds mymaster 60000

sentinel failover-timeout mymaster 180000

sentinel parallel-syncs mymaster 1



7. 将Redis设置为开机自启动(2选1)

 1.根目录执行redis-server --service-install redis.windows.conf添加到服务中。如图在系统服务中可见


2. 使用Windows工作排程器

将Sentinel设置为开机自启动。新建一个bat文件,输入以下内容,在排程内设置为开机自执行。

C:

cd C:\

cd C:\redis

redis-server.exe  sentinel/sentinel.conf --sentinel

8. 测试:先启动主主机Redis,然后启动从主机Redis,最后启动Sentinel,

Redis启动命令为:根目录中执行redis-server.exe  redis.windows.conf或者在系统服务中启动

Sentinel启动命令为:根目录中执行redis-server.exe  sentinel/sentinel.conf --sentinel

(注意:是cmd打开控制台,cd到根目录执行命令)

9. 启动后可用RedisDesKtopManager可视化工具进行查看数据是否同步

10. 测试故障转移:在主主机Redis根目录中执行:redis-cli.exe -h 192.168.38.204 -p 6379进入主主机Redis,同理另外打开一个cmd并执行redis-cli.exe -h 192.168.38.205 -p 6379 进入192.168.38.205中的Redis,进入不同IP的Redis后查看当前Redis的信息,如图:

注意:截图中的205主机采用的端口是6380,请以实际设置的端口为准



可以看出当前204为主主机,205为从主机

10.关闭主主机的Redis


11. 当Sentinel监听到主主机断开时,当30秒内(时间在新建的sentinel.conf进行设置)确认无法从新连接后,会自动切换从主机为主主机,sentinel输入如下


12. 至此,205切换为主主机

     204切换为从主机


至此,测试完成

你可能感兴趣的:(Windows Redis 集群安装配置及部署说明)