redis哨兵模式配置过程

一、redis高可用方案:哨兵模式

哨兵模式是Redis的一种常见的高可用方案,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。

这里的哨兵有两个作用:
通过发送命令,让Redis服务器返回监控其运行状态,包括主服务器和从服务器。
当哨兵监测到master宕机,会自动将slave切换成master,然后通过发布订阅模式通知其他的从服务器,修改配置文件,让它们切换主机。
然而一个哨兵进程对Redis服务器进行监控,可能会出现问题,为此,我们可以使用多个哨兵进行监控。各个哨兵之间还会进行监控,这样就形成了多哨兵模式。

本方案采用的是一主二从三哨兵的模式。

二、方案配置

2.1准备三台虚拟机

//本文所列IP只是示范,请根据自己实际情况设置ip
虚拟机1:192.168.96.240
虚拟机2:192.168.96.241
虚拟机3:192.168.96.242
在虚拟机中安装redis,三台虚拟机操作同样
//本文所有命令均在root用户下输入

2.2安装wget

yum install wget

2.3安装gcc依赖

yum install gcc

2.4.跳转到/opt目录下

cd /opt

2.4.下载redis安装包

wget http://download.redis.io/releases/redis-5.0.7.tar.gz

2.5.解压安装包

tar -zxvf redis-5.0.7.tar.gz

2.6.跳转到解压目录

cd redis-5.0.7

2.7.编译安装

make && make install

2.8创建一个存放redis实例的文件夹

mkdir /myRedis

2.9复制配置文件到新建立的文件夹

cp redis.conf /myRedis

三、主从配置

//三台虚拟机相同的地方

3.1.跳转到myRedis文件夹

cd /myRedis

3.2.编辑配置文件

//没有vim安装一下,不安装用vi也行

vim redis.conf

//三台虚拟机不同的地方

主机192.168.96.240 :redis.conf
#注释这一行,表示Redis可以接受任意ip的连接
#bind 127.0.0.1 
#关闭保护模式
protected-mode no 
#让redis服务后台运行
daemonize yes 
#配置日志路径,为了便于排查问题,指定redis的日志文件目录
logfile "redis.log"
从机192.168.96.241 :redis.conf
#注释这一行,表示Redis可以接受任意ip的连接
#bind 127.0.0.1 
#关闭保护模式
protected-mode no 
#让redis服务后台运行
daemonize yes 
#配置日志路径,为了便于排查问题,指定redis的日志文件目录
logfile "redis.log"
#设定master的IP和端口号,redis配置文件中的默认端口号是6379
#将192.168.96.240做为主,其余两台机器做从。ip和端口号按照机器和配置做相应修改。
replicaof 192.168.96.240 6379
从机192.168.96.242 :redis.conf

与从机192.168.96.241相同

3.3启动redis服务

//启动服务前关闭防火墙或者在防火墙开放相应端口

redis-server redis.conf

3.4添加哨兵并修改配置文件

//三台虚拟机一样

wget http://download.redis.io/redis-stable/sentinel.conf

vim sentinel.conf
#让sentinel服务后台运行
daemonize yes 
#修改日志文件的路径
logfile "sentinel.log"
#修改监控的主redis服务器
#最后一个2表示,两台机器判定主被动下线后,就进行failover(故障转移)
sentinel monitor mymaster 192.168.96.240 6379 2

3.5.运行哨兵服务

//三台虚拟机一样

redis-sentienl sentinel.conf
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页