systemctl disable firewalld.service # 禁止开机启动
效果图,不会的朋友可以参考一下
整体架构简图
二、配置一主二从
这里的Redis的主节点是192.168.211.104,所以我们在192.168.211.105和192.168.211.106的Redis配置文件中,配置replicaof指向的Master IP +port。
配置文件在Redis的安装目录:
编辑redis.conf配置文件:
vim redis.conf
redis.conf配置文件中默认注释:
# replicaof <masterport
取消注销,配置为Master的IP + port:
replicaof 192.168.211.104 6379
三、哨兵配置
单机节点实例下,Redis的安装目录默认有sentinel.conf配置文件,先对文件进行备份,备份文件名为sentinel.conf.copy(自定义):
cp sentinel.conf sentinel.conf.copy
创建日志等相关文件:
cd /usr/local/soft/redis-6.2.4/
mkdir logs
mkdir rdbs
mkdir sentinel-tmp # sentinel的工作目录,下面有说明
三台机器分别修改sentinel.conf的配置文件内容如下(内容都相同):
daemonize yes
port 26379
protected-mode no
dir “/usr/local/soft/redis-6.2.4/sentinel-tmp”
sentinel monitor redis-master 192.168.211.104 6379 2
sentinel down-after-milliseconds redis-master 30000
sentinel failover-timeout redis-master 180000
sentinel parallel-syncs redis-master 1
上述配置详细解读:
| 配置项 | 作用 |
| — | — |
| daemonize | 后台启动,与Redis一致,yes表示后台启动 |
| port | 端口 26379 |
| protected-mode | 开启外网访问保护模式,no表示关闭,这样外网可以访问 |
| dir | Sentinel工作目录 |
| sentinel monitor | Sentinel 监控的Redis主节点 |
| sentinel failover-timeout | 1、同一个sentinel对同一个master两次failover之间的间隔时间
2、当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时
3、当想要取消一个正在进行的failover所需要的时间。
4、当进行failover时,配置所有slaves指向新的master所需的最大时间 |
| sentinel parallel-syncs | 这个配置项指定了在发生failover主备切换时最多可以有多少个slave同时对新的master进行 同步,这个数字越小,完成failover所需的时间就越长,但是如果这个数字越大,就意味着越 多的slave因为replication而不可用。可以通过将这个值设为 1 来保证每次只有一个slave 处于不能处理命令请求的状态。 |
四、服务启动
上述就已经完成了Redis一主二从集群和3个Sentinel实例的监控的配置,接下来就是启动Redis和Sentinel
4.1 启动redis
进入Redis安装目录下的src目录:
cd /usr/local/soft/redis-6.2.4/src
启动Redis服务(也可以配置别名启动,需要的请看我的Redis单机实例安装教程):
./redis-server …/redis.conf
4.2 启动Sentinel
启动目录与Redis启动目录相同,在Redis安装目录下的src目录
方式一:
./redis-sentinel …/sentinel.conf
方式二:
./redis-server …/sentinel.conf --sentinel
4.3 查看集群状态
进入Redis客户端,通过info replication查看集群状态:
info replication