需求:还是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. poj 1741 Tree
  3. asp.net防止刷新时重复提交
  4. kubernetes 动态扩容pv
  5. CSS Modules 用法教程
  6. NYOJ 35 表达式求值
  7. 面向对象——三层架构(表现层、业务层、持久层)
  8. PHP中register_globals参数为OFF和ON的区别
  9. win7桌面取消显示计算机,教您win7系统关闭右下角显示桌面功能的解决办法
  10. 移动的宽带真的很垃圾
  11. python九九乘法表代码及循环过程详解
  12. 查看本机外网IP地址
  13. 云服务器如何发送邮件
  14. java lte cellid 如何获取_Android基站定位——通过手机信号获取基站信息(一)
  15. 解决bmp图片文件宽度不是4的倍数
  16. python的快捷键是什么意思_Python基础知识—快捷键
  17. 阿里云服务器出现 Resource stopwords not found. Please use the NLTK Downloader to obtain the resource:
  18. 25. Green Living 绿色生活
  19. CSDN博客 论坛——读好书,畅想 我的IT成长路 活动【已完成】
  20. 笔记本电脑屏幕PWM调光频率测试调节软件

热门文章

  1. 微软更新Linux子系统,编译WSL 2内核只需3步
  2. ios自定义条形进度条
  3. 分布式查询的使用准则
  4. PostgreSQL9.5和JSONB的强大功能
  5. 用GDB调试程序(一)
  6. 利用HTTP Cache来优化网站
  7. Spring MVC Controller 要点
  8. 验证url 地址是否是图片
  9. WEB数据挖掘(八)——Aperture数据抽取(4):Aperture整体结构
  10. 实现PHP基本安全的11条准则