redis 集群启动报错:
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
/opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis/client.rb:121:in `call': ERR Invalid node address specified: node-200:7200 (Redis::CommandError)
from /opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis.rb:2700:in `block in method_missing'
from /opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis.rb:58:in `block in synchronize'
from /opt/ruby/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
from /opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis.rb:58:in `synchronize'
from /opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis.rb:2699:in `method_missing'
from src/redis-trib.rb:811:in `block in join_cluster'
from src/redis-trib.rb:809:in `each'
from src/redis-trib.rb:809:in `join_cluster'
from src/redis-trib.rb:1301:in `create_cluster_cmd'
from src/redis-trib.rb:1700:in `
报错原因redis 集群启动使用ip端口形式, 使用域名支持不好。
/opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis/client.rb:121:in `call': ERR Slot 0 is already busy (Redis::CommandError)
from /opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis.rb:2700:in `block in method_missing'
from /opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis.rb:58:in `block in synchronize'
from /opt/ruby/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
from /opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis.rb:58:in `synchronize'
from /opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis.rb:2699:in `method_missing'
from src/redis-trib.rb:212:in `flush_node_config'
from src/redis-trib.rb:776:in `block in flush_nodes_config'
from src/redis-trib.rb:775:in `each'
from src/redis-trib.rb:775:in `flush_nodes_config'
from src/redis-trib.rb:1296:in `create_cluster_cmd'
from src/redis-trib.rb:1700:in `
这是由于上一次配置集群失败时留下的配置信息导致的。 只要把redis.conf中定义的 cluster-config-file 所在的文件删除,重新启动redis-server及运行redis-trib即可。