背景
测试环境发现redis 哨兵集群一台从节点宕掉了,启动时候却报端口占用,一直启动失败,在此将处理过程记录一下供日后翻阅。
处理方法
查看进程
# 查看 redis 进程
ps -ef | grep redis
# redis 6379 进程不存在
处理过程
# 查看6379 端口
netstat -ano | grep 6379
# 结果可能会有很多,因为哨兵26379 会跟集群其他节点6379进行通信
# 进一步 查看本机监听的端口
netstat -ano | grep 0.0.0.0
# 发现 6379 并不存在
此时现象就比较明显了,进程死掉了,端口却没释放,netstat
命令监听不到。我们换用另一种方式。
# 查看使用 6379 端口的进程
lsof -i:6379
# 此时有了进程
将这个进程 kill
掉,重新启动redis 6379 应用正常。