linux中搭建基本的redis哨兵模式(1主2从3哨兵)

下载安装包

wget http://download.redis.io/releases/redis-5.0.5.tar.gz 解压安装包并安装 tar xzf redis-5.0.5.tar.gz cd redis-5.0.5 make make install 编译后在Redis源代码目录的src文件夹中可以找到若干个可执行程序,安装完后,在/usr/local/bin目录中可以找到刚刚安装的redis可执行文件  20190611162726383

配置文件

 

redis的哨兵模式最少需要三个哨兵节点来保证选举的可靠性

我们创建三个不同端口的哨兵配置文件,下面贴出其中一个配置文件,另外两个配置文件直接复制此模板,并更改成不同的端口

sentinel端口 port 26379

工作路径,注意路径不要和主重复

dir "/usr/local/redis/sentinel"

守护进程模式

daemonize yes

关闭保护模式

protected-mode no

指明日志文件名

logfile "./sentinel.log"

#哨兵监控的master,主从配置一样,这里只用输入redis主节点的ip/port和法定人数。

sentinel myid e3192305b8270925d9f458ce1b2d9358d2310be3

master或slave多长时间(默认30秒)不能使用后标记为s_down状态。

sentinel deny-scripts-reconfig yes

#若sentinel在该配置值内未能完成failover操作(即故障时master/slave自动切换),则认为本次failover失败。

sentinel monitor mymaster 127.0.0.1 6379 2

#设置master和slaves验证密码

sentinel down-after-milliseconds mymaster 5000

sentinel failover-timeout mymaster 18000 #指定了在执行故障转移时, 最多可以有多少个从服务器同时对新的主服务器进行同步 sentinel auth-pass mymaster 123456 sentinel config-epoch mymaster 0 sentinel leader-epoch mymaster 0 sentinel known-replica mymaster 127.0.0.1 6381 sentinel known-replica mymaster 127.0.0.1 6380 sentinel current-epoch 0  这样我们就得到三个哨兵的配置文件 20190611163811757

配置主从

 默认的配置文件直接开箱即用不需要作特别的更改,这里就不贴出来了。

从库配置的重点(这里用的是最新版的redis),指定主库的ip和端口用replicaof来指定,老版本应该是叫slave of。 20190611164436499  

所有的配置文件都准备好了

启动 找到安装目录的二进制可执行文件,

启动主库:./redis-server /usr/local/config/redis.conf 

启动从库1:./redis-server /usr/local/config/redis6380.conf 

启动从库2:./redis-server /usr/local/config/redis6381.conf 

启动哨兵1:./redis-server /usr/local/config/sentinel26379.conf 

启动哨兵2:./redis-server /usr/local/config/sentinel26379.conf 

启动哨兵3:./redis-server /usr/local/config/sentinel26379.conf 

这样一个最基础的哨兵模式的集群即搭建完成!生产环境建议迁移到不同的机器以便于容灾,这里为了方便演示放在了一台机器上。