·声明

1,已官网中文教程为基础,边看边学,结合环境现状搭建。

2,哥对Ruby不热爱、不熟悉、不感冒,所述内容如有疑义请谅解。

3,3.0官说集群还在测试中,其实用用也还算马马虎虎,对外集群API真心少,望有识之士能够出力。

·准备材料

VM9,CentOS 6.4_x86_64(2.6+),SecureCRT,CentOS-6.4-x86_64-bin-DVD1.iso

redis官网:redis-3.0.0-beta1.tar.gz

ruby官网:rubygems-2.0.7.zip

rubygem官网:redis-3.0.7.gem

·下锅

1,把一些基础包装一下,后面会用到

service iptables stop

放入DVD1-

yum install –y gcc*

yum install –y ruby

yum install –y ruby-rdoc

2,装redis

tar -xvf redis-3.0.0-beta1.tar.gz

cd redis-3.0.0-beta

make

make install

ll /usr/local/bin

3,配置集群(假定 $REDIS_HOME=/root/soft/redis,就像ORACLE_HOME一样)

cd $REDIS_HOME

mkdir cluster-test

cd cluster-test

mkdir 7000 7001 7002 7003 7004 7005

vim redis.conf,修改内容如下:

port 7000 个性化

cluster-enabled yes
cluster-config-file nodes.7000.conf 个性化
cluster-node-timeout 5000
appendonly yes
appendfilename "appendonly.7000.aof" 个性化
deamonize yes
pidfile 个性化
log 个性化

cp ../redis.conf ./7000

cp ../redis.conf ./7001

cp ../redis.conf ./7002

cp ../redis.conf ./7003

cp ../redis.conf ./7004

cp ../redis.conf ./7005

cp /usr/local/bin/redis-server ./7000

cp /usr/local/bin/redis-server ./7001

cp /usr/local/bin/redis-server ./7002

cp /usr/local/bin/redis-server ./7003

cp /usr/local/bin/redis-server ./7004

cp /usr/local/bin/redis-server ./7005

/root/soft/redis/cluster-test/redis-server /root/soft/redis/cluster-test/7000/redis.conf

/root/soft/redis/cluster-test/redis-server /root/soft/redis/cluster-test/7001/redis.conf

/root/soft/redis/cluster-test/redis-server /root/soft/redis/cluster-test/7002/redis.conf

/root/soft/redis/cluster-test/redis-server /root/soft/redis/cluster-test/7003/redis.conf

/root/soft/redis/cluster-test/redis-server /root/soft/redis/cluster-test/7004/redis.conf

/root/soft/redis/cluster-test/redis-server /root/soft/redis/cluster-test/7005/redis.conf

如果需要看一看:ps –ef|grep redis

如果需要杀一杀:ps -ef|grep redis|egrep -v grep|awk -F ' ' '{print $2}'|xargs kill -9

4,配置ruby集群脚本

cd /root/soft/rubygems

ruby setup.rb

到redis-3.0.7.gem路径下

gem install -l redis(不用L的话,走ruby官网,95%被WALL,你懂得,自己改source吧)

./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7002 127.0.0.3:7003 127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7005(半路记得“yes"一下)

>>> Creating cluster
Connecting to node 127.0.0.1:7000: OK
Connecting to node 127.0.0.1:7001: OK
Connecting to node 127.0.0.1:7002: OK
Connecting to node 127.0.0.1:7003: OK
Connecting to node 127.0.0.1:7004: OK
Connecting to node 127.0.0.1:7005: OK
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
127.0.0.1:7000
127.0.0.1:7001
127.0.0.1:7002
127.0.0.1:7000 replica #1 is 127.0.0.1:7003
127.0.0.1:7001 replica #1 is 127.0.0.1:7004
127.0.0.1:7002 replica #1 is 127.0.0.1:7005
M: bc66d90ca24eb6b69a3b375a4e242fef00de2052 127.0.0.1:7000slots:0-5460 (5461 slots) master
M: bc66d90ca24eb6b69a3b375a4e242fef00de2052 127.0.0.1:7001slots:5461-10921 (5461 slots) master
M: bc66d90ca24eb6b69a3b375a4e242fef00de2052 127.0.0.1:7002slots:10922-16383 (5462 slots) master
S: bc66d90ca24eb6b69a3b375a4e242fef00de2052 127.0.0.1:7003replicates bc66d90ca24eb6b69a3b375a4e242fef00de2052
S: bc66d90ca24eb6b69a3b375a4e242fef00de2052 127.0.0.1:7004replicates bc66d90ca24eb6b69a3b375a4e242fef00de2052
S: bc66d90ca24eb6b69a3b375a4e242fef00de2052 127.0.0.1:7005replicates bc66d90ca24eb6b69a3b375a4e242fef00de2052
Can I set the above configuration? (type 'yes' to accept): yes
>>> Nodes configuration updated
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join...
>>> Performing Cluster Check (using node 127.0.0.1:7000)
M: 75bab28893c3536aecdb9879df97db89b24ce21e 127.0.0.1:7000slots:5461-10921 (5461 slots) master
M: cfc344721cad8a5ddb7a8d675eb3a4d6e5b9d1c1 127.0.0.1:7002slots:10922-16383 (5462 slots) master
M: 01b3977a3f592fd1538e8c83f86bbba37d0c1058 127.0.0.3:7003slots:0-5460 (5461 slots) master
M: df59fce238a1c538933bdc170edb27835d0b7cc7 127.0.0.1:7004slots: (0 slots) masterreplicates 01b3977a3f592fd1538e8c83f86bbba37d0c1058
M: b6bdb2d309aa7f0b810288f24e975230419f25b1 127.0.0.1:7005slots: (0 slots) masterreplicates 75bab28893c3536aecdb9879df97db89b24ce21e
M: b6bdb2d309aa7f0b810288f24e975230419f25b1 127.0.0.1:7005slots: (0 slots) masterreplicates cfc344721cad8a5ddb7a8d675eb3a4d6e5b9d1c1
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

redis-cli -c -p 7000

127.0.0.1:7000> set b c
-> Redirected to slot [3300] located at 127.0.0.1:7003
OK
127.0.0.1:7003> set hello world
OK
127.0.0.1:7003> get foo
-> Redirected to slot [12182] located at 127.0.0.1:7002
(nil)
127.0.0.1:7002> get hello
-> Redirected to slot [866] located at 127.0.0.1:7003
"world"
127.0.0.1:7003> get b
"c"
127.0.0.1:7003> 

·FAQ

*** ERROR: Invalid configuration for cluster creation.*** Redis Cluster requires at least 3 master nodes.*** This is not possible with 4 nodes and 1 replicas per node.*** At least 6 nodes are required.

·Redis官说,至少3+3,还延续着Master-Slave的设计理念,这点上个人觉得Cassandra的一致性确实了得。

Either the node already knows other nodes

·因为报错是ruby报的,不太能够理解其意思,因为我之前做了些单机压测,可能直接叠上集群会有垃圾数据,所以把/var/db/和/var/log/下能清空的都清空了。

[13321] 09 Mar 08:09:24.290 # Handshake error: we already know node bc66d90ca24eb6b69a3b375a4e242fef00de2052, updating the address if needed.

·同样道理,ruby报的错,一开始一直在join被我ctrl+c之后开始报错,用上面的方法无果。把所有app目录清空然后redis重装。大家测试时,最后事先vmware快照一下或者redis现网数据备份一下。

·OK,自己爽一下吧

转载于:https://www.cnblogs.com/zacard-orc/p/3608638.html

Redis 3.0集群搭建/配置/FAQ相关推荐

  1. Redis HA篇 +集群搭建

    说明:本文为面向Redis集群搭建的指导手册 标签:Redis集群.Redis高可用.Redis分布式.Redis 4.0.2 注意:文中删去了不需要的多余部分,让初学者一目了然一学就会 温馨提示:如 ...

  2. redis安装、持久化、数据类型、常用操作、操作键值、安全设置、慢查询日志、存储session、主从配置、集群介绍、集群搭建配置、集群操作,php安装redis扩展...

    21.9 redis介绍 21.10 redis安装 21.11 redis持久化 21.12 redis数据类型 21.13/21.14/21.15 redis常用操作 21.16 redis操作键 ...

  3. Spark2.2.0集群搭建部署之【基础配置篇】

    软件准备信息,详见Spark2.2.0集群搭建部署之[软件准备篇] Spark集群在生产环境中,主要部署在linux的集群中,所以需要先安装JDK,SCALA等基础配置. 由于Spark是计算框架,所 ...

  4. 超详细的 Redis Cluster 官方集群搭建指南

    转载自  超详细的 Redis Cluster 官方集群搭建指南 今天从 0 开始搭建 Redis Cluster 官方集群,解决搭建过程中遇到的问题,超详细. 安装ruby环境 因为官方提供的创建集 ...

  5. 【❤️万字长文总结❤️】一篇学会Redis高可用✔集群✔搭建详细教程

    大家好,我是Lex 喜欢欺负超人那个Lex 擅长领域:python开发.网络安全渗透.Windows域控Exchange架构 今日重点:今天总结一下Redis集群高可用的搭建流程 [惊喜推荐+优质资源 ...

  6. Redis 多服务器集群搭建

    Redis 多服务器集群搭建 近期,想到之前使用的Redis集群测试使用的是单服务器上的伪集群,重温<Redis深度历险-核心原理与应用实践>的案例,觉得还是搭建一下多服务器集群来玩一玩会 ...

  7. redis5.0集群搭建(两台服务器)

    redis5.0集群搭建(两台服务器) 用两台虚拟机模拟6个节点,一台机器3个节点,创建出3 master.3 salve 环境. redis 采用 redis-5.0.2 版本. 两台虚拟机都是 C ...

  8. Spark-1.4.0集群搭建

    主要内容 Ubuntu 10.04 系统设置 ZooKeeper集群搭建 Hadoop-2.4.1集群搭建 Spark 1.4.0集群搭建 假设已经安装好Ubuntu操作系统 Ubuntu 10.04 ...

  9. hadoop-3.0.0集群搭建

    2019独角兽企业重金招聘Python工程师标准>>> hadoop-3.0.0集群搭建 下载hadoop包 wget -c http://ftp.jaist.ac.jp/pub/a ...

最新文章

  1. 如何创建最简单的 SAP Kyma Function
  2. Centos7下使用ELK(Elasticsearch + Logstash + Kibana)搭建日志集中分析平台
  3. 准备了2个月零21天,面试字节跳动挂在了第三面JVM上
  4. 最近见了几位东半球的顶级技术大拿
  5. 深度学习笔记(47) 神经风格迁移
  6. python 集合(set)
  7. React动画实现原理
  8. Android -- Layout布局文件里的android:layout_height等属性为什么会不起作用?
  9. Java面试必看的18个开源项目
  10. 谈谈我对Ui设计师的一些观点
  11. 一文告诉你16条微信小程序推广渠道大全
  12. 获取163邮箱的邮件 并下载附件
  13. Erlang开源20周年:这门编程语言见证了互联网的技术成长
  14. 怎么样把聊天记录彻底删除?
  15. Android手机的USB
  16. 血与荣耀(第一章-激战)
  17. 《第一行代码》中遇到的问题
  18. 这些年我用过的 6个API 接口文档平台,真的好用
  19. 最新php代码iP授权,网站授权加密源码授权源码PHP源码加密授权验证全新自带加密功能,域名+IP+时间...
  20. 计算机电子教室发展趋势,探究“电子教室”在信息技术课堂教学中应用的利与弊.doc...

热门文章

  1. STM32移植到GD32的问题---20170923
  2. 【JAVA程序设计】(C00073)基于SSH(非maven)便利店管理系统-有文档
  3. 如何通过数据分析,提升游戏次日留存
  4. 【Microsoft Office】Office365 MAC版Word显示导航窗格
  5. 轮回dj 佛教音乐_童音watmp3.com
  6. python红楼梦人物词频统计_用Python绘制红楼梦词云图,竟然发现了这个!
  7. 【王道考研】操作系统 笔记 第二章上 进程调度
  8. 介绍一个成功的 Git 分支模型——终于知道如何管理git分支了(好文章!!强烈建议看本文的英文原文)
  9. iOS UITextView调整行间距
  10. qq手机浏览器不支持HTML5,手机QQ浏览器:响应HTML5未来 着眼当下