TECHZEN Zenoss User Community ARCHIVE  

Using an agent instead of zenperfsnmp

Subject: Using an agent instead of zenperfsnmp
Author: Tim Caiazza
Posted: 2014-02-12 15:05

Since in Zenoss 5 opentsdb has replaced the old RRD file method of storing perf data, I was wondering if there was going to be any support for an agent running on the remote device to send perf data back to Zenoss.

For example say I have a server and instead of having zenoss poll the device for memory usage, I could run tcollector (tcollector is a framework to collect data points and store them in OpenTSDB.) on the server and have tcollector report back to zenoss.

The reason I ask is because I'm interesting in very high precision perf data, I would love to see 5 second polling intervals or less. But having zenperfsnmp do all that polling doesn't seem as scalable, but if there was an agent on the host it would be simple to perf sampling in the 5 second range or less. Many people using Opentsdb collect data at 1 second intervals.



Subject: Tcaizza,
Author: Andrew Kirch
Posted: 2014-02-18 08:31

Tcaizza,
'
Zenoss does not, and will never support agents. Agents break, and with open standards like SNMP WMI SSH etc, Agents are simply unnecessary in the modern datacenter.

Andrew

Andrew Kirch

akirch@gvit.com

Need Zenoss support, consulting or custom development Look no further. Email or PM me!

Ready for Distributed Topology (collectors) for Zenoss 5 Coming May 1st from GoVanguard



Subject: So the best way for me to get
Author: Tim Caiazza
Posted: 2014-02-26 13:41

So the best way for me to get high precision perf data is to have multiple collectors polling at 5 second intervals You have to admit a 5 minute average of just about anything in the modern datacenter is pretty pathetic.



Subject: This is an ongoing limitation of Zenoss
Author: [Not Specified]
Posted: 2014-03-16 23:48

We've been using Zenoss Core at my organisation since I introduced it to replace a set of HP monitoring tools ~3 years ago.

Zenoss is an amazing, fully-featured monitoring suite which is perfect for a great many use cases. But highly granular monitoring like this is where it has always been lacking. Not having to worry about agents is great and a 5 min polling interval is fine for most Operational requirements such as filesystem utilisation or long-term memory/CPU utilisation. But there is an increasing need for higher-resolution metrics and without the ability to tweak the SNMP polling interval on a per-device or per-template basis, this really isn't feasible with Zenoss.

Our solution in these cases has been to use Graphite (http://graphite.wikidot.com). We publish a subset of our most interesting metrics at high-frequency (often per-second or per-5-seconds) using a combination of open-source tools, scripts and our applications themselves. Graphite is currently a much better tool than Zenoss for analysing, reporting and dashboarding performance metrics, however it currently lack a means of thresholding. To solve this, we have been working on a tool to apply thresholds to Graphite metrics and raise breach events in Zenoss. Once it's a little more refined, we'll hopefully be releasing it as Open Source.

It seems like Zenoss 5 focuses on better collection, storage and analysis of performance data.This is great news. However if Zenoss 5 doesn't allow performance metrics to be published directly from external sources, (in the same way as events), there will still be a need for another tool such as Graphite. Thus there will be no true Unified Monitoring Nirvana, which has always been Zenoss' objective. This would be a real missed opportunity.



Subject: Zenoss does support variable polling intervals
Author: [Not Specified]
Posted: 2014-03-17 09:12

@Amorphic, Zenoss 4 supports the ability to increase or decrease any type of polling frequency on specific devices as the daemon/collector framework was overhauled to support that functionality. If you want a specific device to poll at 1 minute intervals instead of 5 then that's totally possible to do.

@Tcaiazza: You can configure Zenoss to poll at 1 minute intervals provided you have the hardware to be able to keep up with the polling. With proprietary monitoring agents, all you're doing is moving a large portion of the load required to collect/parse the data off of the actual monitoring systems, and placing that load on your production devices instead.



Subject: Zenoss polling
Author: [Not Specified]
Posted: 2014-03-18 22:40

@Rmatte: Thanks for letting me know, I wasn't aware that Zenoss 4 allowed per-device SNMP polling intervals. This is a good step in the right direction, however:

* It still forces us to poll all metrics on a given device at the same granularity when this isn't always desirable. For example I might wish to poll a network interface at high resolution (every 5 sec) but I only need to poll filesystems at low resolution (5 minutes).

* It ignores the fact that some metrics just aren't suited to polling. It is often much more sensible for an application or a script to publish metrics than it is to expose an interface by which they must be polled. This is a common idiom, as per Graphite and Statsd. It would be fantastic for such metrics to end up in Zenoss' metric database (openTSDB) where they may be analysed alongside the metrics collected via Zenoss polling.

* My problem with agents was always less the load that they added to prod servers, (which was generally negligible) but more ensuring that they were running. I do think that this is more manageable these days with tools such as Puppet/Chef. Having said that, I've seen (ok, built :-| ) poorly designed custom SNMP extensions which cause ugly load spikes.

In the end some metrics lend themselves to being polled and others lend themselves to being published. It'd be amazing to have The Best Of Both Worlds. :-)



Subject: You can post metrics to 5.x,
Author: [Not Specified]
Posted: 2014-03-31 12:40

You can post metrics to 5.x, there is also a websocket to send metrics. The main issue will be associating the metrics with a device and/or component.

Currently the zenoss collectors put a uuid tag in the metric, and a device tag, both are the internal uuids to zenoss. You can see the updated collector code here:

https://github.com/zenoss/zenoss-prodbin/blob/develop/Products/ZenCollec...

The post takes a json list of metrics, see here:
https://github.com/zenoss/zenoss.metric.consumer/blob/master/metric-cons...

See here for the metric json format:
https://github.com/zenoss/zenoss.metric.consumer/blob/master/metric-data...

We may at some point take human readable device information and try to associate it with a device, kind of like events, but for now it is just uuids.

JPL



Subject: deleted post
Author: R S
Posted: 2015-03-06 12:42

deleted post



Subject: as far as a 5 second polling
Author: Andrew Kirch
Posted: 2015-03-09 09:19

as far as a 5 second polling interval, why I mean why not a 1 second polling interval, why not a 1 femtosecond polling interval (so that we know if the transmitter on the ethernet port is on or off). We can reduce polling intervals to the absurd but frankly there's no need to do so. 5 minutes has been the industry standard for decades, and it's been the standard because it works. 5 minutes provides a good running average of a very small unit of time. If you need sub-second, or close to sub-second monitoring you're talking about APM, and that's a whole different headache.

Andrew Kirch

akirch@gvit.com

Need Zenoss support, consulting or custom development Look no further. Email or PM me!

Ready for Distributed Topology (collectors) for Zenoss 5 Coming May 1st from GoVanguard



Subject: If I understand this
Author: Jim R
Posted: 2015-05-26 10:53

If I understand this correctly, I can send metrics to the metrics consumer and show charts in Zenoss, assuming I send the correct metadata, correct Do I have to send it through the consumer, or can I write it directly to OpenTSDB



< Previous
Export button for graph reports
  Next
Cleaning/Shrinking the Event Database went wrong
>