单机模式(学习环境建议):

1.添加软件安装源

yum install epel-release

2.安装redis

yum install redis -y

3.启动redis

systemctl start redis

4.允许开机启动

systemctl enable redis

5.修改配置

vim /etc/redis.conf

6.bind改成自己的ip地址

redis6哨兵模式搭建 redis哨兵模式部署_数据库

 7.进入redis:

redis-cli -h ip地址 

哨兵模式(生产环境建议):

1.安装redis

# 添加软件安装源

yum install epel-release

# 安装redis

yum install redis -y

# 启动redis、启动redis哨兵

systemctl start redis
systemctl start redis-sentinel

# 允许开机启动

systemctl enable redis
systemctl enable redis-sentinel

# 之后进行配置修改:为哨兵集群,重启启动服务

2.修改redis.conf配置 

#这里假设配置1主2从3哨兵 主机地址:192.168.50.150 从机地址:192.168.50.151,192.168.50.152
# 主机修改redis配置文件:/etc/redis.conf
# 1. 修改绑定ip为服务器内网ip地址,做绑定,三台各自填写各自的ip地址

bind 192.168.50.150

# 2. 保护模式修改为否,允许远程连接

protected-mode no

# 4. 设定密码

requirepass ok

# 5. 设定主库密码与当前库密码同步,保证从库能够提升为主库

masterauth ok

# 6. 打开AOF持久化支持

appendonly yes

#从机同主机相同 不过bind自己的地址

slaveof 192.168.50.151 6379

3.修改哨兵redis-sentinel.conf 配置

#三台机器都修改/etc/redis-sentinel.conf配置

#禁止保护模式

protected-mode no

#配置监听的主服务器,这里 sentinel monitor 代表监控

#mymaster代表服务器名称,可以自定义

#192.168.11.128代表监控的主服务器

#6379代表端口

#2代表只有两个或者两个以上的烧饼认为主服务器不可用的时候,才会做故障切换操作

sentinel monitor mymaster 192.168.50.150 6379 2

#sentinel auth-pass 定义服务的密码

#mymaster服务名称

#ok Redis服务器密码

#注意 这句话必须放在sentinel monitor mymaster 下面否则会报错 

sentinel auth-pass mymaster ok

4.同步测试 主从切换测试

#重启redis和哨兵服务

systemctl restart redis
systemctl restart redis-sentinel

#数据同步测试 三台机器各自启动自己的客户端

redis-cli -h 192.168.50.150 -a ok
redis-cli -h 192.168.50.151 -a ok
redis-cli -h 192.168.50.152 -a ok

#分别使用命令查看集群状态

info replication

#在主节点上写入数据 查看从机是否备份数据(这里注意从节点不能写入数据)
#直接shutdown主节点 等会查看从节点情况 会有一台从节点转为主节点

#此时再恢复原主节点 发行原主节点只能成为slave节点

5.SpringBoot 连接有哨兵模式的Redis

server:

 port: 12000

spring:

 redis:

   sentinel:

     master: mymaster

     nodes: 192.168.50.150:26379,192.168.50.151:26379,192.168.50.152:26379

   database: 0

   password: ok

   host: 192.168.50.150

   port: 6379

注意:在redis主节点宕机后切换到从节点时 redis工作会暂时阻塞