I run gmond predominently on windows hosts that mostly have 2 NICs. While many hosts have NIC teaming, many hosts do not, and sometimes (semi-randomly) the src address for UDP data will flick from one host IP to the other.
The effect of course on gmond and thence gmetad is that you get 2 XML entries for the host, 1 with the new IP, and with the old IP which does not get updated, and will eventually be reported as down. Depending on which XML entry comes last, one either does not notice this, or you get erroneous host down statuses. So what is the best thing to do about this? The pertinent code snippet in gmond.c is: static Ganglia_host * Ganglia_host_get( char *remoteip, apr_sockaddr_t *sa, Ganglia_message *fullmsg) { apr_status_t status; apr_pool_t *pool; Ganglia_host *hostdata; char *hostname = NULL; if(!remoteip || !sa || !fullmsg) { return NULL; } hostdata = (Ganglia_host *)apr_hash_get( hosts, remoteip, APR_HASH_KEY_STRING ); if(!hostdata) { /* Lookup the hostname or use the proxy information if available */ if( !hostname ) ... The hosts structure being keyed from the remoteip causes the problem. Perhaps if I keyed this hash with a hostname, and had a separate hash to optimise the ip -> hostname mapping, perhaps that will do? I would appreciate guidance. thanks, Richard ------------------------------------------------------------------------ For more information about Barclays Capital, please visit our web site at http://www.barcap.com. Internet communications are not secure and therefore the Barclays Group does not accept legal responsibility for the contents of this message. Although the Barclays Group operates anti-virus programmes, it does not accept responsibility for any damage whatsoever that is caused by viruses being passed. Any views or opinions presented are solely those of the author and do not necessarily represent those of the Barclays Group. Replies to this email may be monitored by the Barclays Group for operational or business reasons. ------------------------------------------------------------------------