Redis+SpringBoot企业版集群实战------【华为云版】(上):https://developer.aliyun.com/article/1420242
注释公共配置追加文件
根据需求配置是否打开追加文件选项
appendonly yes -> 每当Redis执行一个改变数据集的命令时(比如 SET),这个命令就会被追加到 AOF 文件的末尾。这样的话,当Redis重新启时,程序就可以通过重新执行 AOF文件中的命令来达到重建数据集的目的
appendfilename和dir组合使用,找dir(/opt/redis/data)路径生成数据文件
从服务器默认是只读不允许写操作(不用修改)
添加3个服务的私有配置文件
touch 或者 vi 都可以创建空白文件
touch 直接创建空白文件, vi 创建并且进入编辑模式, :wq 创建成功,否则不创建
cd /opt/redis/conf/
redis-6379.conf
#引用公共配置 include /opt/redis/conf/redis-common.conf #进程编号记录文件 pidfile /var/run/redis-6379.pid #进程端口号 port 6379 #日志记录文件 logfile "/opt/redis/log/redis-6379.log" #数据记录文件 dbfilename dump-6379.rdb #追加文件名称 appendfilename "appendonly-6379.aof" #下面的配置无需在6379里配置 #备份服务器从属于6379推荐配置配局域网IP slaveof 192.168.10.100 6379
复制redis-6379.conf的内容至redis-6380.conf,redis-6381.conf并且修改其内容,将6379替换即可。
运行3个redis进程
cd /usr/local/redis/bin/
查看redis服务器主从状态
redis-6379
redis-6380
redis-6381
在主服务器下添加数据并测试从服务器数据是否正常显示
从服务器只读,不允许写操作
主备切换
主从节点redis.conf配置
参照 读写分离 的相应配置
修改sentinel-common.conf 哨兵公共配置文件
从redis解压目录下复制sentinel.conf至/opt/redis/conf/
cp sentinel.conf /opt/redis/conf/sentinel-common.conf
注释哨兵监听进程端口号
指示 Sentinel 去监视一个名为 master 的主服务器,这个主服务器的IP地址为 127.0.0.1,端口号为6379,而将这个主服务器判断为失效至少需要1个(一般设置为2个)。 Sentinel 同意 (只要同意 Sentinel 的数量不达标,自动故障迁移就不会执行)。 这个要配局域网IP,否则远程连不上。
设置master和slaves的密码
Sentinel 认为服务器已经断线所需的毫秒数
若 sentinel 在该配置值内未能完成 failover 操作(即故障时master/slave自动切换),则认为本次 failover 失败。
关闭保护模式,修改为no
修改为后台启动
添加3个哨兵的私有配置文件
touch 或者 vi 都可以创建空白文件
touch 直接创建空白文件, vi 创建并且进入编辑模式, :wq 创建成功,否则不创建
sentinel-26379.conf
#引用公共配置 include /opt/redis/conf/sentinel-common.conf #进程端口号 port 26379 #进程编号记录文件 pidfile /var/run/sentinel-26379.pid #日志记录文件(为了方便查看日志,先注释掉,搭好环境后再打开) logfile "/opt/redis/log/sentinel-26379.log"
复制 sentinel-26379.conf 的内容至 sentinel-26380.conf , sentinel-26381.conf 并且修改其内容,将26379 替换即可。
启动测试
启动3个redis服务
/usr/local/redis/bin/redis-server /opt/redis/conf/redis-6379.conf /usr/local/redis/bin/redis-server /opt/redis/conf/redis-6380.conf /usr/local/redis/bin/redis-server /opt/redis/conf/redis-6381.conf
启动3个哨兵服务
/usr/local/redis/bin/redis-sentinel /opt/redis/conf/sentinel-26379.conf /usr/local/redis/bin/redis-sentinel /opt/redis/conf/sentinel-26380.conf /usr/local/redis/bin/redis-sentinel /opt/redis/conf/sentinel-26381.conf
查看主从状态
redis-6379
redis-6380
redis-6381
检测哨兵功能是否配置成功
kill -9 终止redis-6379,查看哨兵是否选举了新的主节点
已选举6380为主节点,从节点目前只有6381
重新启动6379节点,再次查看主从状态
发现6379已被发现且成为从节点
6380之前不可以写操作,现在可以写操作,因为已成为主节点。
最后,公共配置文件修改为后台启动,私有配置文件打开日志记录文件,环境搭建成功。
SpringBoot+Redis操作
创建项目
Redis+SpringBoot企业版集群实战------【华为云版】(下):https://developer.aliyun.com/article/1420248