Board logo

标题: Redis 3.0.5 集群的命令、使用、维护(2)cluster info与cluster nodes [打印本页]

作者: look_w    时间: 2018-12-16 15:41     标题: Redis 3.0.5 集群的命令、使用、维护(2)cluster info与cluster nodes

cluster info这个命令是显示当前连接的集群的各种信息。

[url=][/url]
[root@web3 7008]# redis-cli -c -p 7000127.0.0.1:7000> cluster infocluster_statekcluster_slots_assigned:16384cluster_slots_ok:16384cluster_slots_pfail:0cluster_slots_fail:0cluster_known_nodes:9cluster_size:4cluster_current_epoch:9cluster_my_epoch:1cluster_stats_messages_sent:41417cluster_stats_messages_received:41417cluster_state:集群的状态。ok表示集群是成功的,如果至少有一个solt坏了,就将处于error状态。cluster_slots_assigned:有多少槽点被分配了,如果是16384,表示全部槽点已被分配。cluster_slots_ok:多少槽点状态是OK的, 16384 表示都是好的。cluster_slots_pfail:多少槽点处于暂时疑似下线[PFAIL]状态,这些槽点疑似出现故障,但并不表示是有问题,也会继续提供服务。cluster_slots_fail:多少槽点处于暂时下线[FAIL]状态,这些槽点已经出现故障,下线了。等待修复解决。cluster_known_nodes:已知节点的集群中的总数,包括在节点 握手的状态可能不是目前该集群的成员。这里总公有9个。cluster_size:(The number of master nodes serving at least one hash slot in the cluster) 简单说就是集群中主节点[Master]的数量。cluster_current_epoch:本地当前时期变量。这是使用,以创造独特的不断增加的版本号过程中失败接管。{不懂}cluster_my_epoch:这是分配给该节点的当前配置版本。{不懂} cluster_stats_messages_sent:通过群集节点到节点的二进制总线发送的消息数。 cluster_stats_messages_received:通过群集节点到节点的二进制总线上接收报文的数量。
cluster nodes获取集群上的所有的节点信息。一般这个命令用的比较多。

[url=][/url]
127.0.0.1:7008> cluster nodes8916fb224bbae3dc0291ca47e066dca0a62fba19 192.168.33.13:7004 slave 3d2b7dccfc45ae2eb7aeb9e0bf001b0ac8f7b3da 0 1446115185933 5 connected404cf1ecf54d4df46d5faaec4103cfdf67888ad2 192.168.33.13:7001 master - 0 1446115184929 2 connected 4096-8191a035546046a607487436cf354c187b1712edf39b 192.168.33.13:7006 slave 6f5cd78ee644c1df9756fc11b3595403f51216cc 0 1446115184929 7 connected6f5cd78ee644c1df9756fc11b3595403f51216cc 192.168.33.13:7002 master - 0 1446115185432 3 connected 8192-12287f325d80e770ce319e4490818a49bad033cce942c 192.168.33.13:7008 myself,slave 3d2b7dccfc45ae2eb7aeb9e0bf001b0ac8f7b3da 0 0 9 connectede357bea5151b32a971c1f7a5788271106195f99a 192.168.33.13:7005 slave 404cf1ecf54d4df46d5faaec4103cfdf67888ad2 0 1446115186435 6 connected3d2b7dccfc45ae2eb7aeb9e0bf001b0ac8f7b3da 192.168.33.13:7000 master - 0 1446115184426 1 connected 0-40956650a95b874cacf399f174cb7a1b3802fc9bcef9 192.168.33.13:7007 slave 35bdcb51ceeff00f9cc608fa1b4364943c7c07ce 0 1446115184426 8 connected35bdcb51ceeff00f9cc608fa1b4364943c7c07ce 192.168.33.13:7003 master - 0 1446115184426 4 connected 12288-16383[url=][/url]

先看下每一条的结构:
<id> <ip:port> <flags> <master> <ping-sent> <pong-recv> <config-epoch> <link-state> <slot> <slot> ... <slot>
[节点id] [ip:端口] [标志(master、myself、salve)] [(- 或者主节id)] [ping发送的毫秒UNIX时间,0表示没有ping] [pong接收的unix毫秒时间戳] [配置-epoch] [连接状态] [槽点]

cluster meet将 ip 和 port 所指定的节点添加到集群当中,让它成为集群的一份子
我们一般会用redis-trib.rb add-node 192.168.33.13:7009 192.168.33.13:7000 这种方式将一个节点加入队列。这是不需要连接redis-cli客户端。
其实,也可以用cluster meet命令,使用方法:
cluster meet <ip> <port>
我们来实践下,新建一个7009新节点,然后试着用这个命令加入到集群中来:
127.0.0.1:7000> cluster meet 192.168.33.13 7009OK127.0.0.1:7000> cluster nodes....70795a3a7b93b7d059124e171cd46ba1683d6b7d 192.168.33.13:7009 master - 0 1446198910590 0 connected

现在7009已经成功加入到来集群当中,同样,还没有分配槽点给它。槽点分配在下面的命令中再仔细说。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0