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. 【题解】ZJOI2009 假期的宿舍 网络流 最大流

    好久没有来写博客啦,来水一发. 网络流建模首先很容易想到,如果一个人能睡一张床,那么在这个人和这张床之间连接一条容量为1的边从s向每个需要住宿的人连容量为1的边,表示这个人需要住宿从每张床向t连容量为 ...

  2. PAT (Advanced level) 1003. Emergency (25) Dijkstra

    As an emergency rescue team leader of a city, you are given a special map of your country. The map s ...

  3. 简单的异步HTTP服务端和客户端

    /// <summary> /// 异步Http服务器 /// </summary> class AsyncHttpServer { readonly HttpListener ...

  4. 【BZOJ4880】排名的战争 [暴力]

    排名的战争 Time Limit: 8 Sec  Memory Limit: 256 MB[Submit][Status][Discuss] Description 小Q是一名出色的质检员,他负责质检 ...

  5. 【51NOD-0】1058 N的阶乘的长度

    [算法]数学 [题解]n!的位数相当于ans=log10(n!)上取整,然后就可以拆出来加了. 可以用log10(i)或log(i)/log(10) 阶乘好像有个斯特林公式…… #include< ...

  6. Web Session 浅入浅出(山东数漫江湖)

    使用过几种Web App开发语言和框架,都会接触到Session的概念.即使是一个简单站点访问计数的功能,也常常使用Session来实现的.其他常用的领域还有购物车,登录用户等.但是,对Session ...

  7. Winform GDI+

    什么是GDI+ GDI (Graphics Device Interface), 是属于绘图方面的 API (Application Programming Interface). 因为应用程序不能直 ...

  8. bzoj 3035 二分答案+二分图最大匹配

    大原来做的一道题,偷懒直接粘的原来的程序 http://www.cnblogs.com/BLADEVIL/p/3433520.html /******************************* ...

  9. css 背景透明,文字不透明

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  10. System V共享内存介绍

    (一)简单概念 共享内存作为一种进程间通信的方式,其相较于其他进程间通信方式而言最大的优点就是数据传输速率快.其内部实现的方式采用了Linux进程地址空间中的mmap文件映射区,将文件内容直接映射到各 ...