最近遇到了一个问题,
问题现象:ganglia监控主机系统响应慢,正常的命令行操作有卡顿现象,特别是打开、编辑文件时更加明显。
问题分析:通过对ganglia监控主机的监控、top、iotop、vmstat等工具排查,发现时时刻刻都有大量磁盘写io,本身这台服务器上还跑了生产环境的mongo及mysql的从库等其他应用,通过iotop定位到磁盘写io操作主要是gmond进程产生,每次采集到监控数据后会写入到rrd文件带来的大量写操作。
进一步背景分析:我们采用ganglia监控生产环境系统及应用的各项指标(约15000项),监控频率为默认的15秒,rrds目录大小9.3GB,磁盘为3块2T SAS硬盘做的AID5。
这就说明每15秒都有9.3GB的磁盘写入量(9.3*1000M/15=620MB/s),又是机械硬盘又是RAID5又是mongodb备份库,长时间如此系统没挂都谢天谢地了。
遇到问题总得解决吧,经过进一步的分析:在监控指标不变的情况下,rrd文件的大小不会有明显的变化(rrd环状数据库的优势特点),即rrds目录大小基本维持在9.3GB左右,且写入巨大且频繁,读操作相对少,看来此种场景只有ssd磁盘和内存能搞定了,ssd暂时没法换了,用内存吧(还好我的内存是16G