Hi All,<div><br></div><div>Long time user, first time poster on the list.</div><div><br></div><div>I have a fairly large distributed monitoring setup currently in pilot that's monitoring a variety of devices at remote branch sites.</div>
<div><br></div><div>The hostnames at all these sites are very similar since the naming standard includes the branch ID at the start of the hostname.</div><div><br></div><div>What we are seeing is Nagios' scheduler is using a sorted list to drive the host check scheduling decisions, which means all or the majority of devices at a particular site are being checked at once. With all those ICMP packets going down a long thin WAN link that may be close to 100% utilisation, we are seeing all the devices at the site go down at once, then come back up as soon as the next check is run in a more staggered manner.</div>
<div><br></div><div>I have checked the source code and the host list Nagios uses is sorted after reading the config files and the scheduler routine simply walks the linked list of hosts, and adds them into the schedule.</div>
<div><br></div><div>My ideas to solve it...</div><div><br></div><div>- Modify check_icmp with a wrapper script or similar that adds a random delay to the ping check to avoid the mass of packets (OK but will still lead to events where all the randomness adds up)</div>
<div>- Modify the Nagios source code and recompile to remove the sorting of host lists (suboptimal)</div><div>- Increase the thresholds for ping timeouts etc (doesn't really let us track latency of each site as it's then affected by the ping grouping)</div>
<div><br></div><div>Any ideas from the community that'd be useful?</div><div><br></div><div>Thanks</div><div><br></div><div>Ben Sykes</div>