一.安装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

mkdir -p /usr/local/src/redis
cd /usr/local/src/redis
rz 上传
tar -xvf redis-3.0.2.tar.gz
cd redis-3.0.2
make
make test #这个就不要执行了,需要很长时间
make install
cp redis.conf /etc/
vi /etc/redis.conf
# 修改如下,默认为no
daemonize yes
#启动
redis-server /etc/redis.conf
#测试
redis-cli

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

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

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

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

cd /root
mkdir redis && cd redis
mkdir 6379 6380 6381
cp /etc/redis.conf 6379/
cp /etc/redis.conf 6380/
cp /etc/redis.conf 6381/

2.修改6380 6381 redis.conf文件

port 6380
pidfile /var/run/redis-6380.pid port 6381
pidfile /var/run/redis-6381.pid

3.关掉“一”中redis服务

ps -ef|grep reids
kill -9 pid

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

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

5.设置主从

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

6.查看主从信息

执行 INFO replication  #在主库和从库中都可以执行

role:角色
connected_slaves:从库数量
slave0:从库信息

四.哨兵配置

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

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

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. 一个最小mybatis

    项目结构 package hello; import java.io.IOException; import java.io.InputStream; import org.apache.ibatis ...

  2. Pycharm注册码

    name : newasp===== LICENSE BEGIN =====09086-1204201000001EBwqd8wkmP2FM34Z05iXch1AkKI0bAod8jkIffywp2W ...

  3. cocoapods安装及常用命令

    如果不是因为我重装了电脑,我大概也不会写这篇博客,网上关于cocoapods的安装可谓是不可胜数. 但是对于新版的系统来说,的确存在很多的坑点,这点不是我一个人遇到的问题 如果是新装的系统,默认是安装 ...

  4. Linux第三周——跟踪分析内核的启动过程

    跟踪分析内核的启动过程实验 张潇月<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 这周主要学习的是对内核 ...

  5. gtktree和gtktext使用时要在文件中定义GTK_ENABLE_BROKEN

    linux下调试程序,出现如下错误: /tmp/ccG8fpwg.o: In function `apache_viewlog_form':apache.c:(.text+0x776): undefi ...

  6. Nodejs+Express创建HTTPS服务器

    为了使我的Nodejs服务器提供HTTPS服务,学习了一下如何利用express创建https服务器,现记录如下.(一点一点的积累与掌握吧) 1. Http与Https 介绍 HTTP: 超文本传输协 ...

  7. 用CMake设置Visual Studio工程中第三方库

    较大的工程文件中一般会调用动态库或者静态库,如果这些库文件是当前工程包含的项目,CMake会自动识别并添加Debug和Release编译时需要的库文件路径和文件名,可以使用命令: Target_Lin ...

  8. 读取excel数据,并统计输出Frame版本

    package cn.cnnic.ops; import java.awt.Button; import java.awt.FileDialog; import java.awt.FlowLayout ...

  9. vim显示行号、语法高亮、自动缩进的设置

    转载自:http://blog.csdn.net/chuanj1985/article/details/6873830   在UBUNTU中vim的配置文件存放在/etc/vim目录中,配置文件名为v ...

  10. android 多线程下载

    看代码: public class MainActivity extends AppCompatActivity { private final String TAG = MainActivity.c ...