Redis集群的搭建

来源:互联网 发布:撒贝宁智商知乎 编辑:程序博客网 时间:2024/06/05 19:11

首先说明的是:由于我的没有那么多的机器,并且机器的内存也不大,所以我是在一台虚拟机上创建6个redis实例来模拟集群。同时我使用的是redis3.0.0版本,刚开始使用的是redis-3.2.8,由于这个版本在启动的时候默认是有保护模式的,所以在物理机上连接的时候总是连接不上,所以果断换了跟视频一样的3.0.0版本,果然这个版本的就可以连接的时候不要auth。
一、创建6个redis实例
在这里我先创建了一个文件夹来存放这六个实例。

mkdir redis-cluster

这个操作其实就是将单机版的redis复制6份,然后修改每个文件中的redis.conf文件,端口分别是7001~7006这里写图片描述
这里写图片描述
二、把创建集群的ruby脚本复制到redis-cluster目录下。
将redis的src目录下的redis-trib.rb复制到redis-cluster目录下
三、启动6个redis实例
分别启动六个实例

./redis1/redis-cli -h 192.168.30.4 -p 7001 -c

注意:这里的-c参数,如果启动的时候会报(error) MOVED 9189 192.168.30.4:7002
四、创建集群。

./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

[root@bogon 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 clusterConnecting to node 192.168.25.153:7001: OKConnecting to node 192.168.25.153:7002: OKConnecting to node 192.168.25.153:7003: OKConnecting to node 192.168.25.153:7004: OKConnecting to node 192.168.25.153:7005: OKConnecting to node 192.168.25.153:7006: OK>>> Performing hash slots allocation on 6 nodes...Using 3 masters:192.168.25.153:7001192.168.25.153:7002192.168.25.153:7003Adding replica 192.168.25.153:7004 to 192.168.25.153:7001Adding replica 192.168.25.153:7005 to 192.168.25.153:7002Adding replica 192.168.25.153:7006 to 192.168.25.153:7003M: 5a8523db7e12ca600dc82901ced06741b3010076 192.168.25.153:7001   slots:0-5460 (5461 slots) masterM: bf6f0929044db485dea9b565bb51e0c917d20a53 192.168.25.153:7002   slots:5461-10922 (5462 slots) masterM: c5e334dc4a53f655cb98fa3c3bdef8a808a693ca 192.168.25.153:7003   slots:10923-16383 (5461 slots) masterS: 2a61b87b49e5b1c84092918fa2467dd70fec115f 192.168.25.153:7004   replicates 5a8523db7e12ca600dc82901ced06741b3010076S: 14848b8c813766387cfd77229bd2d1ffd6ac8d65 192.168.25.153:7005   replicates bf6f0929044db485dea9b565bb51e0c917d20a53S: 3192cbe437fe67bbde9062f59d5a77dabcd0d632 192.168.25.153:7006   replicates c5e334dc4a53f655cb98fa3c3bdef8a808a693caCan 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 clusterWaiting for the cluster to join.....>>> Performing Cluster Check (using node 192.168.25.153:7001)M: 5a8523db7e12ca600dc82901ced06741b3010076 192.168.25.153:7001   slots:0-5460 (5461 slots) masterM: bf6f0929044db485dea9b565bb51e0c917d20a53 192.168.25.153:7002   slots:5461-10922 (5462 slots) masterM: c5e334dc4a53f655cb98fa3c3bdef8a808a693ca 192.168.25.153:7003   slots:10923-16383 (5461 slots) masterM: 2a61b87b49e5b1c84092918fa2467dd70fec115f 192.168.25.153:7004   slots: (0 slots) master   replicates 5a8523db7e12ca600dc82901ced06741b3010076M: 14848b8c813766387cfd77229bd2d1ffd6ac8d65 192.168.25.153:7005   slots: (0 slots) master   replicates bf6f0929044db485dea9b565bb51e0c917d20a53M: 3192cbe437fe67bbde9062f59d5a77dabcd0d632 192.168.25.153:7006   slots: (0 slots) master   replicates c5e334dc4a53f655cb98fa3c3bdef8a808a693ca[OK] All nodes agree about slots configuration.>>> Check for open slots...>>> Check slots coverage...[OK] All 16384 slots covered.

五、测试
连接到7001

./redis1/redis-cli -h 192.168.30.4 -p 7001 -c

获取值key1(前提是你已经有key1,否则取到的值为nil)
出现如下代码,那你已经成功搭建了redis集群。

 Redirected to slot [9189] located at 192.168.30.4:7002"1000"

——记录自己第一次搭建redis集群

0 0
原创粉丝点击