jedis连接redis集群报错,求解,急!

qq_29073193 2017-06-03 02:11:44
我的jedis代码
/**客户端连接redis集群*/
@Test
public void testJedisCluster() throws Exception{
//创建一个JedisCluster对象,构造参数Set类型,每个集合中每个元素是HostAndPort类型
Set<HostAndPort> nodes = new HashSet<>();
JedisCluster jedisCluster = new JedisCluster(nodes);
//向集合中添加节点
nodes.add(new HostAndPort("192.168.25.128", 7001));
nodes.add(new HostAndPort("192.168.25.128", 7002));
nodes.add(new HostAndPort("192.168.25.128", 7003));
nodes.add(new HostAndPort("192.168.25.128", 7004));
nodes.add(new HostAndPort("192.168.25.128", 7005));
nodes.add(new HostAndPort("192.168.25.128", 7006));
//直接使用JedisCluster来操作redis,自带连接池。JedisCluster可以是单例的
jedisCluster.set("cluster-test", "Hello redisCluster");//设值key-value值
String result = jedisCluster.get("cluster-test");
System.out.println(result);
//系统关闭前关闭JedisCluster
jedisCluster.close();
}

报错JedisConnectionException: no reachable node is cluster
...全文
4309 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
喜氏天狼 2018-07-18
  • 打赏
  • 举报
回复
同意5L,你代码顺序写错了。你的nodes加到jedis里面的时候,node都没有添加进去,还是空的,当然会报找不到。你把node设置完之后再new JedisCluster就行了。
枯心人 2018-07-10
  • 打赏
  • 举报
回复
有可能你的集群没有设置对外的端口,所以你连接不上
liuxing9345 2018-06-30
  • 打赏
  • 举报
回复
你这个是不是防火墙的问题?你再启动一台Linux虚拟机,在新启动的虚拟机里面使用redis-cli连接redis集群,如果能连上说明集群环境没问题,那就不好说了。我估计你用另一台linux虚拟机应该连不上集群,防火墙没关闭的问题
澜月 2018-04-13
  • 打赏
  • 举报
回复
应该是服务器集群设置错了 代码暂时没看出问题
DragonFreedom 2018-03-11
  • 打赏
  • 举报
回复
有可能是这个问题 protected-mode no,吧redis.conf里的这个值设置为no
super就是我 2017-11-29
  • 打赏
  • 举报
回复
为什么不用Spring Data Redis?人家Spring有一套的
  • 打赏
  • 举报
回复
我的jedis代码 /**客户端连接redis集群*/ @Test public void testJedisCluster() throws Exception{ //创建一个JedisCluster对象,构造参数Set类型,每个集合中每个元素是HostAndPort类型 Set<HostAndPort> nodes = new HashSet<>(); JedisCluster jedisCluster = new JedisCluster(nodes); //向集合中添加节点 nodes.add(new HostAndPort("192.168.25.128", 7001)); nodes.add(new HostAndPort("192.168.25.128", 7002)); nodes.add(new HostAndPort("192.168.25.128", 7003)); nodes.add(new HostAndPort("192.168.25.128", 7004)); nodes.add(new HostAndPort("192.168.25.128", 7005)); nodes.add(new HostAndPort("192.168.25.128", 7006)); //直接使用JedisCluster来操作redis,自带连接池。JedisCluster可以是单例的 jedisCluster.set("cluster-test", "Hello redisCluster");//设值key-value值 String result = jedisCluster.get("cluster-test"); System.out.println(result); //系统关闭前关闭JedisCluster jedisCluster.close(); }
岁月静静好 2017-11-21
  • 打赏
  • 举报
回复
同意5楼说法
辛水 2017-10-23
  • 打赏
  • 举报
回复
检查一下防火墙是否没关
wangsh36 2017-10-20
  • 打赏
  • 举报
回复
代码顺序错了 这样写试试 Set<HostAndPort> nodes = new HashSet<>(); //向集合中添加节点 nodes.add(new HostAndPort("192.168.25.128", 7001)); nodes.add(new HostAndPort("192.168.25.128", 7002)); nodes.add(new HostAndPort("192.168.25.128", 7003)); nodes.add(new HostAndPort("192.168.25.128", 7004)); nodes.add(new HostAndPort("192.168.25.128", 7005)); nodes.add(new HostAndPort("192.168.25.128", 7006)); JedisCluster jedisCluster = new JedisCluster(nodes);
jun1210 2017-06-16
  • 打赏
  • 举报
回复
检查下集群设置
「已注销」 2017-06-13
  • 打赏
  • 举报
回复
redis集群可用吗,先在命令行测试一下redis-cli
Hansy Chen 2017-06-08
  • 打赏
  • 举报
回复
连接不上jedis集群。检查一下jedis集群是否启动正常
qq_29073193 2017-06-03
  • 打赏
  • 举报
回复

25,985

社区成员

发帖
与我相关
我的任务
社区描述
高性能WEB开发
社区管理员
  • 高性能WEB开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧