Redis(九)高可用专栏之《简介篇》

在互联网的大趋势下,用户体验、服务的可用性日趋重要。任何一个服务的不可用,都可能导致连锁式功能故障。

前言

高可用模型的已经逐渐形成一种套路:

  • 主备/主从模式
  • 集群模式
主备/主从模式

至少有两台服务节点master和backup/slave。同一时刻只有一台服务节点对外提供服务——master,backup/slave之一作为备/从机。当master宕机后,立即切换至backup/slave之一,backup/slave之一成为master,对外提供服务。

从主备/主从有无交互的角度可以划分:

  • 主从交互:如mysql主从维持心跳,同步数据
  • 主从不交互模式:nginx主备不交互,keepalive保证vip绑定

从故障转移方式角度划分:

  • 利用第三方组件实现故障自动转移/主从切换:如使用keepalive实现主从切换
  • 主从服务器软件自故障自动转移:如Redis Sentinel主从模式由Redis自实现
  • 手动切换,转移故障:运维人员介入,经过操作实现切换
集群模式

至少有两台服务节点组成服务节点的群体,客户端常借助各种路由算法:  

  • 轮循
  • 权重
  • 随机
  • 一致性hash

使得群体中的每个服务节点都对外提供一致性协同服务。即是集群的某一个或者某一些服务节点宕机,正常的节点仍能对外提供可用性服务,保证服务的高可用。集群模式天然的具有高可用特征。

Redis中的高可用

让Redis用户庆幸的是Redis中对这两种高可用模式都做了相应的实现。

Redis提供了Sentinel哨兵模式,即是主从模式的标准实现。Sentinel哨兵模式中,分为哨兵和存储两种类型节点。哨兵节点负责维护、监控、切换存储节点,存储节点主要负责提供数据管理能力——即单机Redis能力。

同时Redis还提供了集群模式,Redis的集群模式是Redis 3.0引入的新特征。整个集群中每个节点都作为存储节点,对外协同服务。

同时用户还可以简单的利用SHELL和Keepalive实现Redis的主从模式,不过在Redis完善的Sentinel模式下,这种方式就相形见绌了。

原文地址:https://www.cnblogs.com/lxyit/p/9829112.html

时间: 2024-10-16 20:45:20

Redis(九)高可用专栏之《简介篇》的相关文章

Redis的高可用(使用篇)

Redis的复制解决了单点问题,但主节点若出现故障,则要人工干预进行故障转移.先看看1主2从(master,slave-1和slave-2)的Redis主从模式下,如何进行故障转移的. 1. 主节点发生故障后,客户端连接主节点失败,两个从节点与主节点连接失败造成复制中断. 2. 需要选出一个从节点(slave-1),对其执行slaveof no one命令使其成为新的主节点(new-master). 3. 从节点(slave-1)成为新的主节点后,更新应用方的主节点信息,重新启动应用方. 4.

Redis + keepalived 高可用群集搭建

本次实验环境介绍: 操作系统: Centos 7.3 IP : 192.168.10.10 Centos 7.3 IP : 192.168.10.20  VIP    地址   : 192.168.10.254 软件版本介绍: redis : redis-3.2.8 下载链接: http://download.redis.io/releases/redis-3.2.8.tar.gz keepalived : keepalived-1.2.10  下载链接: http://www.keepaliv

Redis Sentinel 高可用实现说明

背景:      前面介绍了Redis 复制.Sentinel的搭建和原理说明,通过这篇文章大致能了解Sentinel的原理和实现方法以及相关的搭建.这篇文章就针对Redis Sentinel的搭建做下详细的说明. 安装:      这里对源码编译进行一下说明,本文实例的操作系统是Ubuntu16.04,使用Redis的版本是3.2.0.安装步骤如下: 下载源码包:wget http://download.redis.io/releases/redis-3.2.0.tar.gz 安装依赖包:su

Redis Sentinel安装与部署,实现redis的高可用

前言 对于生产环境,高可用是避免不了要面对的问题,无论什么环境.服务,只要用于生产,就需要满足高可用:此文针对的是redis的高可用. 接下来会有系列文章,该系列是对spring-session实现分布式集群session的共享的完整阐述,同时也引伸出缓存的实现:而此篇是该系列的第一篇. github地址:https://github.com/youzhibing/redis 环境准备 redis版本:redis-3.0.0 linux:centos6.7 ip:192.168.11.202,

部署redis主从高可用集群

部署redis主从高可用集群本文部署的redis集群是一主一从,这两台服务器都设置了哨兵进程,另外再加一台哨兵做仲裁,建议哨兵数量为基数172.16.1.187    redis主+哨兵172.16.1.188    redis从+哨兵172.16.1.189    哨兵以上系统均为CentOS6 在187,188,189上部署redis过程如下:(1)redis使用编译安装方式,所以需要安装编译基本组件# yum -y install gcc gcc-c++ make cmake cpp gl

Redis Sentinel高可用架构

Redis目前高可用的架构非常多,比如keepalived+redis,redis cluster,twemproxy,codis,这些架构各有优劣,今天暂且不说这些架构,今天主要说说redis sentinel高可用架构. 它的主要功能有以下几点 不时地监控redis是否按照预期良好地运行; 如果发现某个redis节点运行出现状况,能够通知另外一个进程(例如它的客户端); 能够进行自动切换.当一个master节点不可用时,能够选举出master的多个slave(如果有超过一个slave的话)中

基于keepalived对redis做高可用配置---转载

关于keepalived的详细介绍,请移步本人相关博客:http://wangfeng7399.blog.51cto.com/3518031/1405785 功能 ip地址 安装软件 主redis 10.13.6.13 redis,keepalived 从redis 10.13.6.16 redis,keepalived VIP 10.13.6.17   一.redis主从搭建 1.redis安装 本文通过yum源的安装方式来安装(需要配置epel源),也可以通过源码编译的方式来安装 1 2 [

Redis的高可用详解:Redis哨兵、复制、集群的设计原理,以及区别

谈到Redis服务器的高可用,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制. 哨兵(Sentinel):可以管理多个Redis服务器,它提供了监控,提醒以及自动的故障转移的功能. 复制(Replication):则是负责让一个Redis服务器可以配备多个备份的服务器. Redis正是利用这两个功能来保证Redis的高可用. 哨兵(sentinal) 哨兵是Redis集群架构中非常重要的一个组件,哨兵的出现主要是解决了主从复制出现故障时需要人为干预的问题. 1.Redis哨兵

Redis(九)高可用专栏之Sentinel模式

本文讲述Redis高可用方案中的哨兵模式--Sentinel,RedisClient中的Jedis如何使用以及使用原理. Redis主从复制 Redis Sentinel模式 Jedis中的Sentinel Redis主从复制 Redis主从复制是Sentinel模式的基石,在学习Sentinel模式前,需要理解主从复制的过程. 1.保证数据一致性的机制 Redis主从复制的含义和Mysql的主从复制一样,即利用Slave从服务器同步Master服务器数据的副本.主从复制的最为关键的点在于主从数