一.安装redis

安装依赖类库

yum -y install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make gcc-c++ libstdc++-devel tcl

下载redis

http://download.redis.io/releases/

安装redis

  1. mkdir -p /usr/local/src/redis
  2. cd /usr/local/src/redis
  3. rz 上传
  4. tar -xvf redis-3.0.2.tar.gz
  5. cd redis-3.0.2
  6. make
  7. make test #这个就不要执行了,需要很长时间
  8. make install
  9. cp redis.conf /etc/
  10. vi /etc/redis.conf
  11. # 修改如下,默认为no
  12. daemonize yes
  13. #启动
  14. redis-server /etc/redis.conf
  15. #测试
  16. redis-cli

二.主从复制的好处有2点:

1、避免redis单点故障
2.构建读写分离架构,满足读多写少的应用场景
3.主从架构

主从安装redis(这里以一台机器作为实验)

1.创建6379、6380、6381目录,分别将安装目录下的redis.conf拷贝到这三个目录下。

  1. cd /root
  2. mkdir redis && cd redis
  3. mkdir 6379 6380 6381
  4. cp /etc/redis.conf 6379/
  5. cp /etc/redis.conf 6380/
  6. cp /etc/redis.conf 6381/

2.修改6380 6381 redis.conf文件

  1. port 6380
  2. pidfile /var/run/redis-6380.pid
  3. port 6381
  4. pidfile /var/run/redis-6381.pid

3.关掉“一”中redis服务

  1. ps -ef|grep reids
  2. kill -9 pid

4.分别启动/root/redis中6379,6380,6381配置

  1. cd /root/reids
  2. cd 6379 redis-server && ./redis.conf && cd ..
  3. cd 6380 redis-server && ./redis.conf && cd ..
  4. cd 6381 redis-server && ./redis.conf && cd ..
  5. ps -ef|grep reids #查看是否启动

5.设置主从

  1. redis中设置主从有2种方式:
  2. 1、在redis.conf中设置slaveof`
  3. slaveof <masterip> <masterport>
  4. 2、使用redis-cli客户端连接到redis服务,执行slaveof命令`
  5. slaveof <masterip> <masterport>`
  6. 主从关系搭建成功会产生一个dump.rdb文件
  7. 例如:
  8. redis-cli -p 6380 #连接到6380
  9. slaveof 127.0.0.1 6379
  10. redis-cli -p 6379 #链接到6379主reids
  11. set cary 'cary'
  12. reids-cli -p 6380
  13. get cary #检验是否能够查到数据
  14. 第二种方式在重启后将失去主从复制关系

6.查看主从信息

  1. 执行 INFO replication #在主库和从库中都可以执行
  2. role:角色
  3. connected_slaves:从库数量
  4. slave0:从库信息

四.哨兵配置

接下来开始配置哨兵。建立一个配置文件sentinel.conf,内容为:

  1. cd /root/6379/
  2. vim sentinel.conf
  3. 添加:
  4. sentinel monitor mymaster 127.0.0.1 6379 1
  5. 启动哨兵
  6. redis-sentinel /root/redis/6379/sentinel.conf
  7. 命令号输出

13283:X 17 Jan 06:49:21.139 # +monitor master mymaster 127.0.0.1 6379 quorum 1

13283:X 17 Jan 06:49:21.155 * +slave slave 127.0.0.1:6381 127.0.0.1 6381 @ mymaster 127.0.0.1 6379

13283:X 17 Jan 06:49:21.159 * +slave slave 127.0.0.1:6380 127.0.0.1 6380 @ mymaster 127.0.0.1 6379

其中”+slave”表示新发现了从库,可见哨兵成功地发现了两个从库

现在哨兵已经在监控这3个Redis实例了,这时将从库关闭(杀死进程或使用 shutdown 命令),等待指定时间后(可配置,默认为 30 秒),哨兵会输出如下内容

13283:X 17 Jan 06:50:41.440 # +sdown slave 127.0.0.1:6381 127.0.0.1 6381 @ mymaster 127.0.0.1 6379

redis集群安装的更多相关文章

  1. CentOS下redis集群安装

    环境: 一台CentOS虚拟机上部署六个节点,创建3个master,3个slave节点 1.下载并解压 cd /root wget http://download.redis.io/releases/ ...

  2. Springboot 2.0.x 集成基于Centos7的Redis集群安装及配置

    Redis简介 Redis是一个基于C语言开发的开源(BSD许可),开源高性能的高级内存数据结构存储,用作数据库.缓存和消息代理.它支持数据结构,如 字符串.散列.列表.集合,带有范围查询的排序集,位 ...

  3. redis 集群安装

    redis集群安装 1.下载redis源码 2.解压并进入解压后的文件夹redis内 3.make,生成一系列的文件(mkreleasehdr.sh, redis-benchmark, redis-c ...

  4. redis集群安装部署

    (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下) 192.168.1.160:7000 192. ...

  5. 【Redis篇】Redis集群安装与初始

    一.前述   本文将单台节点不同端口模拟集群方式. 二.具体搭建 前提是安装好redis具体可参考http://www.cnblogs.com/LHWorldBlog/p/8463269.html 1 ...

  6. windows下redis集群安装和部署

    1.下载windows版本的Redis 官网只提供linux版本的下载 官网下载地址:http://redis.io/download github下载地址:https://github.com/MS ...

  7. Linux 下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)

    一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,其中主要包括在联网的Linux环境和脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网 ...

  8. Windows下Redis集群安装与部署

    1.下载 Redis-x64-3.2.100.zip 安装程序 官网下载地址:http://redis.io/download GitHub下载地址:https://github.com/micros ...

  9. redis集群安装2

      概要:本文主要介绍如何在Centos7中单机搭建redis集群三主三从,按照本文绝对可以实现该需求,至于先搭建单机版主要为了方便理解redis集群,为下一步开发或生产上redis集群做铺垫.同时本 ...

  10. redis集群安装多端口多实例部署

    目标(本文达成的结果,配对关系可能会变): 先在131上进行操作 1.下载redis http://download.redis.io/releases/redis-5.0.2.tar.gz 2.解压 ...

随机推荐

  1. leetcode-【简单题】Happy Number

    题目: Write an algorithm to determine if a number is "happy". A happy number is a number def ...

  2. QTP学习笔记之—VBS

    1.ToString() : Returns a string that represents the current test object. Example The following examp ...

  3. Android IOS WebRTC 音视频开发总结(八十)-- NUBOMEDIA: 首个WebRTC PaaS

    本文主要介绍NUBOMEDIA(我们翻译和整理的,译者:jiangpeng,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:b ...

  4. .NET 工具类ObjectDumper 打印对象

    // Comes from the LINQ samples provided by Microsoft //Copyright (C) Microsoft Corporation. All righ ...

  5. Hsqldb安装与使用

    HSQLDB是一个轻量级的纯Java开发的开放源代码的关系数据库系统,其体积小,占用空间小,使用简单,支持内存运行方式等特点.可以在http://sourceforge.net/projects/hs ...

  6. selenium3.0.1调用firefox

    报错信息如下时: selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to b ...

  7. 自定义UICollectinviewFlowLayout,即实现瀑布流

    如图所示,通过实现不规则的网格分布,来显示出不同的效果.因为集合视图必须要指定布局还可以显示,所以自定义布局就可以实现瀑布流的效果. //创建布局对象 WaterFlowLayout *flowLay ...

  8. Key/Value存储系统etcd的特性

    etcd 是一个高可用的Key/Value存储系统,和其他KV存储系统不同的是,它的灵感来自于 ZooKeeper 和 Doozer,主要用于分享配置和服务发现.利用 etcd 的特性,应用程序可以在 ...

  9. prolog 内部谓词

    内部谓词 和其他语言一样,prolog也提供一些基本的输入输出函数. 内部谓词是指已经在prolog中事先定义好的谓词,在内存中的动态数据库中是没有内部谓词子句的.(当我们运行某个.pl 文件的时候, ...

  10. PHP实现队列及队列原理

    看看各语言实现队列的方法:PHP实现队列:第一个元素作为队头,最后一个元素作为队尾 <?php /** * 队列就是这么简单 * * @link http://www.phpddt.com */ ...