线上Hadoop集群使用ganglia监控非常方便集成,不过ganglia的gmetad节点存在High IO问题;ganglia是使用rrd来存储数据的,这样的话监控一个稍微上规模的集群每次更新rrd也会产生大量的离散IO,造成磁盘100% busy;
好在使用的rrdtool是1.4.x版本,支持rrdcached,其原理细节:,基本思想就是在内存中合并更新,批量写磁盘;
安装起来也十分简单:修改 default_config.php/gmetad 启动文件,添加一个 rrdcached 的 init 文件就可以跑了;效果非常明显,原来是经常 100% 的磁盘使用后不到 10% ,疗效显著!