按照redis 官网文档配置redis 集群
环境介绍:
1. 系统mac ,
2. redis 5.0 (通过 brew 安装) .
准备工作
1. 创建几个redis 实例
在 /usr/local/src 下创建以下redis 配置文件
/usr/local/src/redis/cluster/7000/7000.conf
/usr/local/src/redis/cluster/7001/7001.conf
/usr/local/src/redis/cluster/7002/7002.conf
/usr/local/src/redis/cluster/7003/7003.conf
/usr/local/src/redis/cluster/7004/7004.conf
/usr/local/src/redis/cluster/7005/7005.conf
文件路径 src/redis/cluster/700X/ 需要自己去创建。命令:mkdir -p path 。 path 为路径
最简单的集群需要三个redis实例,7000,7001,7002, 7003-7005为备份,实现主从复制。
2. 配置每个实例.
在每个700x.conf配置文件中,只写入以下内容即可(不要直接复制redis的redis.conf ,里面很多的配置用不到)
port 700X
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
port 700X , 是哪个文件夹,就用哪个文件夹的名字, 例 /usr/local/src/redis/cluster/7000/7000.conf 中 port 就是 7000. 这样命名就是好记,没别的含义,你可以随便整。
3. 下载redis-trib.rb
请看以下官方说明,需要我们使用redis-trib.rb 这个ruby 程序。
先来安装ruby. brew install ruby
安装完了,再来安装ruby 的redis 模块 。 sudo gem install redis .
redis-trib.rb 要从github上redis 源码中下载, redis-trib.rb 放在 src 中。
直接从github上下载下来, 放入 /usr/local/src/ 中
5. 启动实例
进入每个redis实例的配置文件的文件夹中,我就只写一个做示范了
上面我们创建了6个实例, 进入文件夹/usr/local/src/redis/cluster/7000 , 执行 redis-server 7000.conf
6. 一条命令搭建集群
官网
我们进入到刚才从github上下载的redis 源码中的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
此时发现报错了, 报错如下:
别担心,只是换了个写法,而且人家已经把正确的告诉你了, 请看截图中 example, 让我们用 redis-cli ,那我们试试
成功,没有问题。 下面我就发个最终截图,内包含所有的redis 实例和集群搭建执行结果。