Linux环境下Redis-5.0.5哨兵机制搭建

4 篇文章 0 订阅

1、服务器准备

准备三台及三台以上的Linux服务器
我这里准备四台Redis服务器
IP地址为:
192.168.114.128 (主机) 端口:6379
192.168.114.129 (从机) 端口:6379
192.168.114.130 (从机) 端口:6379
192.168.114.131 (哨兵) 端口:26379

2、安装Redis

在每台Liunx服务器上安装好redis,并测试能够成功启动。
redis安装教程点击这里

3、Redis主从配置文件修改

在redis从机上配置主从复制配置
redis主从复制教程点击这里

4、Redis哨兵模式配置文件修改

此处只需要正对哨兵的那台机子上的redis的sentinel.conf文件做改动即可,其他主机与从机无须配置哨兵配置文件。我这里也就是只需要对192.168.114.131这台机子配置哨兵配置文件即可

进入redis压缩包文件解压处,我的位置在/home/redis-5.0.5
cd /home/redis-5.0.5
复制配置文件sentinel.conf
cp /home/redis-5.0.5/sentinel.conf /usr/local/redis/etc
进入redis安装目录
cd /usr/local/redis/etc
编辑sentinel.conf
vim sentinel.conf

5、修改从机配置文件sentinel.conf

搜索daemonize,将daemonize的值从no设置为yes(设置哨兵模式为后台启动)
daemonize yes
搜索pidfile(pid文件),设置值
pidfile /usr/local/redis/run/redis-sentinel.pid
搜索logfile(日志文件),设置值
logfile "/usr/local/redis/logs/redis-sentinel.log"
搜索dir(工作目录),设置值
dir /usr/local/redis/tmp
搜索sentinel monitor mymaster,设置主机IP地址
[redis主机IP地址],[端口号],[选举次数]
sentinel monitor mymaster 192.168.114.128 6379 1
搜索 auth-pass,设置redis主机访问密码
sentinel auth-pass mymaster 123456
搜索down-after-milliseconds,心跳检测8000毫秒,如果主机8秒内没有相应,就会在从机开始选举
sentinel down-after-milliseconds mymaster 8000
搜索parallel-syncs,在执行故障转移时, 最多可以有多少个从服务器同时对新的主服务器进行同步, 这个数字越小, 完成故障转移所需的时间就越长。
sentinel parallel-syncs mymaster 1

7、创建与配置文件所关联的文件及目录

mkdir /usr/local/redis/run
touch /usr/local/redis/run/redis-sentinel.pid
touch /usr/local/redis/logs/redis-sentinel.log
mkdir /usr/local/redis/tmp

8、修改主机中的配置文件

在主机的redis.conf配置masterauth密码,因为当主机挂了后,再次重启会变成从机,无法直接变为主机。
然后,有个建意,将所有的主机与从机密码设置最好是一致,不然密码不一致的情况下可能会无法成功访问到主机。

masterauth 123456

9、启动redis主机与从机

进入redis目录
cd /usr/local/redis/bin
输入启动命令,并指定配置文件
./redis-server /usr/local/redis/etc/redis.conf
进入redis控制台
./redis-cli -h 127.0.0.1 -p 6379 -a “123456”
6379:代表你redis启动时的端口号(该项在配置文件中也可配置)
123456:代表你刚刚在redis配置文件中设置的密码

10、启动redis哨兵模式

进入redis目录
cd /usr/local/redis/bin
输入启动命令,并指定配置文件
./redis-server /usr/local/redis/etc/sentinel.conf --sentinel &
此时控制台会出现一个进程号,我们使用命令查看redis进程
查看进行是否已成功运行
ps -ef|grep redis
如果此时,存在相同的redis进程说明哨兵模式启动成功。
也可以通过将哨兵配置文件中的daemonize值设h为no,可以直接查看哨兵模式是否启动成功

11、查看redis信息

在IP为192.168.114.128的机器中中输入info,查看redis主从信息
info
查看redis信息
这个时候我们找到Replication
redis信息
发现当前机器的角色为 master(主机)
从机分别为 192.168.114.129:6379与192.168.114.130:6379

12、展示选举策略

此时我们将192.168.114.128:6379这台服务器中的redis服务关闭
shutdown
稍等8秒至10秒
我们去 192.168.114.129:6379这台服务器上再次查询redis主从信息
这个时候我们找到Replication
在这里插入图片描述
我们发现现在的master为192.168.114.130:6379

此时证明我们的哨兵模式搭建成功

13、启动刚刚关闭的redis服务器

开启刚刚关闭的192.168.114.128:6379服务器
稍等一会后,然后我们往192.168.114.130:6379再次查看,redis主从信息
这个时候我们找到Replication
redis信息
此时我们发现这个时候的主机依旧是192.168.114.130:6379,所以当redis主机宕机后,再次重启原先的主机是不会直接变为主redis的

15、关闭哨兵模式

./redis-cli -h 127.0.0.1 -p 26379 shutdown

16、其他说明

如果需要被其他IP所访问,需关闭防火墙,或者开启与redis相同的端口
临时关闭防火墙命令
systemctl stop firewalld

开启26379端口
firewall-cmd --zone=public --add-port=26379/tcp --permanent
更新防火墙规则
firewall-cmd --complete-reload
查看当前所开放的端口
firewall-cmd --zone=public --list-ports

17、最后redis文章连接

点击这里,查看redis的三种模式详细介绍

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值