0.集群架构(此处只说两种;本文2种,避免sentinel成为单节点)
第一种:
第二种:

1.下载redis2.8.x版本,2.8.x都是稳定版

redis-2.8.24.tar.gz
2.解压,安装
tar -zxvf redis-2.8.24.tar.gz -C /opt
make
make install
#编译的2进制文件在解压目录src下,为了方便把编译的二进制文件和配置文件复制到一起,不用每次找了
#搭建1 Master 2个Slave的分片集群(一台机器上)
 
mkdir -p  /opt/redis-share1/{redis-6379,redis-6380,redis-6381}    #创建多级目录
cd  /opt/redis-2.8.24
cp runtest  /opt/redis-share1/redis-6379
cp runtest-sentinel /opt/redis-share1/redis-6379
cp redis.conf /opt/redis-share1/redis-6379
cp sentinel.conf /opt/redis-share1/redis-6379
 
cd /opt/redis-2.8.24/src
cp redis-benchmark /opt/redis-share1/redis-6379
cp redis-check-aof /opt/redis-share1/redis-6379
cp redis-check-dump /opt/redis-share1/redis-6379
cp redis-cli /opt/redis-share1/redis-6379
cp redis-sentinel /opt/redis-share1/redis-6379
cp redis-server /opt/redis-share1/redis-6379
 
cd /opt/redis-share1/redis-6379/
cp * /opt/redis-share1/redis-6380
cp * /opt/redis-share1/redis-6381
 
3.修改配置文件
搜索slaveof,添加一项
slaveof 127.0.0.1 6379    (master不需要此项,slave指定主节点)
masterauth 123456          (不想设置密码不用)
requirepass 123456         (不想设置密码不用)
daemonize    yes         修改为yes让其可以后台启动,不至于关闭控制台redis就关了
pidfile /opt/redis-share1/redis-6381/redis.pid    因为在同一台机器我们必须制定每个redis实例pid单独的位置
port    6379    #若干3个实例在3台服务器可以不用改,我这里在一台机器,所以分别6379 6380 6381
 
4.启动Sentinel Master Slave(红色是不用sentinel)
先启动Master  6379
 cd /opt/redis-share1/redis-6379
./redis-server redis.conf  
./redis-server redis.conf  --sentinel        #第二种方式,这种方式需要先修改sentinel.conf配置文件
再启动Slave1
 cd /opt/redis-share1/redis-6380
./redis-server redis.conf  
./redis-cli slaveof 172.29.1.102 6379    #把从节点告知主节点
./redis-server redis.conf  --sentinel        #第二种方式,这种方式需要先修改sentinel.conf配置文件
启动slave2
 cd /opt/redis-share1/redis-6381
./redis-server redis.conf  
./redis-cli slaveof 172.29.1.102 6379    #把从节点告知主节点
./redis-server redis.conf  --sentinel        #第二种方式,这种方式需要先修改sentinel.conf配置文件
 
#查看副本信息
./redis-cli -h 127.0.0.1 -p 6379 -a 123456 info replication
./redis-cli -h 127.0.0.1 -p 6380 -a 123456 info replication
./redis-cli -h 127.0.0.1 -p 6381 -a 123456 info replication
 
如果是第一种方式:
再启动Sentinel服务器:
cd /opt/redis-Sentinel/redis
./redis-server sentinel.conf  --sentinel  &
 
 
#不带sentinel启动方式查看验证主从复制
./redis-server redis.conf
#查看节点信息带密码
主:
./redis-cli -h 127.0.0.1 -p 6379 -a 123456 info replication
从:
./redis-cli -h 127.0.0.1 -p 6380 -a 123456 info replication 
./redis-cli -h 127.0.0.1 -p 6381 -a 123456 info replication 
#的是主从复制
./redis-cli -h 127.0.0.1 -p 6379 -a 123456
>set aa 123
>get aa
./redis-cli -h 127.0.0.1 -p 6380 -a 123456
>get aa
./redis-cli -h 127.0.0.1 -p 6381 -a 123456
>get aa
 
#Sentinel mode:
kill -9 $(ps -ef|grep -E 'redis'|grep -v grep|awk '{print $2}')    #杀掉所有redis,已sentinel启动
#分别进入3个redis
./redis-server sentinel.conf --sentinel
./redis-server sentinel.conf --sentinel
./redis-server sentinel.conf --sentinel
#测试Master挂了以后是否slave升级为Master
./redis-sentinel sentinel.conf    #监控redis节点情况
 
 
#Master和Slave配置
#master
port 26379
sentinel monitor mymaster 127.0.0.1 6379 2
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 30000
sentinel failover-timeout mymaster 900000
sentinel can-failover mymaster yes
sentinel parallel-syncs mymaster 1
 
#slaeve
port 26479
sentinel monitor mymaster 127.0.0.1 6379 2
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 30000
sentinel failover-timeout mymaster 900000
sentinel can-failover mymaster yes
sentinel parallel-syncs mymaster 1
 
#slave
port 26579
sentinel monitor mymaster 127.0.0.1 6379 2
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 30000
sentinel failover-timeout mymaster 900000
sentinel can-failover mymaster yes
sentinel parallel-syncs mymaster 1
 
 
参考:http://blog.csdn.net/luyee2010/article/details/9385155
参考:http://www.linuxidc.com/Linux/2013-11/92287.htm
 
 
 
 
 
 

24.Redis2.8主从集群sentinel的更多相关文章

  1. 02.Redis主从集群的Sentinel配置

    1.集群环境 1.Linux服务器列表 使用4台CentOS Linux服务器搭建环境,其IP地址如下: 192.168.110.100 192.168.110.101 192.168.110.102 ...

  2. CentOS7 配置 Redis Sentinel主从集群配置

    Redis Sentinel主从集群 环境.准备 slave配置 sentinel配置 测试 C#连接Redis Sentinel 1.环境.准备 单实例3台CentOS7服务器,IP地址.: 192 ...

  3. docker搭建redis主从集群和sentinel哨兵集群,springboot客户端连接

    花了两天搭建redis主从集群和sentinel哨兵集群,讲一下springboot客户端连接测试情况 redis主从集群 从网上查看说是有两种方式:一种是指定配置文件,一种是不指定配置文件 引用地址 ...

  4. 主从集群搭建及容灾部署redis

    redis主从集群搭建及容灾部署(哨兵sentinel) Redis也用了一段时间了,记录一下相关集群搭建及配置详解,方便后续使用查阅. 提纲 l  Redis安装 l  整体架构 l  Redis主 ...

  5. Redis主从集群及哨兵模式

    本次实验环境准备用一台服务器模拟3台redis服务器,1主2从 主从集群搭建 第一步:安装Redis 安装Redis,参考前面安装Redis文章,保证单机使用没有问题. 第二步:配置服务器文件 定位到 ...

  6. Redis 3.2.8集群+Sentinel部署

    Redis3.2.8集群搭建 采用官方推荐的三主三从分片方案,本例中所有节点部署在一台主机上. 软件安装: tar zxvf redis-3.2.8.tar.gz cd  redis-3.2.8 ma ...

  7. docker-compose安装rabbitmq集群(主从集群---》镜像集群)

    docker-compose安装rabbitmq集群(主从集群--->镜像集群) yls 2020/5/11 创建docker-compose.yml 文件 version: '3' servi ...

  8. 一、全新安装搭建redis主从集群

    前言· 这里分为三篇文章来写我是如何重新搭建redis主从集群和哨兵集群的及原本服务器上有单redis如何通过升级脚本来实现redis集群.(redis结构:主-从(备)-从(备)) 至于为什么要搭建 ...

  9. Docker搭建MySQL主从集群,基于GTID

    写在前边 搭建MySQL读写分离主从集群,这里未使用binlog方式,使用的是GTID方式 源码见我的Github https://github.com/hellxz/mysql-cluster-do ...

随机推荐

  1. Sass与Web组件化相关的功能

    Sass https://en.wikipedia.org/wiki/Sass_(stylesheet_language) Sass (Syntactically Awesome Stylesheet ...

  2. AFNETWorking 不支持中文URL请求

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #000000; min-height: 16.0px } p.p ...

  3. 如何发布一个Mac应用并使其成为全球付费榜第一

    Readdle公司如何发布第一个 Mac App,并使之成为Mac App Store 全球付费排名第一的 Easy注:自从发布了<程序员如何优雅的挣零花钱?>后,就不断有同学询问怎么做A ...

  4. LDAP的Schema

    Schema是LDAP的一个重要组成部分,类似于数据库的模式定义,LDAP的Schema定义了LDAP目录所应遵循的结构和规则,比如一个 objectclass会有哪些属性,这些属性又是什么结构等等, ...

  5. SQL 数据分页查询

    最近学习了一下SQL的分页查询,总结了以下几种方法. 首先建立了一个表,随意插入的一些测试数据,表结构和数据如下图: 现在假设我们要做的是每页5条数据,而现在我们要取第三页的数据.(数据太少,就每页5 ...

  6. 闭包内的微观世界和js垃圾回收机制

    一.什么是闭包? 官方”的解释是:闭包是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分.相信很少有人能直接看懂这句话,因为他描述的太学术.其实这句话 ...

  7. 第二天 ado.net, asp.net ,三层笔记

    1. ado.net步骤:     一:倒入命名空间      using System.Data;      using System.Data.sqlclient;     二:第一个模型 int ...

  8. kzalloc 函数详解(转载)

    用kzalloc申请内存的时候, 效果等同于先是用 kmalloc() 申请空间 , 然后用 memset() 来初始化 ,所有申请的元素都被初始化为 0. view plain /** * kzal ...

  9. 夺命雷公狗----Git---5---分支

    git分支的概念相当于是添加一个属于自己的分支,别人是看不到的,等你写完自己的程序到时候在合并到团队的分支上即可.... 我们可以查看自己git里面有什么分支,如下所示: git branch 在这里 ...

  10. opencv的学习笔记5

    总结原博文中的一些边缘检测算子和滤波器.(Canny算子,  Sobel算子,  Laplace算子以及Scharr滤波器) 首先,一般的边缘检测包括三个步骤: 1)滤波:边缘检测的算法主要是基于图像 ...