目录
步骤五、Slave01节点、Slave02节点根据步骤一至步骤四安装Redis服务
步骤一、修改Master节点的哨兵配置文件sentinel.conf
步骤二、修改Slave01节点的哨兵配置文件sentinel.conf
步骤三、修改Slave02节点的哨兵配置文件sentinel.conf
Redis服务主从模式下,当主节点宕机时,需要人工干预手动切换主节点,无法进行故障自动切换。为了解决这个问题,Redis服务在主从模式的基础上延伸出哨兵(Sentinel)模式。
Redis服务哨兵(Sentinel)模式是Redis的高可用性方案,由一个或者多个哨兵(Sentinel)进程组成。这些哨兵(Sentinel)进程对主从节点进行监控,不停地检测主节点存活状态、主从运行情况等,当主节点宕机无法提供服务时,哨兵(Sentinel)进程会快速检测到并自动进行故障迁移切换主节点,从而保证Redis服务的高可用性。
本次Redis服务哨兵(Sentinel)模式搭建采取一主二从+3个哨兵(Sentinel)节点的架构。为了节约服务器资源,3个哨兵(Sentinel)节点复用一主二从的3台服务器节点。
一、环境规划
● 服务器IP
主库(Master节点):192.168.110.131
从库01(Slave01节点):192.168.110.132
从库02(Slave02节点):192.168.110.133
Sentinel01节点:192.168.110.131
Sentinel02节点:192.168.110.132
Sentinel03节点:192.168.110.133
● 系统版本
CentOS Linux release 7.7.1908 (Core)
● 关闭防火墙
此处为方便演示,主库(Master节点)、从库01(Slave01节点)、从库02(Slave02节点)直接关闭防火墙。
生产环境可以根据实际需求开通服务器防火墙策略。
systemctl stop firewalld
systemctl stop iptables
● Redis版本
此处使用redis-5.0.10版本
● 环境依赖
需要安装gcc-c++
[root@Master ~]# yum install -y gcc-c++
[root@Slave01 ~]# yum install -y gcc-c++
[root@Slave02 ~]# yum install -y gcc-c++
二、Redis服务主从模式搭建
步骤一、Master节点创建目录
● 创建安装主目录
[root@Master ~]# mkdir -p /data/redis
● 创建数据目录
[root@Master ~]# mkdir -p /data/redis/data/
步骤二、Master节点下载Redis安装包
● 安装wget命令
[root@Master ~]# yum install -y wget
● 进入主目录
[root@Master ~]# cd /data/redis/
● 下载安装包
此处使用redis-5.0.10版本。
[root@node01 redis]# wget http://download.redis.io/releases/redis-5.0.10.tar.gz
步骤三、Master节点解压Redis安装包
● 解压
[root@Master redis]# tar -zxvf redis-5.0.10.tar.gz
● 重命名
[root@Master redis]# mv redis-5.0.10 redis_6379
步骤四、Master节点进行make编译
[root@Master redis]# cd /data/redis/redis_6379/
[root@Master redis_6379]# make
步骤五、Slave01节点、Slave02节点根据步骤一至步骤四安装Redis服务
步骤六、Master节点修改Redis服务配置文件
[root@Master ~]# vim /data/redis/redis_6379/redis.conf
修改关键配置如下:
● redis进程是否以后台守护进程的方式运行,yes为是,no为否
daemonize yes
● 设置客户端连接Redis服务的连接密码。
requirepass 123456
● 设置Slave节点Redis服务连接Master节点Redis服务的密码。
masterauth 123456
● 指定redis进程的PID文件存放位置
pidfile /data/redis/redis_6379/redis_6379.pid
● redis进程的端口号
port 6379
● 关闭保护模式,可以外部访问。
protected-mode no
● 允许访问Redis的地址,0.0.0.0 表示允许所有远程访问。
bind 0.0.0.0
● 客户端(redis-cli)闲置多长时间后关闭连接,默认此参数为0即关闭此功能
timeout 300
● redis日志级别,可用的级别有debug\verbose\notice\warning
loglevel notice
● log文件输出位置
logfile "/data/redis/redis_6379/redis_6379.log"
● 设置数据库的数量,默认为0可以使用select 命令在连接上指定数据库id
databases 16
● redis数据持久化,此处指定300秒内至少有10个key值发生变化时将数据持久化到数据文件。
save 300 10
● 指定本地数据库文件名
dbfilename dump.rdb
● 指定本地数据文件存放位置
dir /data/redis/data
● 指定是否在每次更新操作后进行日志记录,默认为no。
appendonly no
● 指定更新日志文件名,默认为appendonly.aof
appendfilename appendonly.aof
● 指定更新日志的条件,有三个可选参数 : no表示由操作系统进行数据缓存同步到磁盘(速度快);always表示每次更新操作后手动调用fsync()将数据写到磁盘(速度慢但安全)&#
标签:Redis,redis,读懂,Master,步骤,Sentinel,root,节点 From: https://blog.csdn.net/brucelbj/article/details/145162960