Redis3.0.7 cluster/集群 安装配置教程
1、前言
环境:CentOS-6.7-i386-LiveDVD 安装的CentOs系统
节点: 6个节点,3个主节点、3个从节点(由于redis默认需要3个主节点,如果想每个主节点有一个从节点,这是最低配要求)
配置:端口都采用默认的6379
redis版本:目前官网最新的redis stable版本为:3.0.7(时间点:2016年3月10日)。
2、获取源码
在每台机器用命令:webget http://download.redis.io/releases/redis-3.0.7.tar.gz 获取redis3.0.7源码到你linux某目录。
3、修改配置
执行命令 tar -xvf redis-3.0.7.tar.gz 解压得到redis-3.0.7文件夹,修改其下的redis.conf,主要修改下面几项:
daemonize yes # redis默认不是后台启动,这里修改成后台启动
cluster-enabled yes # 允许redis支持集群模式
cluster-config-file nodes.conf # 节点配置文件
cluster-node-timeout # 节点超时毫秒
appendonly yes
#port 7000 #如果你需要自定义端口可以用这个选项
注意:6个节点下的redis.conf都需要修改,可以修改一个之后拷贝过去。
4、编译源码
然后在6个节点的redis-3.0.7目录下执行 make 命令,编译源码,编译好后会在src文件夹生成redis-server等二进制文件
5、启动实例
在6个节点的redis-3.0.7目录下分别执行命令 src/redis-server,默认会使用redis.conf配置 ,这样每个节点就启动了一个实例。
6、搭建redis集群(在其中一个节点操作就可以了)
通过使用 Redis 集群命令行工具 redis-trib 创建集群, redis-trib 位于 Redis 源码的 src 文件夹中, 它是一个 Ruby 程序, 这个程序通过向实例发送特殊命令来完成创建新集群, 检查集群, 或者对集群进行重新分片(reshared)等工作。请先来到redis解压目录,cd src 进入src目录,然后执行下面命令:
./redis-trib.rb create --replicas 1 xxx.xxx.xxx.1:6379 xxx.xxx.xxx.2:6379 xxx.xxx.xxx.3:6379 xxx.xxx.xxx.4:6379 xxx.xxx.xxx.5:6379 xxx.xxx.xxx.6:6379
注意ip修改成自己的~~
命令的意义如下:
给定 redis-trib.rb 程序的命令是 create , 这表示我们希望创建一个新的集群。
选项 --replicas 1 表示我们希望为集群中的每个主节点创建一个从节点。
之后跟着的其他参数则是实例的地址列表, 我们希望程序使用这些地址所指示的实例来创建新集群。
简单来说, 以上命令的意思就是让 redis-trib 程序创建一个包含三个主节点和三个从节点的集群。
接着, redis-trib 会打印出一份预想中的配置给你看, 如果你觉得没问题的话, 就可以输入 yes , redis-trib 就会将这份配置应用到集群当中:
>>> Creating cluster
Connecting to node xxx.xxx.xxx.1:6379: OK
Connecting to node xxx.xxx.xxx.2:6379: OK
Connecting to node xxx.xxx.xxx.3:6379: OK
Connecting to node xxx.xxx.xxx.4:6379: OK
Connecting to node xxx.xxx.xxx.5:6379: OK
Connecting to node xxx.xxx.xxx.6:6379: OK
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
xxx.xxx.xxx.1:6379
xxx.xxx.xxx.2:6379
xxx.xxx.xxx.3:6379
xxx.xxx.xxx.1:6379 replica #1 is xxx.xxx.xxx.4:6379
xxx.xxx.xxx.2:6379 replica #1 is xxx.xxx.xxx.5:6379
xxx.xxx.xxx.3:6379 replica #1 is xxx.xxx.xxx.6:6379
M: 9991306f0e50640a5684f1958fd754b38fa034c9 xxx.xxx.xxx.1:6379
slots:0-5460 (5461 slots) master
M: e68e52cee0550f558b03b342f2f0354d2b8a083b xxx.xxx.xxx.2:6379
slots:5461-10921 (5461 slots) master
M: 393c6df5eb4b4cec323f0e4ca961c8b256e3460a xxx.xxx.xxx.3:6379
slots:10922-16383 (5462 slots) master
S: 48b728dbcedff6bf056231eb44990b7d1c35c3e0 xxx.xxx.xxx.4:6379
S: 345ede084ac784a5c030a0387f8aaa9edfc59af3 xxx.xxx.xxx.5:6379
S: 3375be2ccc321932e8853234ffa87ee9fde973ff xxx.xxx.xxx.6:6379
Can I set the above configuration? (type 'yes' to accept): yes
7、测试集群
redis-cli -c -h xxx.xxx.xxx.1(集群中任意一个ip) -p 6379
8、附
好吧,最后我承认我是用虚拟机测试的,并且在单台虚拟机机器上启动6个实例,而以上是接近生产的配置流程,方便参考。下面配上一些图,是我当时测试的实际情况,如下
启动集群:

让各个节点开始互相通讯:

测试集群:

转载请注明:http://www.cnblogs.com/langtianya/p/5254856.html
参考:http://blog.csdn.net/jthink_/article/details/50373959
官方英文版请看:Redis cluster tutorial
相关:安装 rubygems
Redis中sentinel集群的搭建和Jedis测试图文教程[一]
Redis3.0.7 cluster/集群 安装配置教程的更多相关文章
- redis cluster 集群 安装 配置 详解
redis cluster 集群 安装 配置 详解 张映 发表于 2015-05-01 分类目录: nosql 标签:cluster, redis, 安装, 配置, 集群 Redis 集群是一个提供在 ...
- Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS
摘自:http://www.powerxing.com/install-hadoop-cluster/ 本教程讲述如何配置 Hadoop 集群,默认读者已经掌握了 Hadoop 的单机伪分布式配置,否 ...
- Hadoop-2.4.1 ubuntu集群安装配置教程
一.环境 系统: Ubuntu 14.04 32bit Hadoop版本: Hadoop 2.4.1 (stable) JDK版本: 1.7 集群数量:3台 注意事项:我们从Apache官方网站下载的 ...
- Ubuntu 14.04下Hadoop2.4.1集群安装配置教程
一.环境 系统: Ubuntu 14.04 64bit Hadoop版本: hadoop 2.4.1 (stable) JDK版本: OpenJDK 7 台作为Master,另3台作为Slave. 所 ...
- Hadoop 2.6.1 集群安装配置教程
集群环境: 192.168.56.10 master 192.168.56.11 slave1 192.168.56.12 slave2 下载安装包/拷贝安装包 # 存放路径: cd /usr/loc ...
- CentOS下Hadoop-2.2.0集群安装配置
对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...
- hbase和ZooKeeper集群安装配置
一:ZooKeeper集群安装配置 1:解压zookeeper-3.3.2.tar.gz并重命名为zookeeper. 2:进入~/zookeeper/conf目录: 拷贝zoo_sample.cfg ...
- Hadoop2.2集群安装配置-Spark集群安装部署
配置安装Hadoop2.2.0 部署spark 1.0的流程 一.环境描写叙述 本实验在一台Windows7-64下安装Vmware.在Vmware里安装两虚拟机分别例如以下 主机名spark1(19 ...
- hbase单机环境的搭建和完全分布式Hbase集群安装配置
HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. @hbase单机环境的搭建 ...
随机推荐
- 单例模式:Instance
前言: 学习面向对象程序设计的朋友应该知道,我们大多数情况下通过 new 操作来实例化对象的.对于一些仅需要一次初始化的对象来说,频繁的new操作无疑会过多浪费内存空间.基于此,单例模式便应运而生了. ...
- Hive UDF开发实例学习
1. 本地环境配置 必须包含的一些包. http://blog.csdn.net/azhao_dn/article/details/6981115 2. 去重UDF实例 http://blog.csd ...
- MapReduce基础知识
hadoop版本:1.1.2 一.Mapper类的结构 Mapper类是Job.setInputFormatClass()方法的默认值,Mapper类将输入的键值对原封不动地输出. org.apach ...
- Leetcode 347. Top K Frequent Elements
Given a non-empty array of integers, return the k most frequent elements. For example,Given [1,1,1,2 ...
- 【bzoj3158】 千钧一发
http://www.lydsy.com/JudgeOnline/problem.php?id=3158 (题目链接) 题意 给出n个装置,每个装置i有一个特征值a[i]和一个能量值b[i],要求选出 ...
- 【codevs1907】 方格取数 3
http://codevs.cn/problem/1907/ (题目链接) 题意 N*N的方格,每个格子中有一个数,从中取出不相邻的任意个数,使得取到的数的和最大. Solution 裸的二分图带权最 ...
- 针对CMS中的tag标签理解
针对CMS的tag标签有以下解释: 什么tag标签? TAG标签是一种由自定义的一种标签,要比分类更加的准确,可以概括文章主要内容的关键词. 运用TAG标签,可以使网站的文章更容易被搜索引擎检索到.百 ...
- 基本概率分布Basic Concept of Probability Distributions 3: Geometric Distribution
PDF version PMF Suppose that independent trials, each having a probability $p$, $0 < p < 1$, o ...
- HDU 1425 sort(堆排序/快排/最大堆/最小堆)
传送门 Description 给你n个整数,请按从大到小的顺序输出其中前m大的数. Input 每组测试数据有两行,第一行有两个数n,m(0<n,m<1000000),第二行包含n个各不 ...
- 使用面向对象对XML进行解析:dom和dom4j的用法
这是一个比较简单的例子,主要是运用面向对象的思想,对XML文件进行解析,用dom和dom4j方法 <?xml version="1.0" encoding="utf ...