redis哨兵:用于管理和实现多个redis组实现高可用,sentinel哨兵只监控主节点,因为主节点上有所有的从节点信息,当master节点发生故障,sentinel之间会进行投票选举一个slave节点切换成为从master节点,实现故障转移;

sentinel哨兵可以单个,为了避免哨兵的单点故障,这里我们在每天的redis服务器上都启用了哨兵功能,配置都是相同的;

(1)配置redis主从复制

规划

ip				port 		role
192.168.1.31 6379 master,sentinel
192.168.1.32 6379 slave,sentinel
192.168.1.33 6379 slave,sentinel

0.关闭防火墙

systemctl stop firewald.service
systemctl disable firewald.service

1.安装和启动redis

yum install epel-release -y
yum install redis -y
systemctl start redis
systemctl enable redis

2.master配置

#vim /etc/my.cnf
bind 0.0.0.0 //修改监听ip
port 6379 //监听端口
daemonize yes //后台运行
requirepass redhat //配置登录密码

3.slave配置

vim /etc/my.cnf
bind 0.0.0.0
port 6379
daemonize yes
masterauth redhat //如果master配置了requiress登录密码,需要配置masterauth认证
slaveof 192.168.1.31 6379 //指定master节点的ip和端口
slave-read-only yes //从节点只读

4.master 和slave端 验证

redis-cli -h 192.168.1.31 -a redhat info replication
redis-cli -h 192.168.1.31 -a redhat set ip 1.1.1.1
redis-cli -h 192.168.1.31 -a redhat set port 8080

slave验证:

redis-cli -h 192.168.1.33 -a redhat
> keys *
redis-cli -h 192.168.1.32 -a redhat
> keys *

(2)配置sentinel,3台节点都配置sentinel

1.修改sentinel配置文件,3台节点配置文件一样

#vim /etc/redis-sentinel.conf
protected-mode no //关闭保护模式
port 26379
logfile "/var/log/redis/sentinel.log"
sentinel monitor redis-master 192.168.1.31 6379 3 //指定redi的smaster主节点的ip和端口,集群名字,3表示sentinel个数
sentinel down-after-milliseconds redis-master 30000 //判断主节点不在线的超时时长,默认毫秒,30秒,30秒连不上master节点,就认为主节点down机
sentinel parallel-syncs redis-master 1 //从服务器提升为主服务器的时候,同时允许1个从服务器发起连接请求
sentinel failover-timeout redis-master 90000 //故障转移的超时时间,从服务器提升为主服务器的超时时间
sentinel auth-pass redis-master redhat //如果redis配置了认证,需要加上

2.启动redis的sentinel

redis-sentinel /etc/redis-sentinel.conf

3.验证,more /var/log/redis/sentinel.log

现在master是192.168.1.31,slave是192.168.1.32和192.168.1.33

redis-cli -h 192.168.1.31 -p 26379
>info sentinel



4.停止192.168.1.31上的redis服务, 然后查看sentinel状态

192.168.1.33由slave节点切换到master,slave是192.168.1.32



CentOS7配置sentinel高可用redis的更多相关文章

  1. Redis Sentinel 高可用实现说明

    背景:      前面介绍了Redis 复制.Sentinel的搭建和原理说明,通过这篇文章大致能了解Sentinel的原理和实现方法以及相关的搭建.这篇文章就针对Redis Sentinel的搭建做 ...

  2. Redis Sentinel高可用架构

    Redis目前高可用的架构非常多,比如keepalived+redis,redis cluster,twemproxy,codis,这些架构各有优劣,今天暂且不说这些架构,今天主要说说redis se ...

  3. Redis之Sentinel高可用安装部署

    背景: 之前通过Redis Sentinel 高可用实现说明和Redis 复制.Sentinel的搭建和原理说明大致已经介绍了sentinel的原理和实现,本文再次做个简单的回顾.具体的信息见前面的两 ...

  4. Redis Sentinel 高可用服务搭建

    阅读目录: 关于 Redis 的概念 关于 Redis Sentinel 的概念 搭建 Redis Server(master) 搭建 Redis Server(slave) 搭建 Redis Sen ...

  5. redis 系列25 哨兵Sentinel (高可用演示 下)

    一. Sentinel 高可用环境准备 1.1 Sentinel 集群环境 环境 说明 操作系统版本 CentOS  7.4.1708  IP地址 172.168.18.200 网关Gateway 1 ...

  6. 【转载】Redis Sentinel 高可用服务架构搭建

    作者:田园里的蟋蟀 出处:http://www.cnblogs.com/xishuai/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接. 阅读 ...

  7. Redis|Sentinel 高可用架构

    一 前言 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端 ...

  8. 使用Docker Compose部署基于Sentinel的高可用Redis集群

    使用Docker Compose部署基于Sentinel的高可用Redis集群 https://yq.aliyun.com/articles/57953 Docker系列之(五):使用Docker C ...

  9. Redis Sentinel 高可用部署实践集群

    一.Redis Sentinel 介绍    1.Sentinel     数据库环境搭建,从单机版到主备.再到多数据库集群,我们需要一个高可用的监控:比如Mysql中,我们可能会采用MHA来搭建我们 ...

随机推荐

  1. Codeforces Round #398 (Div. 2) B,C

    B. The Queue time limit per test 1 second memory limit per test 256 megabytes input standard input o ...

  2. [POI2008]BLO-Blockade

    https://www.luogu.org/problem/show?pid=3469 题目描述 There are exactly  towns in Byteotia. Some towns ar ...

  3. hdu5909 Tree Cutting

    传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5909 [题解] 设$f_{x,i}$表示以$x$节点的子树中,权值为$i$的子树个数,其中$x$必选. ...

  4. 【BZOJ】1585: [Usaco2009 Mar]Earthquake Damage 2 地震伤害

    [题意]给定无向图,现在可能有一些点已经被删除,只给出信息是c个点未被删除且不能到达结点1,求最少的删除点个数. [算法]最小割 [题解]本题和1的区别是:1求的是最少的不能到达1的结点数,那么就把损 ...

  5. VSCode Web Developement for Javascript. Must have plugins.

    Es6 Javascript front-end web developemnt must have plugins Prettier - Code Formatter Javascript (ES6 ...

  6. base--AuditObject

    //参考base-4.0.2.jarpublic class AuditObject extends HashMap<String, Object> implements TimeRefe ...

  7. JSX语法规范

    1.只有一个开始节点和一个尾节点 正确的写法 ReactDOM.render( <div>hello,你好</div>, document.body ) 错误的写法,开始节点和 ...

  8. Vue组件-组件的注册

    注册组件 全局组件 注册组件就是利用Vue.component()方法,先传入一个自定义组件的名字,然后传入这个组件的配置. Vue.component('my-component', { templ ...

  9. 配置连接的IP、端口、以及相应的数据库

    解压后里面有:lib 源文件 .examples 例子.test测试 将lib目录拷贝到你的项目中,就可以开始你的predis操作了. //使用autoload加载相关库,这边重点就是为了requir ...

  10. MACACA===gradle下载和安装

    gradle下载地址: http://services.gradle.org/distributions/ 或者直接点击这个: http://services.gradle.org/distribut ...