一、准备阶段:
服务器资源规划
cpu | 内存 | 硬盘 | 角色 | 主机名 | ip |
---|---|---|---|---|---|
2c | 3.3G | 18G | master | Master | 192.168.71.111 |
2c | 3.3G | 18G | Slaver1 | Slaver1 | 192.168.71.112 |
2c | 3.3G | 18G | Slaver2 | Slaver2 | 192.168.71.113 |
二、安装介质准备:
step 1:下载安装介质
wget https://download.redis.io/releases/redis-6.2.6.tar.gz
二、编译安装redis:
step 2:安装依赖
yum install -y gcc make
step 3:解压源码包。
tar -zxvf redis-6.2.6.tar.gz
step 4:编译安装。
cd redis-6.2.6
make PREFIX=/usr/local/redis install
三、创建相关目录:
step 5:创建Redis数据库文件目录,日志目录,配置文件目录
mkdir /opt/data
mkdir /opt/data/log
mkdir /usr/local/redis/conf
四、修改redis配置文件:
step 6:复制源码包中的配置文件
cp redis.conf /usr/local/redis/conf/
cp sentinel.conf /usr/local/redis/conf/
step 7:修改master配置文件(192.168.71.111)
vim /usr/local/redis/conf/redis.conf
# bind 127.0.0.1 -::1
bind 0.0.0.0
# protected-mode yes
protected-mode no
# logfile ""
logfile "/opt/data/log/redis.log"
# 指定redis数据持久化文件位置
dir "/opt/data"
# daemonize no
daemonize yes
# 此处应修改为你的密码,集群所有机器密码务必保持一致
requirepass 1qaz@WSX
# 主从同步时主节点密码
masterauth 1qaz@WSX
step 7:修改Slaver配置文件(192.168.71.112,192.168.71.113)
vim /usr/local/redis/conf/redis.conf
# bind 127.0.0.1 -::1
bind 0.0.0.0
# protected-mode yes
protected-mode no
# logfile ""
logfile "/opt/data/log/redis.log"
# 指定redis数据持久化文件位置
dir "/opt/data"
# daemonize no
daemonize yes
# 此处应修改为你的密码,集群所有机器密码务必保持一致
requirepass 1qaz@WSX
# 主从同步时主节点密码
masterauth 1qaz@WSX
replicaof 192.168.71.111 6379
step 8:修改哨兵配置文件(192.168.71.111,192.168.71.112,192.168.71.113)
vim /usr/local/redis/conf/sentinel.conf
bind 0.0.0.0
port 16379
daemonize yes
logfile "/opt/data/log/sentinel.log"
# 指定监控主节点的地址、端口以及需要多少个节点确认才能完成故障转移
sentinel monitor mymaster 192.168.71.111 6379 2
# 指定被监控主节点的密码
sentinel auth-pass mymaster 1qaz@WSX
# 哨兵节点主观下线主节点的时间
sentinel down-after-milliseconds mymaster 3000
五、启动集群:
step 9:启动master
/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
step 10:启动Slaver
/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
step 11:启动哨兵节点
/usr/local/redis/bin/redis-sentinel /usr/local/redis/conf/sentinel.conf
六、验证Redis主从同步:
step 12:登录任一节点
/usr/local/redis/bin/redis-cli -p 6379 -a 1qaz@WSX
step 13:查看主从信息
info replication
step 14:连接mater,并创建redisKey
/usr/local/redis/bin/redis-cli -h 192.168.71.111 -p 6379 -a 1qaz@WSX
SET user:1:name "John"
step 15:连接slaver,并查询redisKey
/usr/local/redis/bin/redis-cli -p 6379 -a 1qaz@WSX
get user:1:name
七、验证Redis哨兵集群:
step 16:登录任一节点
/usr/local/redis/bin/redis-cli -p 16379
step 17:查看集群信息
info sentinel
step 18:故障切换测试,关闭master
ps aux|grep redis
kill -9 pid
查看日志,确认mater是否已经切换。
EOF