redis主从+哨兵模式
主从模式配置分为手动和配置文件两种方式进行配置,我现在有192.168.238.128(CentOS1)、192.168.238.131(CentOS3)、192.168.238.132(CentOS4)几台机器,只是配置文件的配置方式是降手动配置的命令放在配置文件中而已,本质是一致的。下面将对配置文件方式进行配置,我所述的案例,是基于我自己的另一篇博文《Redis的安装、服务配置》之上:
1、我将CentOS4作为主数据库,其他 模拟为从数据库
2、将CentOS1目录切换到/etc/redis目录下,编辑6379.conf文件。

3、将CentOS3进行同样的操作。CentOS4作为主服务器,不需要配置
4、因为我将192.168.238.128(CentOS1)作为主数据库,其他数据作为从数据库的,下面通过redis-cli切换到数据库中,分别执行info replication命令:


最后看看CentOS1主数据:

从各个数据库的显示信息看,我们的主从模式已经配置完毕.
测试:
在主数据库set一条数据,并获取这条数据(预测操作成功)

接下来在从数据从事同样的操作

至此,主从模式配置完毕,测试通过!
下面再来配置主从+哨兵模式:
因为主从模式,主数据库可以读、写操作,而从数据库只能读、不能写,一旦主数据库宕机,整个数据库集群将无法进行读操作,后果很严重。
而主从+哨兵模式,既热部署进行主从切换,当主数据库宕机,哨兵自动将其他从数据库的某一台提升为主数据库,即使之前的主数据库恢复正常工作,哨兵也会将其改为从数据库,做到了高可用、热部署
具体操作:
1、因为我有3台虚拟机,所以我就配置3个哨兵吧,也可以多配置一些,或者少配置一些
2、将3台虚拟机,分别切换到/home/tool/redisWork/bin目录下,新增文件sentinel.conf,并且编辑此文件

4、分别启动主数据库和从数据库的哨兵:
主数据库哨兵:

从数据库的哨兵:

至此,主从+哨兵配置完毕!
测试:将主数据库的redis服务停止,然后分别在两台从数据库中在此执行info repication命令,看看之前的从数据库是否会变成主数据库(网络可能会有延迟)
redis主从+哨兵模式的更多相关文章
- redis主从+哨兵模式(借鉴)
三台机器分布 192.168.189.129 // master的角色 192.168.189.130 // slave1的角色 192.168.189.131 // salve2的角色 ...
- redis主从+ 哨兵模式(sentinel)+漂移VIP实现高可用系统
原文:https://www.jianshu.com/p/c2ab606b00b7 客户端程序 客户端程序(如PHP程序)连接redis时需要ip和port,但redis-server进行故障转移时, ...
- redis主从+redis的哨兵模式
三台机器分布 192.168.189.129 // master的角色 192.168.189.130 // slave1的角色 192.168.189.131 // salve2的角色 ...
- linux系统——Redis集群搭建(主从+哨兵模式)
趁着这几天刚好有点空,就来写一下redis的集群搭建,我跟大家先说明,本文的redis集群因为linux服务器只是阿里云一台服务器,所以集群是redis启动不同端口,但是也能达到集群的要求.其实不同服 ...
- redis的哨兵模式
我是在一台服务器上安装了三个redis 一主两从 想安装gcc gcc-c++ make tcl lrzsz yum -y install gcc gcc-c++ make tcl lrzsz ...
- Redis进阶:Redis的哨兵模式搭建
Redis进阶:Redis的哨兵模式搭建 哨兵机制介绍 单机版的Redis存在性能瓶颈,Redis通过提高主从复制实现读写分离,提高了了Redis的可用性,另一方便也能实现数据在多个Redis直接的备 ...
- Redis-Sentinel Redis的哨兵模式
Redis-Sentinel Redis的哨兵模式Redis Sentinel 模式简介Redis-Sentinel是官方推荐的高可用解决方案,当redis在做master-slave的高可用方案时, ...
- docker+redis安装与配置,主从+哨兵模式
docker+redis安装与配置 docker安装redis并且使用redis挂载的配置启动 1.拉取镜像 docker pull redis:3.2 2.准备准备挂载的目录和配置文件 首先在/do ...
- redis 五大类型 、持久化方式以及主从(哨兵模式)
一.redis 五大类型: redis 键 keys * exists key的名字,判断某个key 是否存在 move key db 当前数据库就没有了,被移除了 ttl key 查看还有多少秒过期 ...
随机推荐
- [Java]String、 StringBuffer、StringBuilder的区别
一.异同点: 1) 都是 final 类, 都不允许被继承; 2) String 长度是不可变的, StringBuffer.StringBuilder 长度是可变的; 3) StringBuffer ...
- 长春理工大学第十四届程序设计竞赛(重现赛)F.Successione di Fixoracci
链接:https://ac.nowcoder.com/acm/contest/912/F 题意: 动态规划(Dynamic programming,简称dp)是一种通过把原问题分解为相对简单的子问题的 ...
- java中读取配置文件内容,如读取.properties文件
http://blog.csdn.net/u012255097/article/details/53122760
- Fleet(集群管理器)
工作原理 fleet 是通过systemd来控制你的集群的,控制的任务被称之为unit(单元),控制的命令是fleetctl unit运行方式 unit的运行方式有两种: standard globa ...
- mongodb的投影
mongodb 投影意思是只选择必要的数据而不是选择一个文件的数据的整个.如果一个文档有5个字段,需要显示只有3个,然后选择其中只有3个字段. find() 方法 MongoDB 的find()方法, ...
- <context:property-placeholder>标签实现参数剥离
<context:property-placeholder>标签提供了一种优雅的外在化参数配置的方式(可以是键值对的形式保存在.properties文件中),不过该标签在spring配置文 ...
- 关于rabbitmq的消息路由的同步问题
http://www.cnblogs.com/me-sa/archive/2012/11/12/rabbitmq_ram_or_disk_node.html我是看了上面的博客明白了一些原理的,我之前一 ...
- form表单转换为Json字符串数据
https://github.com/marioizquierdo/jquery.serializeJSON 效果图 加载使用 <script type="text/javascrip ...
- VMware与Hyper-V不兼容
一.问题描述 VMware Workstation与Hyper-V不兼容. 二.解决方案 取消Hyper-V功能,即将Hyper-V框中钩去掉. 三.总结思考 开始不清楚怎么解决这个问题,主要原因在于 ...
- Python3+Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)'''from ...