Before we discuss the differences between agent-based and agentless monitoring tools, let’s first try to define an agent.
What is an agent?
A server’s performance must be tracked by its own software program called an agent. The agent, which resides on the server, collects statistics such as CPU and memory usage. Then it sends all these statistics to the console (user interface) to present the result.
Agent-based and agentless performance monitoring tools differ in the following ways:
- Privately owned software
- Agent-based: Installation is required on each server being viewed.
- Agentless: It does not need to be installed on all servers.
- Central System:
- Agent-based central system: In addition to the agents, there is a single machine known as the data collector master. All agents communicate with this machine, which also collects data.
- Agentless: Data is collected by a central system that communicates directly with the server (which is being viewed).
- Installation
- Agent-based installation: Requires installation of a central system and installation of agents on each server.
- Agentless: Only one central system needs to be installed.
- Hardware price:
- Agent-based: Monitoring tools are more expensive than agentless tools because additional infrastructure is required to host the agents and store massive amounts of data.
- Agentless: Little or no additional hardware is required. In turn, infrastructure costs are cheap.
- License Fee:
- Agent-based: Having a large number of control functions, the license cost is high.
- Agentless: License fees are reasonable, while certain agentless monitoring solutions are also available as free source products.
- Maintenance:
- Agent-based: Systems are labor-intensive and more expensive to build and maintain if the deployment process is not automated.
- Agentless: In the case of a new version, deployment is easy and maintenance is inexpensive.
- Network costs :
- Agent-based: Agent-based monitoring uses less bandwidth because the information is collected locally and only the final results are sent to the console after processing. Therefore, it works as a one-way push mechanism.
- Agentless – Requires more network traffic as it allows bi-directional communication and transports raw performance data to an external data collector.
- Service Charges:
- Agent-based – Contains a small amount of server overhead that varies with the frequency of data collection. Agent operations are the cause of server overload. The agent uses a small amount of RAM when collecting local data and uses a small amount of CPU time.
- Agentless: Once a probe request is received, the server’s CPU and memory are used. Therefore, there is no continuous load on the destination server.
- Cycle grain size :
- Agent-based: Can display graphs with low granularity (approximately 1 second), which reduces the chance of missing the important peak.
- Agentless: Has more granularity than an agent-based approach, so the chance of missing the critical peak is significant.
- Analysis and Coverage:
- Agent-based – Some of the best profiling capabilities are packaged in agent-based monitoring systems, which also provide comprehensive root cause investigation. These tools cover a broader range of monitoring (almost all types of monitoring) and go deeper (down to the code level).
- Agentless: Monitoring coverage is smaller and analysis is more limited due to limited features. Server logs may be required to identify the exact cause of the problem.
- Knowledge:
- Agent-based: To effectively use all the features of the tool, a high level of proficiency was required.
- Agentless: Basic knowledge of graph reading, inspection, and analysis is required.
- Example:
- Agent-based: Dynatrace
- Agentless: Micro Focus SiteScope