配置redis 集群

redis  集群搭建环境

1、使用ruby脚本搭建集群。需要ruby的运行环境。

安装ruby:

yum install ruby

yum install rubygems

2、上传redis-3.0.0.gem到 linux中
image.png
image.png
3、安装ruby运行时所使用的包

[root@localhost ~]# gem install redis-3.0.0.gem

Successfully installed redis-3.0.0

1 gem installed

Installing ri documentation for redis-3.0.0...

Installing RDoc documentation for redis-3.0.0...

[root@localhost ~]#

查看redis-trib.rb 脚本所在的目录:

[root@localhost ~]# cd redis-3.0.0/src

[root@localhost src]# ll *.rb

-rwxrwxr-x. 1 root root 48141 Apr  1  2015  redis-trib.rb

7.2.2. 搭建步骤

需要6台redis服务器。搭建伪分布式。

需要6个redis实例。彻底

需要运行在不同的端口7001-7006

使用之前搭建好的redis实例 。

注意:搭建前 如果节点里有数据,需要删除(rdb文件,aof文件)。

第一步:创建6个redis实例,每个实例运行在不同的端口。需要修改redis.conf配置文件。配置文件中还需要把cluster-enabled yes前的注释去掉。

Ø 创建目录:

<colgroup><col width="568"></colgroup>
| 

[root@localhost local]# mkdir redis-cluster

 |

Ø copy 之前搭建好的redis 并改名为redis01

<colgroup><col width="568"></colgroup>
| 

[root@localhost local]# cp redis/ redis-cluster/redis01 -r

 |

Ø 进入redis-cluster目录中cd到redis01的bin目录,删除数据文件

<colgroup><col width="568"></colgroup>
| 

[root@localhost local]# cd redis-cluster/redis01/bin

[root@localhost bin]# rm -rf *.rdb *.aof

 |

Ø 修改redis.conf,取消注释,如图

<colgroup><col width="568"></colgroup>
| 

[root@localhost bin]# vim redis.conf

 |

按ESC    :wq  

保存退出。

Ø cd到redis-cluster目录

Ø copy六份并分别命名为redis02,redis03,redis04,redis05,redis06

<colgroup><col width="568"></colgroup>
| 

[root@localhost redis-cluster]# cp redis01 redis02 -r

[root@localhost redis-cluster]# cp redis01 redis03 -r

[root@localhost redis-cluster]# cp redis01 redis04 -r

[root@localhost redis-cluster]# cp redis01 redis05 -r

[root@localhost redis-cluster]# cp redis01 redis06 -r

 |

Ø cd到每一个实例的bin目录,修改每一个redis实例的端口分别改为7001-7006

<colgroup><col width="568"></colgroup>

|
image.png

[root@localhost bin]# vim redis.conf

 |
image.png

第二步:启动每个redis实例。

vim  redis-cluster-start-all.sh

添加如下文字到文件中:

<colgroup><col width="568"></colgroup>
| 

cd /usr/local/redis-cluster/redis01/bin

./redis-server redis.conf

cd /usr/local/redis-cluster/redis02/bin

./redis-server redis.conf

cd /usr/local/redis-cluster/redis03/bin

./redis-server redis.conf

cd /usr/local/redis-cluster/redis04/bin

./redis-server redis.conf

cd /usr/local/redis-cluster/redis05/bin

./redis-server redis.conf

cd /usr/local/redis-cluster/redis06/bin

./redis-server redis.conf

 |

Ø 修改文件:redis-cluster-start-all.sh 的权限,让其可执行。

<colgroup><col width="568"></colgroup>
| 

chmod u+x redis-cluster-start-all.sh

 |

Ø 执行启动

[root@localhost redis-cluster]# ./redis-cluster-start-all.sh

第三步:使用ruby脚本搭建集群。

Ø 从解压目录下的src下的拷贝redis-trib.rb文件到redis-cluster目录中
image.png

Ø 执行创建:

<colgroup><col width="568"></colgroup>
| 

./redis-trib.rb create --replicas 1 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005  127.0.0.1:7006

 |

<colgroup><col width="568"></colgroup>
| 

[root@localhost redis-cluster]# ./redis-trib.rb create --replicas 1 192.168.25.153:7001 192.168.25.153:7002 192.168.25.153:7003 192.168.25.153:7004 192.168.25.153:7005  192.168.25.153:7006

>>> Creating cluster

Connecting to node 192.168.25.153:7001: OK

Connecting to node 192.168.25.153:7002: OK

Connecting to node 192.168.25.153:7003: OK

Connecting to node 192.168.25.153:7004: OK

Connecting to node 192.168.25.153:7005: OK

Connecting to node 192.168.25.153:7006: OK

>>> Performing hash slots allocation on 6 nodes...

Using 3 masters:

192.168.25.153:7001

192.168.25.153:7002

192.168.25.153:7003

Adding replica 192.168.25.153:7004 to 192.168.25.153:7001

Adding replica 192.168.25.153:7005 to 192.168.25.153:7002

Adding replica 192.168.25.153:7006 to 192.168.25.153:7003

M: 2e48ae301e9c32b04a7d4d92e15e98e78de8c1f3 192.168.25.153:7001

   slots:0-5460 (5461 slots) master

M: 8cd93a9a943b4ef851af6a03edd699a6061ace01 192.168.25.153:7002

   slots:5461-10922 (5462 slots) master

M: 2935007902d83f20b1253d7f43dae32aab9744e6 192.168.25.153:7003

   slots:10923-16383 (5461 slots) master

S: 74f9d9706f848471583929fc8bbde3c8e99e211b 192.168.25.153:7004

   replicates 2e48ae301e9c32b04a7d4d92e15e98e78de8c1f3

S: 42cc9e25ebb19dda92591364c1df4b3a518b795b 192.168.25.153:7005

   replicates 8cd93a9a943b4ef851af6a03edd699a6061ace01

S: 8b1b11d509d29659c2831e7a9f6469c060dfcd39 192.168.25.153:7006

   replicates 2935007902d83f20b1253d7f43dae32aab9744e6

Can I set the above configuration? (type 'yes' to accept): 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.25.153:7001)

M: 2e48ae301e9c32b04a7d4d92e15e98e78de8c1f3 192.168.25.153:7001

   slots:0-5460 (5461 slots) master

M: 8cd93a9a943b4ef851af6a03edd699a6061ace01 192.168.25.153:7002

   slots:5461-10922 (5462 slots) master

M: 2935007902d83f20b1253d7f43dae32aab9744e6 192.168.25.153:7003

   slots:10923-16383 (5461 slots) master

M: 74f9d9706f848471583929fc8bbde3c8e99e211b 192.168.25.153:7004

   slots: (0 slots) master

   replicates 2e48ae301e9c32b04a7d4d92e15e98e78de8c1f3

M: 42cc9e25ebb19dda92591364c1df4b3a518b795b 192.168.25.153:7005

   slots: (0 slots) master

   replicates 8cd93a9a943b4ef851af6a03edd699a6061ace01

M: 8b1b11d509d29659c2831e7a9f6469c060dfcd39 192.168.25.153:7006

   slots: (0 slots) master

   replicates 2935007902d83f20b1253d7f43dae32aab9744e6

[OK] All nodes agree about slots configuration.

>>> Check for open slots...

>>> Check slots coverage...

[OK] All 16384 slots covered.

[root@localhost redis-cluster]#

 |

第四步 创建关闭集群的脚本:(不是必须的)

首先使用:vim 命令创建一个文件 redis-cluster-stop-all.sh

编辑文件,添加如下:

<colgroup><col width="568"></colgroup>
| 

cd /usr/local/redis-cluster/redis01/bin

./redis-cli -p 7001 shutdown

cd /usr/local/redis-cluster/redis02/bin

./redis-cli -p 7002 shutdown

cd /usr/local/redis-cluster/redis03/bin

./redis-cli -p 7003 shutdown

cd /usr/local/redis-cluster/redis04/bin

./redis-cli -p 7004 shutdown

cd /usr/local/redis-cluster/redis05/bin

./redis-cli -p 7005 shutdown

cd /usr/local/redis-cluster/redis06/bin

./redis-cli -p 7006 shutdown

 |

修改文件:redis-cluster-stop-all.sh 的权限,让其可执行。

chmod u+x redis-cluster-stop-all.sh
image.png

7.3. 集群的使用方法

Redis-cli连接集群。

[root@localhost redis-cluster]# redis01/bin/redis-cli -p 7002 -c

-c:代表连接的是redis集群

使用命令操作redis是和单机版的一样。

下面是我操作的命令截图

 yum install ruby
 yum install rubygems
tar -xvf redis-3.2.12.tar.gz 

开启集群 cd /usr/local/redis-cluster/redis01
redis-server ./redis.conf

cd /usr/local/redis-cluster/redis02
redis-server ./redis.conf

cd /usr/local/redis-cluster/redis03
redis-server ./redis.conf

cd /usr/local/redis-cluster/redis04
redis-server ./redis.conf

cd /usr/local/redis-cluster/redis05
redis-server ./redis.conf

cd /usr/local/redis-cluster/redis06
redis-server ./redis.conf

进入集群  redis-cli -p 7001 -c    重点:集群一定加-c

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,298评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,701评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,078评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,687评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,018评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,410评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,729评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,412评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,124评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,379评论 2 242
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,903评论 1 257
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,268评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,894评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,014评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,770评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,435评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,312评论 2 260

推荐阅读更多精彩内容