百度上坑太多,如果你遇到搭建redis集群的时候出现这个错误在百度上找到解决办法基本上都是坑。
首先集群搭建完成后,你肯定去登陆redis进行测试
1.redis01/redis-cli -h "xxx.xxx.xxx.xxx" -p 8001 -c
登陆进去测试
xxx.xxx.xxx.xxx>set test aaa
报错(error) CLUSTERDOWN Hash slot not served
重点:
没有分配槽,因为redis集群要分配16384个槽来储存数据,那么没有分配槽则报如上错误
什么原因呢?
99%的原因是最后使用ruby来搭建集群的时候纯手贱错误操作
./redis-trib.rb create --replicas 1 xxx.xxx.xxx.xxx:8001 xxx.xxx.xxx.xxx:8002 xxx.xxx.xxx.xxx:8003 xxx.xxx.xxx.xxx:8004 xxx.xxx.xxx.xxx:8005 xxx.xxx.xxx.xxx:8006
上面执行完时会出现提示
Can I set the above configuration? (type 'yes' to accept):
你需要输入yes,而并非缩写 y,因为玩linux的都习惯的会输入 y,但是这里不行,要全拼yes才可以。
就是这个错误引起的分配槽失败。
希望能解决您的错误