我的服务器上有安装redis,是通过yum方式安装的。现在需要搭建一个集群。先弄个伪集群试试(在一台服务器上安装整个集群,正常情况是一台服务器安装一个节点)。

1、通过where/which找到安装好的redis,如果找不到,就使用ps -ef|grep redis
得到Pid xxxx
然后 ls -l /proc/xxxx/cwd。

redis benchmark安装_redis benchmark安装

redis benchmark安装_redis benchmark安装_02

2、 通常我们进入/usr/local/redis/bin目录,直接./redis-server启动redis(此时为前端启动redis);将redis启动方式改为后端启动,通过./redis-server redis.conf启动redis,具体做法:修改该redis.conf文件->daemonize:no 改为daemonize:yse;

3、在/usr/local下创建redis-cluster文件夹,并将redis的bin目录下的所有内容拷贝六份放在该目录下。cp -r redis/bin/ redis-cluster/redis01

redis benchmark安装_服务器_03

4、修改各个redisxx下的redis.conf文件,如下:【我其实是拷贝了一份redis的bin目录,按如下修改后,又拷贝了五份redis01,之后的就修改端口和日志文件路径就好了】

  1. daemonize yes #后台启动
  2. port 6001 #修改端口号,从6001到6006
  3. cluster-enabled yes #开启cluster,去掉注释
  4. cluster-config-file nodes.conf # 节点配置文件,指的就是redis.conf文件,好像是不能重名,应为我的文件原先都是 nodes-6379.conf,只能启动三个redis节点
  5. cluster-node-timeout 15000
  6. appendonly yes #开启aof
  7. logfile /usr/local/redis-cluster/redis05/redis.log  #日志文件的路径必须是绝对路径,我开始用的./redis.log,一直不输出启动日志

5、通过./redis-server redis.conf将各个redis启动

redis benchmark安装_ruby_04

6、安装ruby环境  yum install ruby     yum install rubygems       如果不能链接外网,可以点此链接下载

7、复制redis解压文件src下的redis-trib.rb文件到redis-cluster目录

中的脚本是

#!/bin/bash
cd redis01
./redis-server redis.conf
cd ..
cd redis02
./redis-server redis.conf
cd ..
cd redis03
./redis-server redis.conf
cd ..
cd redis04
./redis-server redis.conf
cd ..
cd redis05
./redis-server redis.conf
cd ..
cd redis06
./redis-server redis.conf

8、安装redis-3.0.0.gem,这个文件需要下载后上传到服务器,然后执行     gem install redis-3.0.0.gem      下载地址

redis benchmark安装_ruby_05

9、创建集群  ./redis-trib.rb create --replicas 1 192.168.0.39:6001 192.168.0.39:6002 192.168.0.39:6003 192.168.0.39:6004 192.168.0.39:6005 192.168.0.39:6006【注意自己服务器的ip地址,中途有个地方需要手动输入yes即可,使用create命令 --replicas 1 参数表示为每个主节点创建一个从节点,其他参数是实例的地址集合.】 

redis benchmark安装_redis benchmark安装_06

 10、最后连接集群节点,连接任意一个即可:redis01/redis-cli -p 7001 -c  注意:一定要加上-c,不然节点之间是无法自动跳转的!如下图可以看到,存储的数据(key-value)是均匀分配到不同的节点的。

redis benchmark安装_redis benchmark安装_07

 

11、安装结束。几个常用的命令

1.查看当前集群信息:cluster info

2.查看集群里有多少个节点:cluster nodes