redis集群配置

1.在服务器上安装redis

https://www.cnblogs.com/9080dlb/p/15712625.html

准备6台服务器

2.配置文件修改

cluster-enabled yes #在1386行 开启集群模式
#每个集群节点都有一个集群配置文件。此文件不打算手工编辑。
#每个Redis集群节点都需要一个不同的集群配置文件。确保在同一系统中运行的实例没有重叠的集群配置文件名 cluster
-config-file nodes-6379.conf
#集群节点超时是节点必须不可达的毫秒数,节点才会被认为处于故障状态。
#大多数其他内部时间限制都是节点超时的倍数 cluster
-node-timeout 15000

 修改完成后启动

3.节点文件

 还可以登录客户端查看

127.0.0.1:6379> cluster nodes
94c619b0e6ad58ea9579d61eb21eadee57e6b162 :6379@16379 myself,master - 0 0 0 connected 1075 5474 12473

redis从5开始就可以直接用redis-cli命令创建集群了!不用安装ruby(我都不知道这是啥,百度全是这玩意)

4.创建集群

注意:需要先开启集群端口16379 ,不然执行下面的操作会出现Waiting for the cluster to join....一直等待

6个服务器的redis启动完毕后在任意一台服务器上执行

[root@dlb bin]# redis-cli --cluster create x.xx.xx.x:6379 ...(共6个) --cluster-replicas 1

踩坑点:

刚执行完,可能报错点1:

  [ERR] Node x.xx.xx.xx:6379 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.

解决:删除dump.rdb文件和nodes.conf这个两个文件!重启redis就OK了

可能报错2:

  Could not connect to Redis at xx.xx.xx.xx:6379: No route to host

解决:可能是防火墙,服务器端口没开,再或者装了宝塔等服务器软件给关闭着

 

所有槽都已经分配到了节点中

 

 

 在此时发现可以正常的存取值了

 

 

 查询集群节点状态

47.101.147.243:6379> cluster nodes

 

posted @ 2021-12-24 23:08  大萝卜萌萌哒  阅读(927)  评论(0编辑  收藏  举报