1、redis服务创建
解压redis包,多复制几份文件夹出来,安装上面命名
2、redis配置文件修改
以6379为主服务,6380、6381为从服务;依次在修改服务配置文件端口,并在最后一行新增
replicaof 127.0.0.1 6379
3、sentinel配置文件修改
分别在sentinel26379、sentinel26380、sentinel26381三个文件夹中创建sentinel.conf文本,新增内容
# 当前Sentinel服务运行的端口
port 26379
# 保护模式 no
protected-mode no
# Sentinel去监视一个名为mymaster的主redis实例,
# 这个主实例的IP地址为本机地址127.0.0.1,端口号为6379,
# 而将这个主实例判断为失效至少需要2个Sentinel进程的同意,只要同意Sentinel的数量不达标,自动failover就不会执行
# down-after-milliseconds指定了Sentinel认为Redis实例已经失效所需的毫秒数。
# 当实例超过该时间没有返回PING,或者直接返回错误,那么Sentinel将这个实例标记为主观下线。
# 只有一个Sentinel进程将实例标记为主观下线并不一定会引起实例的自动故障迁移:只有在足够数量的Sentinel都将一个实例标记为主观下线之后,实例才会被标记为客观下线。
# 这时自动故障迁移才会执行
# parallel-syncs指定了在执行故障转移时,最多可以有多少个从Redis实例在同步新的主实例,
# 在从Redis实例较多的情况下这个数字越小,同步的时间越长,完成故障转移所需的时间就越长
sentinel monitor mymaster 127.0.0.1 6379 2
# 如果在failover-timeout该时间(ms)内未能完成failover操作,则认为该failover失败
sentinel down-after-milliseconds mymaster 5000
并依次修改sentinel服务运行端口
4、服务启动
redis服务启动命令
redis-server ./redis.conf
sentinel服务启动命令
redis-server ./sentinel.conf --sentinel
附加
windows可以创建一个bat脚本启动服务
::启动redis的命令
@echo off
::这是简单的输出,相当于java中的system.out.println()
echo redis start......
::设置启动窗口的标题
title redis-server
::定义一个变量ENV_HOME
set ENV_HOME="D:\redis\redis6379"
D:
::设置启动窗口的颜色
color 0a
cd %ENV_HOME%
redis-server.exe redis.conf
exit