一.环境:
192.16.3.33主服务器
192.16.3.34从服务器
redis 版本 redis-6.2.4.tar.gz
二.redis配置
192.116.3.33主服务器
redis.conf
bind 0.0.0.0 #设定连接IP
port 6379 #端口号
daemonize yes #允许后台启动
protected-mode yes #开启保护模式;
pidfile "/var/run/6379.pid" #pid文件存放位置
logfile "" #日志文件存放位置
dbfilename "dump.rdb" #数据所在文件名
dir "/usr/local/redis" #数据存放位置
requirepass "123123" #redis密码 (不配置密码时,忽略)
masterauth "123123" #主从交互密码 (redis无密码时刻忽略)
maxmemory 1gb #最大存储量为1G
192.16.3.33 哨兵配置
sentinel.conf
port 26379 #默认端口
daemonize yes #允许后台启动
protected-mode no #关闭保护模式(此配置很重要,不配置将无法实现主从切换)
logfile "/usr/local/redis/logs/sentinel.log"
sentinel monitor mymaster 172.16.3.33 6379 1 #配置选举机制,哨兵时刻监控主服务器的6379端口,后面的“1”是当有一票认为它宕机以后就开始主从切换
sentinel auth-pass mymaster "123123" #配置redis交互密码(redis无密码时不需要此配置);
192.16.3.34从服务器配置:
redis配置
redis.conf
bind 0.0.0.0 #设定连接IP
port 6379 #端口号
daemonize yes #允许后台启动
protected-mode yes #开启保护模式;
pidfile "/var/run/6379.pid" #pid文件存放位置
logfile "" #日志文件存放位置
dbfilename "dump.rdb" #数据所在文件名
dir "/usr/local/redis" #数据存放位置
slaveof 172.16.3.33 6379 #声明它是谁的从服务器,除此行外,它和主配置一样;
requirepass "123123" #redis密码 (不配置密码时,忽略)
masterauth "123123" #主从交互密码 (redis无密码时刻忽略)
maxmemory 1gb #最大存储量为1G
192.16.3.34哨兵配置:从服务器哨兵配置与主完全一样
port 26379 #默认端口
daemonize yes #允许后台启动
protected-mode no #关闭保护模式(此配置很重要,不配置将无法实现主从切换)
logfile "/usr/local/redis/logs/sentinel.log"
sentinel monitor mymaster 192.16.3.33 1 #配置选举机制,哨兵时刻监控主服务器的6379端口,后面的“1”是当有一票认为它宕机以后就开始主从切换
sentinel auth-pass mymaster "123123" #配置redis交互密码(redis无密码时不需要此配置);
启动服务(分别启动redis 和 哨兵)
启动192.16.3.33 redis-server redis-sentinel
启动192.16.3.34 redis-server redis-sentinel
./redis-server redis.conf 启动redis
./redis-sentinel sentinel.conf 启动哨兵
主从集群配置完成
当主服务器挂掉,从服务器会变成主,主服务器(192.16.3.33)上线后会切换为主服务器,从服务器(192.16.3.34)会切换为从服务