Redis哨兵模式(Sentinel)的搭建与配置

时间:2024-03-14 20:06:48

创建三个Redis实例所需的目录,生产环境需独立部署在不同主机上,提高稳定性。

Redis 哨兵模式(Sentinel)是一个自动监控处理 redis 间故障节点转移工作的一个redis服务端实例,它不提供数据存储服务,只进行普通 redis 节点监控管理,使用redis哨兵模式可以实现redis服务端故障的自动化转移。

一、搭建redis主从集群

1、创建3个redis实例

关于redis的搭建,可以参考历史文章。

如果有编译好的二进制文件,则直接部署redis实例即可。

创建三个redis实例所需的目录,生产环境需独立部署在不同主机上,提高稳定性。

mkdir   -p /data/redis
cd /data/redis/
mkdir  redis6379  redis6380  redis6381
cd redis6379
vim redis.conf
#  添加如下配置
bind  0.0.0.0
protected-mode no
port 6379
tcp-backlog 511
timeout 30
tcp-keepalive 300
daemonize yes
supervised no
pidfile /data/redis/redis6379/redis_6379.pid
loglevel notice
logfile "/data/redis/redis6379/redis6379.log"
databases 16
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir /data/redis/redis6379
masterauth 123456
slave-serve-stale-data yes
slave-read-only yes
# 将配置文件拷贝到其他2个实例的目录下
cp redis.conf  ../redis6380.conf
cp redis.conf ../redis6381.conf
sed -i  "s#6379#6380#g"  ../redis6380/redis.conf
sed -i  "s#6379#6381#g"  ../redis6381/redis.conf
# redis实例不建议使用root账号启动,单独创建一个redis用户,并修改redis相关目录的权限
useradd redis
chown -R   redis:redis /data/redis
 su - redis
#  启动三个redis实例
redis-server  /data/redis/redis6379/redis.conf
redis-server  /data/redis/redis6380/redis.conf
redis-server  /data/redis/redis6381/redis.c