需求:还是redis-trib.rb脚本获取的信息不足或者太繁杂,这里给出更加直观的一种方法,

说明:已在4.x版本测试通过,3.x不可用。

原生的输出

[redis@lxd-vm3 redis]$ redis-trib.rb info 5.5.5.101:29001
5.5.5.101:29001 (1adfa7f3...) -> 2599 keys | 4596 slots | 1 slaves.
5.5.5.101:29004 (32fc101a...) -> 4181 keys | 3595 slots | 1 slaves.
5.5.5.102:29002 (76a8592d...) -> 5041 keys | 4096 slots | 1 slaves.
5.5.5.103:29003 (31ba5414...) -> 5011 keys | 4097 slots | 1 slaves.
[OK] 16832 keys in 4 masters.
1.03 keys per slot on average.
[redis@lxd-vm3 redis]$ redis-cli -h 5.5.5.101 -p 29001 -c -a abc123 cluster nodes
6178b88137d2dd621f5445f13faa9936b300333a 5.5.5.102:29004@39004 slave 32fc101a2920c98f279a31292ace9ff3aeaa35a3 0 1544694513000 16 connected
32fc101a2920c98f279a31292ace9ff3aeaa35a3 5.5.5.101:29004@39004 master - 0 1544694515000 16 connected 824-1382 2200-2499 3001 5462-6828 10923-12290
c27b170791473946085c85c6fa7c163b24efe6e0 5.5.5.102:29001@39001 slave 1adfa7f3e80c47d5bd3072e9d07c1b2bcc8ef4a1 0 1544694514000 24 connected
cb88f415e0dc61616e1ed861a00aa8416dd6dd3f 5.5.5.101:29003@39003 slave 31ba5414196da8b6ed8e0640472d3870d5f6f591 0 1544694515665 20 connected
76a8592df53de4d45fb66fa8e48ef9fb0991ae14 5.5.5.102:29002@39002 master - 0 1544694514000 27 connected 821-823 1383-2199 7647-10922
1adfa7f3e80c47d5bd3072e9d07c1b2bcc8ef4a1 5.5.5.101:29001@39001 myself,master - 0 1544694513000 24 connected 2500-3000 3002-3299 3301-5461 6829-7646 12291-13108
723bfff7241ab8abfc46eeea280d673f84311056 5.5.5.103:29002@39002 slave 76a8592df53de4d45fb66fa8e48ef9fb0991ae14 0 1544694514663 27 connected
31ba5414196da8b6ed8e0640472d3870d5f6f591 5.5.5.103:29003@39003 master - 0 1544694513656 20 connected 0-820 3300 13109-16383
[redis@lxd-vm3 redis]$ 

编写脚本直观获取

[redis@lxd-vm3 redis]$ cat get_master_slave.sh
cmd="redis-cli -c -h $1 -p $2"
master_id=(`$cmd cluster nodes | grep master | awk '{print $1}'`)
master_ip_port=(`$cmd cluster nodes | grep master | awk '$2 ~ /@.*/{gsub("@.*","",$2);print $2}'`)len=${#master_id[@]}
for ((i=0;i<=$len-1;i++));
do
echo -n "${master_ip_port[$i]} ->  "
echo `$cmd cluster slaves ${master_id[$i]} | awk '$2 ~ /@.*/{gsub("@.*","",$2);print $2}'`
done
[redis@lxd-vm3 redis]$
[redis@lxd-vm3 redis]$ sh get_master_slave.sh 5.5.5.101 29001
5.5.5.101:29004 ->  5.5.5.102:29004
5.5.5.102:29002 ->  5.5.5.103:29002
5.5.5.101:29001 ->  5.5.5.102:29001
5.5.5.103:29003 ->  5.5.5.101:29003
[redis@lxd-vm3 redis]$ 

转载于:https://www.cnblogs.com/imdba/p/10115447.html

直观获取redis cluster 主从关系相关推荐

  1. redis解除(删除)主从关系

    redis的主从关系通过在从结点上使用slaveof [ip] [port]进行配置,同样在从节点上也可以使用该命令来解除主从关系,即从节点重新认主,将自己认做主节点: slaveof 127.0.0 ...

  2. Redis集群:redis cluster方案

    redis集群原理之官方的Redis Cluster方案 redis是单线程,但是一般的作为缓存使用的话,redis足够了,因为它的读写速度太快了. 官方的一个简单测试: 测试完成了50个并发执行10 ...

  3. Redis Cluster集群的搭建与实践[转]

    Redis Cluster集群的搭建与实践 Redis Cluster集群 一.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper等,但从redis 3.0之后 ...

  4. Redis Cluster集群的搭建与实践

    Redis Cluster集群 一.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper等,但从redis 3.0之后版本支持redis-cluster集群,Re ...

  5. 初学乍练redis:Redis 5 Cluster手工指定主从关系

    1. 检查当前Cluster的主从关系 /home/redis/redis-5.0.3/src/redis-cli -a 123456 --cluster check 140.210.73.39:20 ...

  6. Redis模式对比:主从模式 VS 哨兵sentinel模式 VS Redis cluster模式

    推荐观看: 十年架构师实战Redis-用Redis实现:秒杀/抢购/排行榜/推荐系统/抽奖系统!从Redis到分布式架构,通过Redis学AKF划分原则.CAP定理!​www.bilibili.com ...

  7. 【故障演练】 Redis Cluster集群,当master宕机,主从切换,客户端报错 timed out

    大家好,我是Tom哥 性能不够,缓存来凑 一个高并发系统肯定少不了缓存的身影,为了保证缓存服务的高可用,我们通常采用 Redis Cluster 集群模式. 描述: 集群部署采用了 3主3从 拓扑结构 ...

  8. [Java工程师面试精选]Redis cluster集群模式的原理

    redis cluster redis cluster是Redis的分布式解决方案,在3.0版本推出后有效地解决了redis分布式方面的需求 自动将数据进行分片,每个master上放一部分数据 提供内 ...

  9. 全面剖析Redis Cluster原理和应用 (good)

    redis redis cluster注意的问题 : 1.'cluster-require-full-coverage'参数的设置.该参数是redis配置文件中cluster模式的一个参数,从字面上基 ...

最新文章

  1. 图神经网络的表达能力,究竟有多强大?
  2. JS、CSS中的相对路径
  3. 如何用 Git 优雅回退代码,别搞错了!
  4. 【学习笔记】Python 基础零碎知识
  5. unity fixedupdate_unity相关
  6. XP 安装Oralce 10g 数据库
  7. 【Android工具】DES终结者加密时报——AES加密演算法
  8. python画图如何调整图例位置_Python-如何将图例排除在情节之外
  9. oracle 01035,oracle常用命令(一)
  10. HackerRank,一行代码解决输出问题
  11. 如何提升鸿蒙战绩,蛰伏一年 鸿蒙系统2.0为我们带来了哪些升级?
  12. es 时间字段聚合_ES聚合命令
  13. Android 程序中获取一个反向 Shell
  14. 找了好久的数据库mysql中文乱码问题终于解决
  15. 趣味Python — 不到20行代码制作一个 “手绘风” 视频
  16. 手把手教你在树莓派上搭建ghost个人博客呦
  17. 企业盈利能力五大指标之:毛利率
  18. 九种电脑变慢的常见症状、原因、以及解决办法。
  19. win11、10下安装eNSP最新版(1.3.00.200T)并完美运行(转载)
  20. 【Multisim仿真】有源低通滤波电路仿真

热门文章

  1. 首个波士顿动力机器狗买家秀来了:化身监工,确认路线后就能自动巡航
  2. 中国AI又夺一冠!依图刷榜全球声纹识别挑战赛,刷新纪录,大比分夺魁
  3. react学习笔记(4)组件的生命周期(运行阶段和销毁阶段)以及事件处理函数
  4. android--------Socket的简单了解
  5. 小程序二次贝塞尔曲线,购物车商品曲线飞入效果
  6. 军规13 降低流量和电量消耗
  7. BootStrap学习(2)
  8. java之ibatis数据缓存
  9. 重启nagios有异常提示Starting nagios:This account is currently not available
  10. 《领域模型》——通过重构得到更深层次的理解