详细可以参看《redis官网文档》或者《redis中文网》,按照步骤操作就可以了
mkdir cluster-test cd cluster-test/ mkdir 7000 7001 7002 7003 7004 7005
按照如下配置修改redis.conf,并放入对应的目录中
//默认ip为127.0.0.1 直接注释掉 配置文件56行 bind 127.0.0.1 //端口7000,7002,7003 配置文件92行 port 7000 // daemonize 的参数为yes,表示后台运行 配置文件136行 daemonize yes //pidfile文件对应7000,7001,7002 我是一台虚拟机创建6个redis实例,所以需要改配置文件,配置文件158行 pidfile /var/run/redis_7000.pid //aof日志开启,默认是no 有需要就开启,它会每次写操作都记录一条日志 配置文件672行 appendonly yes //开启集群 把注释#去掉 配置文件814行 cluster-enabled yes //集群的配置 配置文件首次启动自动生成 7000,7001,7002 配置文件822行 cluster-config-file nodes_7000.conf //请求超时 默认15秒,可自行设置 配置文件828行 cluster-node-timeout 15000
./redis-server cluster-test/7000/redis.conf ./redis-server cluster-test/7001/redis.conf ./redis-server cluster-test/7002/redis.conf ./redis-server cluster-test/7003/redis.conf ./redis-server cluster-test/7004/redis.conf ./redis-server cluster-test/7005/redis.conf
查看redis启动的进程
ps -ef|grep redis
现在我们已经有了六个正在运行中的 Redis 实例, 接下来我们需要使用这些实例来创建集群, 并为每个节点编写配置文件。
通过使用 Redis 集群命令行工具 redis-trib , 编写节点配置文件的工作可以非常容易地完成: redis-trib 位于 Redis 源码的 src 文件夹中, 它是一个 Ruby 程序, 这个程序通过向实例发送特殊命令来完成创建新集群, 检查集群, 或者对集群进行重新分片(reshared)等工作。
首先进入redis的tar包解压的目录(我的是在/opt/redis-4.0.10/src下)
cd /opt/redis-4.0.10/src
./redis-trib.rb create --replicas 1 127.0.0.1:7000 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
这个命令在这里用于创建一个新的集群, 选项–replicas 1 表示我们希望为集群中的每个主节点创建一个从节点。之后跟着的其他参数则是这个集群实例的地址列表,3个master3个slave redis-trib 会打印出一份预想中的配置给你看, 如果你觉得没问题的话, 就可以输入 yes , redis-trib 就会将这份配置应用到集群当中,让各个节点开始互相通讯,最后可以得到如下信息:
输入yes 成功后,如下所示
另外,如果执行命令的时候报错;这个工具是用 ruby 实现的,所以需要安装 ruby
yum -y install ruby ruby-devel rubygems rpm-build
再执行
gem install redis
如果执行gem install redis出错,可以参看《执行gem install redis时提示redis requires Ruby version >= 2.2.2.错误解决方法》
可以看到,set的时候,会把参数塞到不同的槽位上(节点上)