单个实例查看客户端连接较为简单

client list

现在手上拿到几台物理机,每台物理机部署了100个实例,由于是以前遗留下来的实例,不知道能否下线,想知道这批机器是否有人使用?

如果想知道有没有人使用,就要连上去看看上面是否有客户端连接;

现在问题是系统里面部署了70多个实例,每个实例密码不一样; 总不能一个个通过端口连接每个实例,并一个个尝试密码;

首先获取所有port

ps -ef | grep redis | awk -F: '{print $NF}' > port.list

获取所有密码

grep pass */*.conf | awk '{print $NF}' | sort | uniq > auth.list

循环遍历每个密码和端口,尝试连接,并获取连接信息

#!/bin/bash


for auth in `cat auth.list`
do
        #echo $x;
        for port in `cat port.list`
        do 
                #echo $x;
                echo client list |  /export/Data/redis/bin/redis-cli -h 127.0.0.1 -p $port -a $auth
        done 
done

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐