1.主备工作
主服务器 | 192.168.73.101 |
从服务器 | 192.168.73.102 |
注意注意注意:服务器先关闭防火墙或者把端口加入到防火墙白名单内。
2.下载redis(两台都相同操作下载)这里用7.2.4为版本作为测试
注意:这个是从别处借鉴的,本人直接宝塔安装的。最终目录是放到了/www/server/redis目录下
cd /www/server/redis
wget http://download.redis.io/releases/redis-7.2.4.tar.gz
tar -zxvf redis-7.2.4.tar.gz
cd redis-7.2.4
make && make install
3.配置主副节点的redis.conf
cd /www/server/redis
vim redis.conf
主节点配置文件修改
# 修改为后台启动
daemonize yes
# 修改连接
bind 127.0.0.1(删掉) ; 改为:bind 0.0.0.0
# 设置密码
requirepass password
从节点配置文件修改
# 修改为后台启动
daemonize yes#密码要与主节点一致为了配置哨兵
requirepass password
# 修改连接
bind 127.0.0.1(删掉) ; 改为:bind 0.0.0.0
# master节点的ip和端口号#注意这里redis6之前用的是slaveof但是6之后就变成了replicaof 功能一样都是设置从节点
#slaveof <masterip> <masterport>replicaof 192.168.73.101 6379
# master节点的登录密码,若master节点没有密码,则不需要
masterauth password
4.至此主副创建完成
info replication
可以看到主节点和从节点信息已经出来了,这个时候只有主节点可以set从节点只能取
5.配置哨兵模式
注意:这里启动了4个哨兵,每个机器各启动两个,原因是如果其中一台服务器挂掉了,这个时候只有一个哨兵他是不会主动切换的。因为他需要两个哨兵来竞选。
1.首先来配置主节点的哨兵
vim sentinel.conf
#哨兵端口
port 26379
#mymaster为实例名称,监听主服务器(192.168.73.101)26379端口,
#这里的1表示,如果这台sentinel认为主redis挂了,才算挂
sentinel monitor mymaster 192.168.73.101 6379 1#设置用户名密码,用户名就是上面mymaster
sentinel auth-pass mymaster password
#如果5秒内mymster没有响应,就认为SDOWN
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000
2.配置主节点的第二个哨兵。
复制一个
cp sentinel.conf sentinel2.conf
vim sentinel2.conf
#其他修改与1配置一样只修改端口
port 36379
3.配置从节点第一个哨兵,与主节点第一个哨兵配置一致
注意这里的ip还是主节点的ip不是从节点的
vim sentinel.conf
#哨兵端口
port 26379
#mymaster为实例名称,监听主服务器(192.168.73.101)26379端口,
#这里的1表示,如果这台sentinel认为主redis挂了,才算挂sentinel monitor mymaster 192.168.73.101 6379 1
#设置用户名密码,用户名就是上面mymaster
sentinel auth-pass mymaster password
#如果5秒内mymster没有响应,就认为SDOWN
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000
4.配置从节点哨兵二,与主节点一方法一致,直接复制修改一下端口即可
cp sentinel.conf sentinel2.conf
vim sentinel2.conf
#其他修改与1配置一样只修改端口
port 36379
至此哨兵配置完成,直接启动全部的哨兵,顺序随意。
(这个在redis中的src目录下执行的)
./redis-sentinel ../sentinel2.conf
./redis-sentinel ../sentinel.conf