ITM Agentless Monitoring for Linux
by Anthony Mico
As previously covered in earlier articles, ITM Agentless Monitoring for Windows, Linux, AIX, HP-UX and Solaris provides a scalable and easily configurable mechanism for monitoring servers that either do not support a native operating system agent or have some other constraint (such as disk space, security etc) that prevents an operating system agent from being installed locally.
As with the other Agentless Monitoring variants, Agentless Monitoring for Linux consists of an “agentless-monitoring server” agent which is used to collect performance and utilisation information from one or more remote hosts. The agent is multi-instance, with a single agent being able to support up to 10 instances. Each instance can support 100 remote hosts, meaning that a single agentless-monitoring server agent can support a total of 1000 remote hosts.
Agentless Monitoring for Linux uses SNMP as the means for collecting data from the remote hosts, with SNMP versions 1, 2c and 3 being supported.
The data collected by the agent includes:
- Logical and physical disk utilisation
- Virtual and Physical Memory utilisation
- Aggregate processor utilisation
- Process availability
- Network utilisation
- System uptime
- User logins
Setting up agentless monitoring is a two part process. Firstly, for agentless monitoring to work, the remote system to be monitored must have SNMP enabled and appropriately configured. With that in place, the agentless monitoring agent can be configured.
SNMP Configuration on Ubuntu
Edit /etc/default/snmpd and remove localhost as the listening address:
SNMPDOPTS=’-Lsd -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid’
Edit /etc/snmp/snmpd.conf to control access, an example version 2c configuration is shown below with a community called tivoli created with readonly access to just the information required by the monitoring agent:
Restart the snmp daemon for the changes to take effect:
The snmpwalk command can be used to confirm that the configuration is correct (where remotehost is the target system):
SNMP Configuration on Redhat/CentOS
The configuration of SNMP on Redhat variants is very similar to the process for Ubuntu.
Firstly, install the net-snmp and net-snmp-utils packages:
Then, edit /etc/default/sysconfig/snmpd to confirm the SNMP daemon will listen on all interfaces (or specify a specific interface if you wish):
Next edit /etc/snmp/sndmp.conf to control access, the same configuration as per the Ubuntu configuration above has been used:
Restart the snmpd service to pickup the changes:
Ensure snmpd is started when the server is rebooted:
Configuring the Agentless Monitoring agent
Using MTEMS, select to configure the Agentless Monitoring Agent for Linux. The currently configured instances will then be listed, select Add Instance to add a new instance.
Enter the Instance name, I’ve used Ubuntu in this example, and a default value for the SNMP port number and version. These values can be overridden later on a per monitored host basis if required.
Enter the Community Name, based on the snmpd.conf configuration file example given, this would be ‘tivoli’.
Now we can enter the details of the remote systems that we want this agent instance to monitor, providing the Managed System Name (the name under which the agent appears in the TEP Navigator) and the server’s hostname or IP address. The Advanced drop down can be used to override the default connection configuration values.
With the agent configured, we should now see the remotely monitored hosts in the TEP, the below screenshot shows two agent instances, Ubuntu and CentOS, each with one monitored remote host.