二进制redis集群部署

〇、前言

无聊想学罢了

准备环境:

三台centos7 1C1GB即可

三个路相连的地址

主机 IP 节点-角色-实例(端口)
redis1 172.16.106.128 M1-master-7000、S1-slave-7001
redis2 172.16.106.129 M2-master-7002、S2-slave-7003
redis3 172.16.106.130 M3-master-7004、S3-slave-7005

一、二进制部署redis

https://www.cnblogs.com/qq931399960/p/10584877.html

二、配置集群

2.1 创建集群目录

以redis1为例,2和3以此类推

mkdir -p /data/redis-cluster/{7000,7001}

目录结构如下:

/data/redis-cluster/
├── 7000
│ ├── redis.conf # redis 实例配置文件
│ └── nodes.conf # redis 集群节点的配置文件(由集群自动创建)
└── 7001
│ ├── redis.conf # redis 实例配置文件
│ └── nodes.conf # redis 集群节点的配置文件(由集群自动创建)

2.2 创建实例配置文件

分别复制 redis 源码目录下的 redis.conf 至节点配置和数据目录。

以redis的7000为例,其余以此类推

port 7000
bind 0.0.0.0
dir /data/redis-cluster/7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes

2.3 记得关闭防火墙或者开放相应端口

systemctl stop firewalld
systemctl disable firewalld

三、启动集群

3.1分别启动各端口服务(后台启动)

# redis1上
redis-server /data/redis-cluster/7000/redis.conf &
redis-server /data/redis-cluster/7001/redis.conf &
# redis2上
redis-server /data/redis-cluster/7002/redis.conf &
redis-server /data/redis-cluster/7003/redis.conf &
# redis3上
redis-server /data/redis-cluster/7004/redis.conf &
redis-server /data/redis-cluster/7005/redis.conf &

3.2 拉集群

redis-cli --cluster create --cluster-replicas 1 \
172.16.106.128:7000 \
172.16.106.128:7001 \
172.16.106.129:7002 \
172.16.106.129:7003 \
172.16.106.130:7004 \
172.16.106.130:7005

根据提示输入yes,出现下列信息则表示集群创建成功。

四、测试

4.1查看集群信息

在任意一个 redis 节点的主机上执行以下命令:

# redis-cli -c -h 192.168.0.100 -p 7000 cluster info

应输出类型以下信息:

cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:1
cluster_stats_messages_ping_sent:101
cluster_stats_messages_pong_sent:98
cluster_stats_messages_sent:199
cluster_stats_messages_ping_received:93
cluster_stats_messages_pong_received:101
cluster_stats_messages_meet_received:5
cluster_stats_messages_received:199

4.2列出集群节点

在任意一个 redis 节点的主机上执行以下命令,列出集群当前已知的所有节点(node),以及这些节点的相关信息。

# redis-cli -c -h 192.168.0.100 -p 7000 cluster nodes

输出类似以下信息:

50725018cd7f5f20214b0ed462975258397dfe29 192.168.0.102:7005@17005 slave 39e335386bb48f012f433287ed853174009114e5 0 1554876136000 6 connected
8874f69c2f5747cce3a02387167a00cdaba43d3c 192.168.0.100:7001@17001 master - 0 1554876137380 2 connected 5461-10922
c9cb48efbc1a83098cb730a5295402d9cdb343c2 192.168.0.101:7003@17003 slave 917301c74a9ed1ed52918b8e4c7f88de9743c361 0 1554876136375 4 connected
5633e918818033552b1adc089d99fbe9bcf36589 192.168.0.102:7004@17004 slave 8874f69c2f5747cce3a02387167a00cdaba43d3c 0 1554876136072 5 connected
917301c74a9ed1ed52918b8e4c7f88de9743c361 192.168.0.100:7000@17000 myself,master - 0 1554876136000 1 connected 0-5460
39e335386bb48f012f433287ed853174009114e5 192.168.0.101:7002@17002 master - 0 1554876136878 3 connected 10923-16383

4.3查看集群数据槽分配

在任意一个 redis 节点的主机上执行以下命令,显示集群当前所有数据槽的分配情况。

# redis-cli -c -h 192.168.0.100 -p 7000 cluster slots

输出类似以下信息:

1) 1) (integer) 5461
2) (integer) 10922
3) 1) "127.0.0.1"
2) (integer) 7001
4) 1) "127.0.0.1"
2) (integer) 7004
2) 1) (integer) 0
2) (integer) 5460
3) 1) "127.0.0.1"
2) (integer) 7000
4) 1) "127.0.0.1"
2) (integer) 7003
3) 1) (integer) 10923
2) (integer) 16383
3) 1) "127.0.0.1"
2) (integer) 7002
4) 1) "127.0.0.1"
2) (integer) 7005

二进制redis集群部署的更多相关文章

  1. Redis集群部署及命令

    一.简介 redis集群是一个无中心的分布式Redis存储架构,可以在多个节点之间进行数据共享,解决了Redis高可用.可扩展等问题. redis集群提供了以下两个好处: 将数据自动切分(split) ...

  2. Redis集群部署-windows

    Redis集群部署-windows 前言 为了能体验一下部署Redis集群是一种怎么样的体验,所一边做一边写了这篇记录. 1.准备 从这里下载windows服务端 https://github.com ...

  3. Redis集群部署文档(Ubuntu15.10系统)

    Redis集群部署文档(Ubuntu15.10系统)(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如 ...

  4. Redis集群部署3.0

    我用的Mac的终端 ------------------------- 1.Redis简介 centos(5.4)  Redis是一个key-value存储系统.和Memcached类似,但是解决了断 ...

  5. Redis集群部署与维护

    Redis集群部署与维护 目录: 一. 集群架构 二. 集群部署 1. 创建redis-cluster目录 2. 编译redis 3. 编辑redis配置文件 4. 配置redis集群 5. redi ...

  6. redis集群部署之codis 维护脚本

    搞了几天redis cluster codis 的部署安装,测试,架构优化,配合研发应用整合,这里记一些心得! 背景需求: 之前多个业务都在应用到redis库,各业务独立占用主从两台服务器,硬件资源利 ...

  7. redis集群部署那点事

    [CentOS]make cc Command not found,make: *** [adlist.o] Error 127” 参考:https://blog.csdn.net/wzygis/ar ...

  8. redis集群部署步骤

    1.yum 安装依赖 yum install gcc unzip wget 2.编译安装redis,编译安装的目的是源码包内包含了接下来创建redis集群所需要的 redis-trib.rb脚本 ma ...

  9. Redis 集群部署

    一.下载所需软件包 redis wget http://download.redis.io/releases/redis-4.0.6.tar.gz ruby wget https://cache.ru ...

随机推荐

  1. UiPath文本操作Set Text的介绍和使用

    一.Set Text的介绍 向输入框/文本框写入文本的一种操作 二.Set Text在UiPath中的使用 1.打开设计器,在设计库中新建一个Sequence,为序列命名及设置Sequence存放的路 ...

  2. python各种BUG报错解决

    报错1 python学习交流群:660193417### Could not build atari-py: Command '['cmake', '..']' returned non-zero e ...

  3. Microsoft Office Visio Professional 之包图

    1 包的概念 1.1 包的定义 包(Package): 是UML用来组织模型元素的模型元素. 包中可以包含类.接口.构件.用例.结点.活动.状态.包等其他模型元素. 包是对软件模型进行分解.组织的有效 ...

  4. 换根 DP 学习笔记

    前言 没脑子选手什么都不会. 正文 先来写一下换根 DP 的特点或应用方面: 不同的点作为树的根节点,答案不一样. 求解答案时要求出每一个节点的信息. 无法通过一次搜索完成答案的求解,因为一次搜索只能 ...

  5. Active Backup for Business激活

    依次执行 https://IP地址:5001/webapi/auth.cgi?api=SYNO.API.Auth&method=Login&version=1&account= ...

  6. [Android开发学iOS系列] 语言篇: Swift vs Kotlin

    Swift vs Kotlin 这篇文章是想着帮助Android开发快速学习Swift编程语言用的. (因为这个文章的作者立场就是这样.) 我不想写一个非常长, 非常详尽的文章, 只是想写一个快速的版 ...

  7. 可视化查询(sp_helptext)——快速查询包含指定字符串的存储过程(附源码)

    前言 在开发中,随着业务逻辑的调整,修改存储过程是必不可免的. 那怎么定位到需要修改的存储过程呢?一个一个的点开查询?存储过程少的话还行,一旦存储过程过多,这样是很浪费时间的,一个不注意还会遗漏掉. ...

  8. docker仓库之harbor的基本使用(二)

    1 1.配置docker使用harbor仓库上传下载镜像 2 #注意:如果我们配置的是https的话,本地docker就不需要任何操作就可以访问harbor 3 测试机器 4 root@ubuntu1 ...

  9. input 输入框背景色设置为透明

  10. C# 发送Http请求,传文件和其他参数

    /// <summary> /// httpWebRequest post by dic /// </summary> /// <param name="url ...