I have a visual puzzle in the latter half of this article, do try it.
When do you go for agent-based and when do you go for agent-less monitoring? Don’t get stuck thinking that only one of these approaches – agentless- or agent-based monitoring is going to be useful. It is always a question of what level of monitoring you want, depending on cost,budgets, time, and network speeds.
Agentless monitoring is easy to deploy, as the monitoring and configuration happens at a central place in a nice (admin) UI of course. Costs of installation (and the ongoing maintenance) are really low.
Monitoring with agents has the cost of installation, configuration (proportionate to number of managed elements), platform support needs and dependencies. You also need to worry about patching.
Tip: Make the agent software as part of your standard OS image template to reduce the work in first-time installation. A lot of HP enterprise customers follow this best practice already saving time thereby.
So on a first level, we can immediately say on a cost/effort basis, agentless comes out on top.
Next the whole paradigm of end-point monitoring (testing response time and throughput across a data link), is built with a remote probing/agentless mechanism in mind. An agent (in the general sense of the term), is not used and would not be suitable in this respect.
And then, there are other points of how being agentless brings about broader (and sometimes, easier) platform support including for devices such as UPS and printers.
So why and when would somebody go for agent-based monitoring?
Have you heard them say ‘No pains, no Gains’?
It is always a trade-off with monitoring: In many cases, it is not enough to do a 5-minute remote polling, especially with a huge reliance on network connectivity to do the monitoring. What if there was a temporary problem during the 5-minute period lasting outside of the monitoring runs – something people call a brownout?
What if there was a problem that went entirely unnoticed, but it has a cycle of repetition that is analyzed only by reading fine-grained (real-time) performance data for the system? The data that agent’s continuous data collection provides would be helpful to analyse some of these ‘seasonal’ problems.
There are crucial systems that support SLA’s for 99.999% (5-nines) availability. It is important to assess to the level of the minute and second, how the system is performing – the peaks and trough of usage, not just average utilization levels. This is crucial for capacity analysis and prediction heuristics (I like that term – prediction heuristics!!!). While it is theoretically possible to poll at shorter intervals than a minute, it is not efficient to go to really low intervals using remote polling approach (as minor delays due to network latency can cause havoc with the data collections).
Sometimes it is not possible to get the data remotely owing to lack of vendor interfaces to access application, or system data.
In general, agent-based monitoring is regarded more secure since it does not necessitate storage of passwords centrally. Organizations that have high-level of security compliance needs would prefer agent-based monitoring as a result.
Joe and Jane
Here’s Joe and Jane – both of these engineers are in-charge of monitoring a set of systems in their company X, Inc. Take a look at their differing needs and POVs.
After reading what Joe and Jane are looking for you will have a decision to make. Or will you? It is possible to get the best of both worlds and perform a balancing act. You can use both approaches to their advantages.
X-Inc uses agent-based and agentless (remote) approaches to monitor their IT landscape. Another case of this combined monitoring is within a cloud environment, where monitoring gets done via (cloud) vendor APIs but the guest OS still remains the blackbox.
To know what is happening within the guest OS some agent-style instrumentation is required. This might be the forwarder like the Splunk UF or a low-footprint software that can do 'close' monitoring by collecting data at low levels of granularity. Here's a picture that you would find useful.
Here's an exercise for you: here are a couple of tag clouds showing monitoring-related terms. Which do you think refers to agent-based monitoring and which is agent-less monitoring? Let me know what you think in the comments section below. Let’s see if you get it right –If you get it right, I know my tag clouds are well done :).
I am amazed with the power of info-graphics and I would like to conclude this post with a nice infographic - a visual to help you decide whether to go agentless or use agent software for monitoring. You can save this as a poster if you like. Just ensure that you retain the copyright info.
Ramkumar Devanathan (twitter: @rdevanathan) is Product Manager for HPE Cloud Optimizer (formerly vPV). He was previously a member of the IOM-Customer Assist Team (CAT) providing technical assistance to HP Software pre-sales and support teams with Operations Management products including vPV, SHO, VISPI. He has experience of more than 14 years in this product line, working in various roles ranging from developer to product architect.