Greetings,

I recently found that my Solaris boxes were missing disk metrics hence I fixed
it and filed bug 124 (including patch with implementation):

  http://bugzilla.ganglia.info/cgi-bin/bugzilla/show_bug?id=124

I tried to keep the implementation as close as possible as the one that is
used in Linux to simplify maintenance (even if it makes the code bigger and
not as optimized as it could be) and even though the patch has been made
against the current HEAD it can be applied cleanly to 3.0.3 (using: cd srclib
&& patch -p1).

As for testing, a more simplified version of part_max_used metric has been 
running in a Solaris 10 SPARC box in production for some time, and
I've done some extra testing and deployed the final version of it as well in
Solaris 9 SPARC and 10 x86 (as shown in the bug), sadly I have no Solaris 8
box to test it but it should work as well there, including older versions of
Solaris but with the caveat that for version of Solaris <= 2.7, /etc/mnttab is
a file and therefore it should be preferably locked on read so that it is
always consistent (that would require a 2 line patch but I didn't included the
implementation as I can't test it).

there are a couple of differences in the implementation when compared with
Linux :

1) the metrics are reported in real GB (2^30) instead of GiB (10^9).  I am
open to discussion, and will post another email with a focus on that later

2) I am using an "include" list of supported fs types (ufs, vxfs) as opposed to
the "exclude" list used in Linux, to target better the metric to real disks 
with real data (from a scan in my systems i found the following filesystems that
should be excluded if not: devfs, ctfs, proc, mntfs, tmpfs, objfs, fd, odm,
lofs, nfs).  a side effect of this is that the following filesystems are not
yet supported (mainly because i didn't need them, but also because I wanted
first to have some more discussion on the implementation details):

2.1) zfs

will need some extra code to identify the pools from the zfs volumes but since
i don't use it will need preferibly someone with experience to do the testing
as the only "system" i have with zfs is a qemu virtual machine running solaris
10 32bit in my 64 bit gentoo Linux laptop.

2.2) pcfs

i don't use it anywhere and wanted first to confirm that the "include" method
was preferred before adding it, specially since the same arguments used to
"include" this one are probably valid for hsfs and udfs

2.3) others

qfs should probably added but have no way to test it and i never met anyone
that used it, veritas cluster fs (cfs) is probably already supported as it 
identifies itself as VxFS anyway but i have no way to test it either as it has
been exorcised from my production environment already.

if you got to this line, thanks for taking the time to read this and i am
looking forward for your comments

Carlo

Reply via email to