Hardware Monitoring with SSH

Overview of SSH

Windows Interface Screenshot
SSH RAM usage monitor

SSH, or Secure Shell, has been introduced as safer replacement for older Telnet, rsh and rexec tools, since data, including authentication credentials, are sent by the above tools unencrypted (can be easily intercepted by traffic analysis).

IPHost network Monitor uses SSH as transport protocol; it allows establishing secure channel between main installation and target host, and running processes on remote with data passed to and analyzed by IPHost.

Since SSH is transport, actual system load, data amount passed and overall impact on remote host and IPHost main installation is actually depending on what exactly is run on remote. Since most tasks on Unix-like systems can be orchestrated by console applications (using text interface only, via standard input/output/error streams), SSH becomes valuable tool not only to inquire hosts, but also to perform various actions on them, including actions initiated by monitor switching its states.

Base SSH monitors

Windows Interface Screenshot
SSH process count monitor

CPU load can be measured by means of SSH in a number of host-specific ways. On systems with /proc file systems, /proc/stat can be read to deduce current CPU load stats (periodically reading and using difference of subsequent reads to calculate the load). CPU load calculated can be used to optimize host for better performance (popular servers, such as Web servers, can utilize CPU cores separately, to improve overall efficiency.

Disk space can also be calculated using /proc if applicable, as well as by using filtering output of df and du standard utilities. Note that calculating used space for subdirectory can be significantly less efficient compared to getting info for entire mount point instead. On Unix-like systems it’s common to have several mount points with separate file systems; all important should be monitored to prevent sudden disk space absence.

Windows Interface Screenshot
SSH disk space monitor

Process count allows keeping services on remote host alive by watching the number of processes with know names, and running script to re-start (or stop, depending on task) services as required. The above can be used to both restart services that stopped for certain reasons, as well as to stop processes that are running for too much time. Use process monitor to ensure all required processes are run as expected.

The fourth monitor, RAM usage monitor, can be used to determine amount of RAM used and/or free and watch the trends for it. There are number of processes that can consume RAM and watching the RAM available can help you to boost host system performance by changing RAM usage-related directives for services running (for example, in database servers that can be used to use only the amount of RAM allowed).

Other monitoring techniques

Looking for a software to monitor hardware resources via WMI and SNMP? IPHost network Monitor offers SNMP (generally available for majority of network devices) and WMI (for Windows-based systems), as alternatives to SSH, to use in situations when generic Unix-like system is to be monitored.

SSH-type monitors provide most general functionality, allowing to run virtually any console-type process on remote host and using the data sent to standard streams to get performance value and/or hints for problems. The above is performed over secure channel, thus strengthening security against credentials/other data leaks.

IPHost Network Monitor provides you with free 30-days trial, fully functional. Start monitoring your systems in a couple of minutes, avoid outages wherever possible.