创建集群配置文件redis-cluster-7000.conf,端口7000
port 7000 //端口7000,7002,7003
daemonize yes //redis后台运行
pidfile /user/local/redis/redis/redis-7000-cluster.pid
logfile "7005-cluster.log"
bind 0.0.0.0 //(此处为自己内网的ip地址,centos7下面采用ip addr来查看,其他系统试一下ifconfig查看,ip为)
dir /usr/local/redis/redis/data/cluster //修改数据文件存放地址,以端口号为目录名来区分(这点一定要注意)
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file 7000-cluster.conf //集群的配置 配置文件首次启动自动生成 7000,7001,7002
cluster-node-timeout 5000 //请求超时 设置5秒够了
appendonly yes //aof日志开启 有需要就开启,它会每次写操作都记录一条日志
同理创建
- redis-cluster-7001.conf
- redis-cluster-7002.conf
- redis-cluster-7003.conf
- redis-cluster-7004.conf
- redis-cluster-7005.conf
把redis-cluster-7000.conf文件中“7000”替换为相应的端口。
redis5以上安装集群比较简单,不需要再使用 redis-trib脚本,因为运行 redis-trib脚本必须要安装redis gem。只需要利用redis-cli执行以下命令就可以创建集群。
# 如果是在云服务器上部署,如果需要外网访问把127.0.0.1改为你自己云服务器的外网ip
redis-cli --cluster create 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 --cluster-replicas 1
期间会询问你是否使用上述配置,输入yes即可。如果出现一直卡在“Waiting for the cluster to join”,需要把与服务器上集群总线端口打开(客户端连接的端口 + 10000),例如客户端端口7000,则总线端口17000。
最后看到所有的slot成功分配。
./redis-cli -p 7000 -c
可以看到成功转型set命令,并且请求被重定向到7001机器