redis版本:redis-5.0.3.tar.gz
操作系统:完全新安装的centos7.6系统
使用一台虚拟机模拟6个redis节点,3个master,3个slave,虚拟机IP为192.168.220.11
和使用不同的IP创建集群基本过程一致,为了方便,就不创建多个虚拟机了。
开始搭建:
    yum install -y wget gcc
systemctl stop firewalld.service
systemctl disable firewalld.service
cd /opt
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
tar zxvf redis-5.0..tar.gz
mv redis-5.0. redis
cd redis

解压后目录结构如下:

编译安装:

    make MALLOC=libc
make install

src目录包含了redis server和redis cli的相关命令脚本,将该路径加入到PATH环境变量当中,方便使用

    cd /opt/redis
mkdir cluster # 创建redis实例根目录
cd cluster
mkdir # 创建具体redis实例相关目录,指定其端口号为7001
cd
cp /opt/redis/redis.conf . #复制配置文件,修改之后当作当前redis实例的启动配置
mkdir data # 创建数据存储目录
修改配置文件文件,最小化修改配置
下面为需要修改的配置项以及说明
port # 客户端连接端口
bind 192.168.220.11 #实例绑定的IP地址
dir /opt/redis/cluster//data # redis实例数据配置存储位置
daemonize yes # 是否以后台进程的方式启动redis实例
pidfile pidfile /var/run/redis_7001.pid # 指定该进程pidfile
cluster-enabled yes # 开启集群模式
cluster-config-file # 集群中该实例的配置文件,该文件会在data目录下生成
appendonly yes # 开启aop日志
protected-mode no # 关闭保护模式
requirepass cyclone # master开启密码保护
masterauth cyclone # replica同master交互密码 接下来按照同样的方式创建7002,,,,7006的文件夹,修改配置文件 依次启动redis实例
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
查看启动结果

集群的创建,将redis实例联系起来,创建一个集群
redis-cli -a cyclone --cluster create --cluster-replicas  192.168.220.11: 192.168.220.11: 192.168.220.11: 192.168.220.11: 192.168.220.11: 192.168.220.11:
输出如下:

一些slave和master在相同的物理主机上,所以会出现一些警告,这个不影响。
连接到集群的某个节点:

redis-cli -a cyclone -c -h 192.168.220.11 -p 

查看集群相关信息:

查看集群节点信息:

集群相关操作:

1.关闭集群的某个节点,比如关闭端口号为7001的实例:

redis-cli -a cyclone -c -h 192.168.220.11 -p 7001 shutdown
查看结果

关闭之后,使用redis-server /opt/redis/cluster/7001/redis.conf命令可以将实例重新启动,启动完成之后,自动加入到集群当中

2.集群的关闭

逐个关闭redis实例进程即可
查找redis实例进程号

    ps -ef | grep redis

关闭redis进程,使用kill -9 ${进程号},如果需要关闭多个进程,进程号之间空格隔开即可

kill -      

也可执行以下命令来关闭redis进程

pkill - redis

3.redis集群的重新启动

保留原来的数据:
逐个关闭redis实例,再逐个的启动即可。

 
丢弃原来的数据:
关闭实例,清空实例中数据存放目录的所有内容,然后逐个启动实例,在任意一个实例上执行集群的创建命令即可,本质上就是创建一个新的集群
清空数据存储目录内容:
   rm -rf /opt/redis/cluster//data/*
rm -rf /opt/redis/cluster/7002/data/*
rm -rf /opt/redis/cluster/7003/data/*
rm -rf /opt/redis/cluster/7004/data/*
rm -rf /opt/redis/cluster/7005/data/*
rm -rf /opt/redis/cluster/7006/data/*

启动实例:

  redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf
redis-server /opt/redis/cluster//redis.conf

执行集群创建命令:

redis-cli -a cyclone --cluster create --cluster-replicas  192.168.220.11: 192.168.220.11: 192.168.220.11: 192.168.220.11: 192.168.220.11: 192.168.220.11:

转自
作者:cyclone_29
链接:https://www.jianshu.com/p/e9eab2f4a564
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

redis cluster-cluster 命令手动管理redis集群

、将 ip 和 port 所指定的节点添加到集群中

CLUSTER MEET <ip> <port>

、从集群中移除 node_id 指定的节点

CLUSTER FORGET <node_id>

、将当前节点设置为 node_id 指定的节点的从节点

CLUSTER REPLICATE <node_id>

、将节点的配置文件保存到硬盘里面

CLUSTER SAVECONFIG

、将一个或多个槽(slot)指派(assign)给当前节点

CLUSTER ADDSLOTS <slot> [slot ...]

、移除一个或多个槽对当前节点的指派

CLUSTER DELSLOTS <slot> [slot ...]

、 移除指派给当前节点的所有槽,让当前节点变成一个没有指派任何槽的节点

CLUSTER FLUSHSLOTS

、将槽 slot 指派给 node_id 指定的节点,如果槽已经指派给另一个节点,那么先让另一个节点删除该槽>,然后再进行指派

CLUSTER SETSLOT <slot> NODE <node_id>

、将本节点的槽 slot 迁移到 node_id 指定的节点中

CLUSTER SETSLOT <slot> MIGRATING <node_id>

、从 node_id 指定的节点中导入槽 slot 到本节点

CLUSTER SETSLOT <slot> IMPORTING <node_id>

、取消对槽 slot 的导入(import)或者迁移(migrate)

CLUSTER SETSLOT <slot> STABLE

、计算键 key 应该被放置在哪个槽上

CLUSTER KEYSLOT <key>

、返回槽 slot 目前包含的键值对数量

CLUSTER COUNTKEYSINSLOT <slot>

、返回 count 个 slot 槽中的键

CLUSTER GETKEYSINSLOT <slot> <count> 

redis集群搭建及启动、停止、重启操作【转】的更多相关文章

  1. 分享知识-快乐自己:redis集群搭建

    Redis介绍: 1.开源的NoSql数据库 2.C语言编写 3.基于内存运行,并且支持持久化 4.Key value存储 5.是主流的Nosql数据库之一 Redis优点: 1.内存使用方面,表现优 ...

  2. Redis集群搭建的三种方式

    一.Redis主从 1.1 Redis主从原理 和MySQL需要主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生性能瓶颈,特别是在读压力上,为了分担压力,Redis支持主从复制. ...

  3. 二、redis集群搭建

    redis集群搭建 redis3.0后支持集群.集群中应该至少有三个节点,每个节点有一备份节点.需要6台服务器.搭建伪分布式,需要6个redis实例.搭建集群的步骤: 一.安装单机版redis 第一步 ...

  4. Redis集群搭建-韩国庆

    认真一步一步搭建下来,就可以成功.... Redis-cluster集群架构讲解 redis集群专业名词称之为Redis-cluster,redis集群是从3.0版本以后才有的概念,也就是说在3.0之 ...

  5. redis集群搭建及设置账户(转)

    Redis集群搭建以及为集群设置密码 介绍安装环境与版本 用两台虚拟机模拟6个节点,一台机器3个节点,创建出3 master.3 salve 环境. redis 采用 redis-3.2.4 版本. ...

  6. redis 集群搭建: redis-cluster

    前言 redis数据存储在内存中, 就会受到内存的限制, 大家都知道, 一台电脑, 硬盘可以有1T, 但是内存, 没有听说有1T的内存吧. 那如果数据非常多, 超过一台电脑的内存空间, 怎么办呢? 正 ...

  7. centos redis集群搭建

    说明: 10.0.0.111部署6500,6501,6502三个主节点 10.0.0.222部署6500,6501,6502三个备份节点 1.安装redis:略 2.配置内核参数 # 配置 vm.ov ...

  8. Redis集群搭建,伪分布式集群,即一台服务器6个redis节点

    Redis集群搭建,伪分布式集群,即一台服务器6个redis节点 一.Redis Cluster(Redis集群)简介 集群搭建需要的环境 二.搭建集群 2.1Redis的安装 2.2搭建6台redi ...

  9. 25.redis集群搭建笔记

    ###Redis集群### 0.准备 软件: redis-3.0.0.gem redis-3.0.0.tar.gz#源码   1.安装ruby环境 redis基于ruby槽位计算,hash算法技术,k ...

随机推荐

  1. Android 8.0编译过程

    Android编译系统中的Android.bp.Blueprint与Soonghttp://note.qidong.name/2017/08/android-blueprint/ 工具链关系 Andr ...

  2. Java集合学习(5):LinkedHashMap

    一.概述 HashMap是无序的,HashMap在put的时候是根据key的hashcode进行hash然后放入对应的地方.所以在按照一定顺序put进HashMap中,然后遍历出HashMap的顺序跟 ...

  3. win10 LTSC系统 安装应用商店和纸牌合集,解决从应用商店安装Solitaire Collection纸牌打开空白的问题

    家里台式机换了win10系统,想给老妈玩那个纸牌游戏(我也超喜欢的!. 发现这个系统没有自带纸牌游戏Microsoft Solitaire Collection, 过分的是,连应用商店都没有...呵呵 ...

  4. H3C 无线交换机的数据转发原理

  5. Odoo采购模块

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10825976.html 一:采购过程 采购业务可以分为以下几个流程: 1)建立供应商信息 企业需要与供应商建 ...

  6. .DS_Store文件是什么?Mac系统如何彻底清除该文件?

    用过Mac OS系统的都会注意到一个名为.DS_Store的隐藏文件,尤其是zip格式的压缩包解压的出来,会出现在各种文件夹内,非常烦人! 特别是把文件分享给使用windows的朋友的时候,这些文件会 ...

  7. 爬取前程无忧网站上python的招聘信息。

    本文获取的字段有为职位名称,公司名称,公司地点,薪资,发布时间 创建爬虫项目 scrapy startproject qianchengwuyou cd qianchengwuyou scrapy g ...

  8. Exploit Kit——hacker入侵web,某iframe中将加载RIG EK登录页面,最终下载并执行Monero矿工

    RIG Exploit Kit使用PROPagate注入技术传播Monero Miner from:https://www.4hou.com/technology/12310.html 导语:Fire ...

  9. php备忘录模式(memento pattern)

    晚上刷起来. <?php /* The memento pattern provides the object restore functionality. Implementation is ...

  10. 201671010403 陈倩倩 实验十四 团队项目评审&课程学习总结

    一:实验名称:团队项目评审&课程学习总结 二:实验目的与要求 (1)掌握软件项目评审会流程: (2)反思总结课程学习内容. 三:实验步骤 任务一:按照团队项目结对评审名单,由项目组扮演乙方,结 ...