【问题名称】
IBM Log Analysis内存溢出,导致服务僵死
【关键词】
内存溢出、IBM Log Analysis
【问题场景】
Log Analysis在生产上运行一段时间后,突然无法访问9987页面。但solr UI页面可以正常访问。
IBM Log Analysis服务器物理硬件配置如下:
名称 | 型号及配置 | 数量 |
日志服务器 | RHEL 6.5,32核92GB内存,5T存储 | 1台 |
【原因分析】
1. 登陆虚拟机,切换用户。切换至“IBM/LogAnalysis/logs”目录下,查看“GenericReceiver.log”文件,发现出现“out of memory”问题。
2. 利用“free -m”命令查看内存使用情况,发现内存使用过高,且cache未释放。
确定该故障是由内存溢出造成。
【解决方案】
第一步:切换至对应用户,在“IBM/LogAnalysis/utilities”目录下,输入“./unity.sh -stop”命令,关闭服务。
第二步:输入“free -m”,查看内存,发现cache仍未释放。切换root用,输入如下命令,释放内存。
sync
echo 3 > proc/sys/vm/drop_caches
#若还是无法清空cache,则输入echo 1 > proc/sys/vm/drop_caches
第三步:切换至对应用户,在“IBM/LogAnalysis/utilities”目录下,输入“./unity.sh -start”命令,开启服务。在开启过程中,需切换至“IBM/LogAnalysis/solr-5.2.1/server/logs”目录下,输入“tail -f solr.log”监控solr启动状态,若出现问题,需及时修复
。