In <20070903193314.wf9klguno8is00so at web2.kaya.fr> xbgmsharp <xbgmsharp at gmail.com> writes:
Here is a solution in order to reduce I/O which is a lot consuming. I load all the rrd and hist and webserver (cgi-bin,www,web,secure-cgi) =20 into different tmpfs (http://en.wikipedia.org/wiki/TMPFS). This way everything is load into memory (cached). I have 6G of memory and i set 2G for rrd and the other 2G for hist and =20 a very small one for the webserver 64M.
That will obviously work, but you'd better be sure this server doesn't crash (or lose power). And it doesn't scale very well - it wouldn't work for me, since I have to plan on the number of hosts being monitored doubling approximately every 12-18 months.
To show what the new code does, have a look at http://www.hswn.dk/~henrik/rrd-ioload.png Before the new code was put into production, the server was running at 50% "io" load - but since this is a dual-CPU server and all of the I/O goes through one of the CPU's (Linux design choice), it was actually completely maxed out on the amount of I/O it could handle. After the RRD update caching, it uses 7-9 % I/O time.
Regards, Henrik