首页 > 代码库 > redis占用高内存导致的socket连接失败
redis占用高内存导致的socket连接失败
最近在搞ELK日志平台,部署filebeat收集日志时(输出到redis),出现了经典的【连接被目标机器积极拒绝】异常,
1)环境配置:
开发机,开发服务机(开发机上的virtualbox虚拟机,启动了ELK服务)、测试机、测试服务机(ELK)
2)本机(开发机)使用可输出日志到开发服务机 + 测试服务机
3)测试机可输出日志到开发服务机,配置为测试服务机则提示
【2017-04-07T13:39:52+08:00 ERR Connecting error publishing events (retrying): dial tcp 192.168.78.51:6379: connectex: No connection could be made because the target machine actively refused it.】
分析过程如下:
1)测试机上检查端口是否可用:telnet 192.168.78.51 6379,果然无法连接。
2)开发机上检查端口是否可用:telnet 192.168.78.51 6379,可以连接。
3)怀疑测试机上防火墙问题,关闭防火墙后还是连不上。
4)测试机上连接其他端口:telnet 192.168.78.51 22,居然可以连接
5)检查测试服务机:内存占用大
6)检查redis:居然有1千万条消息待处理
7)重启logstash读取消息后,测试机上telnet正常,收集日志成功。
结论:
logstash死掉导致redis内消息无法消化,进而影响了端口连接。
redis占用高内存导致的socket连接失败
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。