cluster 模式
第一步创建文件夹
mkdir cluster-redis
cd cluster-redis
mkdir 6001 6002 6003 7001 7002 7003
第二步 配置文件修改
(1)
Bind 192.168.99.171
Demonize yes
Port 7001
(2) redis 实例的pid文件:pidfile “/var/run/redis_700*.pid”
(3) 日志的配置文件: logfile “/usr/local/redis-cluster/700*/logs/edis.log”
(4)dir /usr/local/redis-cluster/700*/(指定数据文件存放位置,必须要指定不同的目录位置,不然会丢失数据)
(5)cluster-enabled yes (启动集群模式开启)
(6)cluster-config-file nodes700*.conf (这里700*最好和port对应上)
(7) cluster-node-timeout 5000
(8)appendonly yes 并修改aof模式为:appendfsync always
第三步
拷贝redis安装文件到各个集群文件夹下
cp /usr/local/redis-3.2.8 /usr/local/cluster-reids/600*
拷贝配置文件redis.conf到每个文件夹下
(vi全局修改命令 :%s/6001/6002/g 意思是将文件中所有6001改成6002,g的意思是全局)
第四步
安装ruby
yum install ruby
yum install rubygems
gem install redis //ruby 与redis集成
第五步
分别启动每个节点
//usr/local/bin/redis-server /usr/local/cluster-redis/600*/redis.conf
ps -ef | grep redis查看是否都启动了
查看结果如下:
0 36834 1 0 10:59下午 ?? 0:00.26 /usr/local/bin/redis-server 192.168.99.171:6001 [cluster]
0 36939 1 0 11:01下午 ?? 0:00.18 /usr/local/bin/redis-server 192.168.99.171:6002 [cluster]
0 37013 1 0 11:03下午 ?? 0:00.11 /usr/local/bin/redis-server 192.168.99.171:6003 [cluster]
0 37053 1 0 11:04下午 ?? 0:00.08 /usr/local/bin/redis-server 192.168.99.171:7001 [cluster]
0 37097 1 0 11:04下午 ?? 0:00.05 /usr/local/bin/redis-server 192.168.99.171:7002 [cluster]
0 37143 1 0 11:05下午 ?? 0:00.01 /usr/local/bin/redis-server 192.168.99.171:7003 [cluster]
此时每个节点都是单独地节点,还不是集群
第六步
redis目录下src下 执行 redis-trib.rb 命令,—replicas 1 的意思是 主节点和从节点的比例是1
cd /usr/local/redis-3.2.8/src/
./redis-trib.rb create --replicas 1 192.168.99.171:6001 192.168.99.171:6002 192.168.99.171:6003 192.168.99.171:7001 192.168.99.171:7002 192.168.99.171:7003
下面是执行结果
>>> Creating cluster
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
192.168.99.171:6001
192.168.99.171:6002
192.168.99.171:6003
Adding replica 192.168.99.171:7001 to 192.168.99.171:6001
Adding replica 192.168.99.171:7002 to 192.168.99.171:6002
Adding replica 192.168.99.171:7003 to 192.168.99.171:6003
M: 41040ebe0a355446e8aacb1ece9363ae1cd52a2a 192.168.99.171:6001
slots:0-5460 (5461 slots) master
M: 7df9adb8cb22702a37adf78cf638b2237dbb295d 192.168.99.171:6002
slots:5461-10922 (5462 slots) master
M: 4ac4444bbdbe31270be1c162233ef663899047a6 192.168.99.171:6003
slots:10923-16383 (5461 slots) master
S: bc472066eebfec7751ff0feaad4afc81e84c4d9c 192.168.99.171:7001
replicates 41040ebe0a355446e8aacb1ece9363ae1cd52a2a
S: 21d0cde48313ca062ac059b94230665c1e27924a 192.168.99.171:7002
replicates 7df9adb8cb22702a37adf78cf638b2237dbb295d
S: ec6b05010a22dc4002ddee7c7a11d8f408c8a471 192.168.99.171:7003
replicates 4ac4444bbdbe31270be1c162233ef663899047a6
Can I set the above configuration? (type 'yes' to accept): yes // yes 对执行计划进行确认
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join...
>>> Performing Cluster Check (using node 192.168.99.171:6001)
M: 41040ebe0a355446e8aacb1ece9363ae1cd52a2a 192.168.99.171:6001
slots:0-5460 (5461 slots) master
1 additional replica(s)
S: ec6b05010a22dc4002ddee7c7a11d8f408c8a471 192.168.99.171:7003
slots: (0 slots) slave
replicates 4ac4444bbdbe31270be1c162233ef663899047a6
S: bc472066eebfec7751ff0feaad4afc81e84c4d9c 192.168.99.171:7001
slots: (0 slots) slave
replicates 41040ebe0a355446e8aacb1ece9363ae1cd52a2a
S: 21d0cde48313ca062ac059b94230665c1e27924a 192.168.99.171:7002
slots: (0 slots) slave
replicates 7df9adb8cb22702a37adf78cf638b2237dbb295d
M: 4ac4444bbdbe31270be1c162233ef663899047a6 192.168.99.171:6003
slots:10923-16383 (5461 slots) master
1 additional replica(s)
M: 7df9adb8cb22702a37adf78cf638b2237dbb295d 192.168.99.171:6002
slots:5461-10922 (5462 slots) master
1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
到这里集群就搭建成功了
第七步验证
/usr/local/bin/redis-cli -c -h 192.168.99.171 -p 6001
-c 表示以集群的模式启动
info
cluster-info
cluster-node
可以查看集群相关信息
相关推荐
redis 集群搭建 ,单节点,集群搭建,工具包
"docker 实现redis集群搭建" 一、Redis Cluster 概念 Redis Cluster 是 Redis 的分布式解决方案,旨在解决 Redis 单机中心化的问题。它将整个数据集按照分区规则映射到多个节点上,使得 Redis 能够水平扩展以应对...
以下是一份简化的Redis集群搭建步骤: 1. **环境准备**: - 确保你有一个兼容的Linux环境,例如CentOS 7(64位)。 - 下载Redis的源代码包,如redis-4.0.6.tar.gz。 2. **安装Redis单节点**: - 解压Redis源...
### 自学Redis集群搭建过程详解 #### 一、Redis集群简介与重要性 Redis作为一款高性能的键值存储系统,在互联网行业中被广泛应用于缓存、消息队列等多个领域。随着业务规模的不断扩大,单个Redis实例往往难以满足...
阿里云公网Redis集群搭建及Java访问教程 在云计算日益普及的今天,阿里云提供了便捷的公共服务,如Redis缓存服务,帮助企业或个人快速构建高效、可靠的分布式应用。本教程将详细讲解如何在阿里云上搭建公网Redis...
Redis集群搭建与验证的知识点主要包括以下几个方面: 1. Redis集群概述 Redis集群是Redis提供的分布式数据库解决方案,它可以将数据自动切分到多个Redis节点上。集群通过分区来提供一定程度的可用性,在部分节点...
本资料"Redis集群搭建.zip"提供了真实项目环境下的Redis集群配置,旨在帮助用户快速搭建并投入使用。以下是对Redis集群搭建及相关知识点的详细解释: 1. **Redis集群的基本概念**: - **主从复制(Replication)**...
Redis集群搭建教程 本文档将手把手教你搭建2019年最全面的Redis集群环境。下面将详细介绍搭建过程中的每一个步骤,并提供详细的命令和配置文件修改方法。 一、Redis集群搭建前的准备工作 在开始搭建集群之前,...
Redis 集群搭建步骤 Redis 集群搭建是 Redis 高可用性的重要组件,通过集群搭建可以实现高可用性和扩展性。在本文档中,我们将介绍 Redis 集群搭建的详细步骤。 1.1 Redis 集群说明 Redis 集群是 Redis 的一种高...
**Redis集群搭建手册** Redis,全称Remote Dictionary Server,是一种高性能的键值对数据库,以其丰富的数据类型、高效的内存管理以及支持持久化等特性,在分布式系统中被广泛应用于缓存、消息中间件以及数据存储等...
本教程将详细介绍如何搭建一个完整的Redis集群。 **一、Redis集群基础** 1. **数据分片**:Redis Cluster通过数据分片技术将数据分散到多个节点上,每个节点存储一部分数据。它采用CRC16算法计算键的槽位,然后将...
- 在搭建Redis集群之前,需要确保系统已经安装了`gcc-c++`依赖包。这一步非常重要,因为Redis的安装需要通过编译源码的方式进行。 - 安装命令:`yum install gcc-c++` - 对于内网环境,可能需要预先下载好`gcc`的...
Windows Redis 集群搭建: 1、Redis 3.2.100。 2、redis-trib.rb。 3、rubygems-2.6.11.zip。 4、rubyinstaller-2.2.6.exe。
在本资料包中,您将找到关于Redis集群搭建的详细步骤和教程。 首先,Redis集群的基本概念是将数据分散到多个节点上,每个节点存储一部分数据。它采用无中心架构,每个节点都可以接收客户端的请求,并通过哈希槽...
Redis 集群搭建与脚本启动是分布式缓存系统中的一个重要话题,它涉及到如何配置多个Redis实例以实现数据的高可用性和可扩展性。在本文中,我们将深入探讨Redis集群的基本概念、搭建过程以及使用脚本自动化启动的方法...
Redis集群搭建是一个重要的任务,特别是在大型的分布式系统中,它能提供高可用性和水平扩展性。Redis是一个基于键值对的高性能数据存储服务,而集群则可以将数据分散到多个节点,实现数据冗余和故障转移,从而提高...
### Redis集群搭建与简单使用详解 #### 一、概述 Redis 集群是一种通过分区数据来实现高可用性和水平扩展的技术。通过将数据分布在多个 Redis 实例中,集群能够提供更高的性能和更大的数据存储容量。本文档将详细...
Redis 集群搭建 Redis 集群是Redis数据库的一种分布式实现,它将数据分散存储在多个节点上,提供高可用性和可扩展性。在Redis Cluster中,数据被分割成多个槽(slots),每个节点负责一部分槽,当写入或读取数据时...
本压缩包提供的文件是关于Redis集群搭建的相关资料,我们将详细探讨Redis集群的原理、配置以及搭建步骤。 **Redis集群的基本概念** Redis集群是通过分片(Sharding)技术将数据分散到多个节点上,每个节点负责一...