centos7上配置redis哨兵

1 配置三个redis数据库, 一主两从

redis-6380.conf #主
redis-6381conf #从
redis-6382.conf #从
写下以下配置文件

vim redis-6380.conf

port 6380
daemonize yes
pidfile /data/6380/redis.pid
loglevel notice
logfile "/data/6380/redis.log"
dbfilename dump.rdb
dir /data/6380
protected-mode no
再创建两个配置文件6381和6382

sed "s/6380/6381/g" redis-6380.conf > redis-6381.conf
sed "s/6380/6382/g" redis-6380.conf > redis-6382.conf
创建数据文件目录

mkdir -p /data/{6380,6381,6382}
给两个从服务器配置文件再添加一行配置

在6381和6382配置文件添加这一行配置,表示指定主服务器为6380
slaveof 127.0.0.1 6380

2 启动三个redis数据库, 确保主从复制正常运行

redis-server redis-6380.conf
redis-server redis-6381.conf
redis-server redis-6382.conf

3 配置三个哨兵

cd /opt/redis/
vim redis-sentinel-16380.conf
vim redis-sentinel-16381.conf
vim redis-sentinel-16382.conf
写入以下配置文件

port 16381
dir "/data/16381"
logfile "16381.log"
sentinel myid 3cf63a8e47b2372667013f8cdee7a3a5130d41fc
sentinel deny-scripts-reconfig yes
sentinel monitor qishimaster 127.0.0.1 6381 2
sentinel down-after-milliseconds qishimaster 60000
daemonize yes
哨兵配置文件详解(不在步骤里面):

Sentinel节点的端口
port 26379
dir /var/redis/data/
logfile "26379.log"

sentinel announce-ip 127.0.0.1 # 宣告哨兵IP, 此配置只有当使用非127.0.0.1的IP配置哨兵无法成功时加上,同时redis三个服务端也需要同步修改IP

当前Sentinel节点监控 127.0.0.1:6379 这个主节点
2代表判断主节点失败至少需要2个Sentinel节点节点同意
mymaster是主节点的别名
sentinel monitor mymaster 127.0.0.1 6379 2

每个Sentinel节点都要定期PING命令来判断Redis数据节点和其余Sentinel节点是否可达,如果超过30000毫秒30s且没有回复,则判定不可达
sentinel down-after-milliseconds mymaster 30000

当Sentinel节点集合对主节点故障判定达成一致时,Sentinel领导者节点会做故障转移操作,选出新的主节点,原来的从节点会向新的主节点发起复制操作,限制每次向新的主节点发起复制操作的从节点个数为1
sentinel parallel-syncs mymaster 1

故障转移超时时间为180000毫秒
sentinel failover-timeout mymaster 180000

daemonize yes
创建存放哨兵文件的目录

mkdir -p /data/{16380,16381,16382}
启动三个哨兵

redis-sentinel redis-sentinel-16380.conf
redis-sentinel redis-sentinel-16381.conf
redis-sentinel redis-sentinel-16382.conf
查看哨兵是否成功通信

redis-cli -p 16380 info sentinel

原文地址:https://blog.51cto.com/liuxiaolan/2450447

时间: 2024-08-29 11:24:44

centos7上配置redis哨兵的相关文章

CentOS7.3配置Redis

CentOS7.3配置Redis Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理. 它支持字符串.哈希表.列表.集合.有序集合,位图,hyperloglogs等数据类型.内置复制.Lua脚本.LRU收回.事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区. redis安装需要epel源 yum install redis rpm -ql redis /etc/redis-s

在CentOS7上配置Open vSwitch和VXLAN

在CentOS7上配置Open vSwitch和VXLAN 环境 实验环境 主机环境 [[email protected] ~]$ uname -a Linux node0 3.10.0-123.9.3.el7.x86_64 #1 SMP Thu Nov 6 15:06:03 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux [[email protected] ~]$ cat /etc/redhat-release CentOS Linux release 7.0

在CentOS7上配置RabbitMQ 3.6.3集群与高可用

在CentOS7上配置RabbitMQ 3.6.3集群与高可用 集群概述 通过 Erlang 的分布式特性(magic cookie 认证节点)进行 RabbitMQ 集群,各 RabbitMQ 服务为对等节点,即每个节点都提供服务给客户端连接,进行消息发送与接收. 这些节点通过 RabbitMQ HA 队列(镜像队列)进行消息队列结构复制.本文中搭建 3 个节点,并且都是磁盘节点(所有节点状态保持一致,节点完全对等),只要有任何一个节点能够工作,RabbitMQ 集群对外就能提供服务. 环境

Windows配置redis哨兵

redis主从模式必有单点问题,所以redis的哨兵机制就是来弥补这一问题,接下来我们在Windows环境下配置一下redis的哨兵. 1.下载Windows版redis地址:https://github.com/MicrosoftArchive/redis/releases 2.解压到目录,6379 master, 6380 6381slave 3.redis主从配置 3.1 master文件配置redis.windows.conf port 6379 3.2 6380 slave文件配置re

在centos7上学习redis (一)

最近在按照<Redis实战>来学习redis,今天尝试在centos7上安装并测试redis,首先从官网上下载最新源码 wget http://download.redis.io/releases/redis-4.0.9.tar.gz, 然后是解压缩,安装: 1 tar -xzf redis-4.0.9.tar.gz 2 3 cd redis-4.0.9 4 5 make 6 7 cd src && make all 8 9 cd src && make ins

Centos7 上部署 redis集群

一.安装前看下redis5.0版本的新特性 先看一下 Redis 5 带来的更新内容: 新的流数据类型(Stream data type) https://redis.io/topics/streams-intro2.新的 Redis 模块 API:定时器.集群和字典 API(Timers, Cluster and Dictionary APIs) RDB 现在可存储 LFU 和 LRU 信息4.redis-cli 中的集群管理器从 Ruby (redis-trib.rb) 移植到了 C 语言代

centos7上安装redis

关闭防火墙:systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)配置编译环境:sudo yum install gcc-c++下载源码:wget http://download.redis.io/releases/redis-3.2.8.t

centos7上安装redis以及PHP安装redis扩展(一)

1.关闭防火墙: systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动 firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running) 2.配置编译环境: sudo yum install gcc-c++ 3.下载源码: wget http://download.redis.io/releases/

如何在centos7上安装redis

解压缩 tar zxvf redis-3.0.4.tar.gz 进入解压后的目录 cd redis-3.0.4 使用Make 编译源文件 make 安装 进入源文件的目录 cd src 复制 Redis 的服务器和客户端到 /usr/local/bin cp redis-server redis-cli /usr/local/bin 最好也把 sentinel,benchmark 和 check 复制过去 cp redis-sentinel redis-benchmark redis-check