HostMonitor's Main Page Remote Monitoring Agent (RMA) for Windows
Version 4.88
Copyright (c) 2000-2014 Advanced Network Software
Current language: English
Switch language to: German
  What's New What's New    Copyright/License/Warranty Copyright/License/Warranty    Download HostMonitor Download    Registration Information Buy Now   

network monitoring package Remote Monitoring Agent (RMA) is an auxiliary application for HostMonitor. It is included into Advanced Host Monitor package. Enterprise license for Advanced Host Monitor already includes license for 10 installations of the agent. Holders of a Lite, Standard or Professional licenses may buy an additional license for Remote Monitoring Agent separately.


Intro    How to do    Known Problems    System Requirements    Price

remote monitoring agent HostMonitor can monitor remote networks using Remote Monitoring Agents (RMA). RMA is small application that accepts requests from HostMonitor, performs test (or action) and provides information about test result back to HostMonitor.
The following diagram illustrates how our network monitoring software may work in distributed network

Why you may need RMA? Here are just several reasons:

  1. RMA increases security of the network. When you have to run the tests such as CPU Usage test or Performance Counters tests on a remote system, HostMonitor must be able to log in to that system with administrators privileges. Instead you may now use an agent installed on that remote system. In this case HostMonitor will not have to log on to that system at all. HostMonitor needs just one TCP port to communicate with the RMA agent (by default Passive RMA utilizes TCP port 1055, Active RMA uses port 5056; however you may set an agent to use any other port).

  2. Remote Monitoring Agent is also a very useful tool when you have to monitor two (or many) separated networks (connected through Internet). In this case installing just one instance of RMA behind the firewall in network "A" will allow to monitor entire network "A" using the HostMonitor located in the network "B" with just one open TCP port.

  3. RMA decreases the network traffic. E.g. frequent use of "File Integrity" or "Compare Files" tests in an array of remote systems may apply significant load on the network. The more and the bigger files you test the more traffic increase you get. RMA runs locally and sends only the test results to the HostMonitor thus decreasing the amount of network traffic.

  4. Remote Monitoring Agent simplifies network administration. You no longer need to share drives to perform tests like Drive Free Space, Folder/File Size, File Availability, Count Files, etc

  5. RMA for Window allows you to execute actions on remote systems. E.g. agent can launch some application or restart service on a system behind firewall.

  6. Remote Monitoring Agents for Linux, BSD and Solaris allows you to perform tests that HostMonitor cannot perform. For example HostMonitor cannot monitor processes that are running on Linux systems. RMA can do that.
Features:
  • All traffic between Remote Monitoring Agent and HostMonitor is encrypted.
  • It is possible to customize the list of enabled tests for each of the agents (e.g. living only Count Files and Drive Free Space tests only).
  • You can restrict incoming TCP connections with the list of acceptable addresses.
  • With RMA Manager you may configure, restart and even upgrade agent(s) remotely.

Backup Agent

Since the version 6.00 HostMonitor allows you to setup primary and backup agents. Using this feature, HostMonitor is able to balance load between agents and use the backup agent when primary one does not respond. Yes, RMA is pretty stable software however system may not respond due to some hardware or network error.
See "Agent Connection Parameters" for details.


Now Remote Monitoring Agents available for Windows, FreeBSD, Linux, NetBSD, OpenBSD and Solaris platforms.
Information about RMA for UNIX available here.

RMA for Windows can be started as a regular application or as a Win32 service
and perform following tests and actions:
  Tests   Actions
- Ping
- Trace
- URL
- SOAP/XML
- Certificate expiration
- TCP
- UDP
- NTP
- SMTP
- POP3
- IMAP
- E-Mail
- DNS
- LDAP
- DHCP
- RADIUS
- DICOM
- UNC
- Drive Free Space
- Folder/File Size
- Count Files
- File/Folder Availability    
- File Integrity
- Text Log
- Compare Files
- NT Event Log
- Service
- Process
- CPU Usage
- Memory
- Dominant Process
- Performance Counter
- WMI
- Registry
- ODBC
- Interbase, Sybase, MySQL, MS SQL, Postgre, Oracle  
- SNMP Get
- SNMP Table
- SNMP Trap (Active RMA only)
- Traffic Monitor
- Active Script
- Shell Script
- External
- SSH test
- Temperature Monitor
  - Execute external command    

- Stop Service
- Start Service
- Restart Service

- Reboot
- Reboot remote system

- Log Event
- SQL Query
- HTTP request

- TCP/UDP send
- Syslog
- SNMP Set
- SNMP Trap


Passive RMA versus Active RMA

Passive RMA opens specified TCP port for listening and waits for connection requests from HostMonitor and RMA Manager, then RMA performs test (or action) and provides information about test result back to HostMonitor.

Active RMA - Remote Monitoring Agent that is not waiting for TCP connection from HostMonitor like regular RMA (now it`s called as Passive RMA). Active RMA itself establishes connection with HostMonitor and RMA Manager. This allows you to install RMA inside private network protected by firewall without necessity to open any TCP port (Passive RMA requires 1 open TCP port). Also Active RMA allows you to monitor system that does not have fixed IP address, e.g. system that is connecting to the network using temporary dial-up connection.
Several procedures help to monitor networks over unreliable connections:

  • Active RMA may store test results when network connection unexpectedly brakes off, it will try to reconnect to HostMonitor and send test results upon connection;
  • HostMonitor uses more flexible schedule for the tests that should be performed by Active RMA, e.g. if test has to be performed immediately but Active RMA is not connected while it was connected several minutes ago, HostMonitor may wait for another connection up to 4 min before assigning Unknown status to the tests. Note: if you select the test item and click Refresh button, HostMonitor will not wait for connection, it will set Unknown status right away;
  • For each active agent you may setup Backup Active RMA. Using this feature, HostMonitor is able to balance load between agents and use the backup agent when the primary one cannot establish communication channel.

Active RMA for Windows can be started as a regular application or as a Win32 service and perform the same set of tests and actions supported by Passive RMA.
Active RMA for UNIX is not available yet.


How to install RMA

To install RMA run installation program for Advanced Host Monitor package (host-mon.exe). At the stage when installation wizard offers you to chose an installation package, you should select "Custom Install". Then in the list of available components check the box in front of the "RMA for Windows". If you want to install only "RMA for Windows" then uncheck everything except "RMA for Windows".

If you need to install RMA on an array of systems, then the easiest way is to:

  • Install it on one system using installation program (see the instructions in previous paragraph)
  • Configure an agent (setup timeout, password, list of enabled tests, enable or disable remote management, etc)
  • Then simply copy preconfigured agent to all systems. You need to copy just 3 files: rma_cfg.exe,   rma.ini,   rma.exe (if you need Passive RMA) or rma_active.exe (if you need Active RMA)
  • Note: you should assign unique name for each Active RMA. If you assign the same name for several agents, HostMonitor will accept connection from 1st started agent and reject connections from other agents with the same name

Note 1: It is also possible (however you may never need it) to run several instances of RMA on the same system. To do this you have to install several copies of RMA into different folders on the hard drive. Each copy of Passive RMA should then be set to use different TCP port. You should assign unique name for each Active agent.

Note 2: RmaInstaller utility allows you to install Remote Monitoring Agent as Win32 service on remote systems. The utility included into Advanced Host Monitor package; after installation you may find this utility in "Utils\RmaInstaller" sub-directory.


  How to configure Passive RMA   Link: How to configure Active RMA


To configure an agent you may use rma_cfg.exe program (after installation it will be located in the same directory where an agent is installed) or you may start an agent and click on "Settings" button on the tool bar. This button launches the same configuration utility which pops up as a new window.

remote monitoring agent setup The lower part of the configuration window mostly contains information about an agent. Those fields (from the top to the bottom of the window) are joined into three groups: Agent information, Statistics and Agent status.

Agent information:
You are not able to change information shown in grey fields. They show data that was predefined by a software developer.

  • Agent: an internal name of an agent
  • Version: the version number of the agent.
  • Platform: OS platform that this agent is designed for.
  • Developer: the company that created RMA software.
  • Comment: this is the only field available for editing in this section. Here you may specify a comment (actually you may type any text here, it could be a simple recognizable name or an identifier for this agent). This helps to identify agents easier.
    HostMonitor and RMA Manager will display the content of these fields when they work with remote agents.

Connection statistics
  • Active: this is the number of requests that this agent is currently processing.
  • Performed: the number of requests processed since last time the agent was started.
  • Rejected: the number of requests that have been rejected by the agent since it was started. A rejection may be a result of a connection with invalid password or from an IP address that is not allowed.

Agent status
These three fields show the status of an agent as an application or Win32 service (you may start an agent in either of these two modes). Also this section shows you the state of currently edited agent configuration i.e.: are the changes for the current configuration already saved or not. Each field is followed by a corresponding control button:

  • Settings: initially, or after you just have started configuration utility, this field says "Applied". This means that the current settings of RMA were not changed yet. As soon as you start typing in any of the fields available for the user, caption changes to "Modifications are not saved" as a reminder that the current changes for the configuration are not saved and thus are not in effect. Only after you click the button "Apply" the changes will be saved. Note that after you have applied changes the caption returns to "Applied".

  • Application status: says either "Active" when Remote Monitoring Agent is running as a regular application or "Not Active" when RMA is not running. The button beside this field is correspondingly captioned saying "Activate" when RMA is not running, so it will start RMA if you press it. Caption "Deactivate" on the button means that RMA is currently running as a regular application and if you press the button it will be terminated.
    Note that the configuration utility is a separate application and it may run independently, even when Remote Monitoring Agent is not running.

  • Service status: On Windows NT* agent can be installed as a Win32 service. This field and the button display and control the status of RMA as a Win32 service. "Not installed" means RMA is not installed as a Win32 service. "Installed" means that RMA is already installed as a Win32 service. The button beside the field changes its` caption correspondingly - "Uninstall" when RMA is installed as a Win32 service or "Install" when its not. RMA in a Win32 service mode is loaded automatically at a system startup.
    *Here "Windows NT" means system based on NT technology, including Microsoft Windows NT 4.0, Windows 2000, Windows XP, Windows Vista, Windows Server 2003, Windows Server 2008.
    Note: If you are using local system account to start RMA service, RMA will be able to monitor local system (system where RMA is running). However local system account does not have necessary rights to monitor remote Windows systems. If you want to use single agent to monitor entire local network, please provide account with necessary rights using standard Windows "Services" applet. Some test methods require administrator account (CPU Usage, Process, Performance Counter).

  • Service state: this field is empty when Win32 service is not installed. After the servise was installed the following captions will tell you its status: "STOPPED" means the service is installed but not started. "STARTED" is displayed when the service is running. The button "Start/Stop" allows you to start or stop the service.


Settings

Connection parameters
  • Port
    specifies the TCP port number which RMA utilizes to listen for incoming connections. Default setting is #1055.

  • Timeout
    the maximum amount of time (in seconds) that agent will keep waiting for the complete request packet from HostMonitor (after initial TCP connection established) before dropping the connection.

  • Password
    minimum six character length password. Using of an empty password is not permitted. The password is required for every communication session between RMA and HostMonitor or RMA and RMA Manager. All traffic between RMA and HostMonitor or RMA and RMA Manager is encrypted and the password itself is never transmitted through the network without encryption.
Security settings
  • Accept connections from any IP address
    enabling this option will allow RMA to accept control commands from any IP address (as long as the incoming connection provides correct password)
  • Accept connections from following addresses
    specifies the list of IP addresses. After enabling this option RMA will accept remote connections only from the addresses in this list (password is required as always). Usually you have to add just one address to this list, namely the one for the system where HostMonitor is running.
    To add an address to the list press Insert key, to remove an address from the list press Ctrl+Del, to edit item press Enter or double-click it.

  • Enable remote management from address
    this option sets the IP address from which it is allowed to control and manage Remote Monitoring Agent. Using RMA Manager installed on the system with that IP address you will be able to change agent's settings remotely, also you will be able to restart and terminate an agent.
    Note: Instead of single IP address you may specify a list and/or a range of IP addresses. IP addresses in the list should be separated by comma. Dash is used to define a range of addresses. Example: "127.0.0.1,  192.168.13.10 - 192.168.13.99,  165.14.22.1".

  • Enable remote updates from address
    this option allows remote updates of the RMA code (e.g. when a new version is available) from the IP address being provided. You may provide single IP address or you may specify a list and/or a range of IP addresses. IP addresses in the list should be separated by comma. Dash is used to define a range of addresses. Example: "127.0.0.1,  192.168.13.10 - 192.168.13.99,  165.14.22.1".
    To upgrade an array of remote agents you may use RMA Manager.

  • Enable following tests
    specifies the list of tests methods allowed for execution by this RMA. To enable a test mark the corresponding check box, to disable a test unmark the box near it.

  • Enable following actions
    specifies the list of actions allowed for execution by the agent. To enable a action mark the corresponding check box, to disable a action unmark the box near it.
Logging
  • Successful audit log to
    here you may specify a log file where agent will store information about successfully accepted connections. This log has no use when everything works well (it then just takes space on the hard drive), but you may found it really helpful when a sophisticated network problem has to be fixed. If you specify just the name of the file (without a full path), an agent will store a log in the same directory where it was started from.

  • Failure audit log to
    you may specify another log file where an agent will store information about rejected requests. E.g.: connections from an IP addresses that are not allowed or connections with invalid password, etc. Log file is a simple text file that contains date of the event, remote IP address from which an attempt of connection has occurred and information about the error. If you specify just the file name (without path), an agent will store it in the directory where it was started from.

Test settings

Following options define how agent should access the net in order to perform "URL" tests.
  • USE REGISTRY CONFIGURATION
    Agent retrieves the proxy or direct configuration from the registry.
  • DIRECT TO NET
    Agent resolves all host names locally.
  • VIA NAMED PROXY
    Agent passes requests to the proxy unless a proxy bypass list is supplied and the name to be resolved bypasses the proxy.
  • PRECONFIG, PREVENT USING JAVA/SCRIPT/INS
    Agent retrieves the proxy or direct configuration from the registry and prevents the use of a startup JScript or Internet Setup (INS) file.

Do not check Internet connection
Normally RMA checks if computer is connected to Internet before performing "URL" test (to avoid appearance of Dial-Up dialog). With this option enabled RMA will not perform such check.

Following settings are used when access method is set to "VIA NAMED PROXY"
  • Proxy server
    address of your proxy server
  • Proxy port
    port number of the proxy server
  • Use proxy authentication
    if your proxy server requires authentication you may specify the username and password in these fields.
  • Proxy bypass list
    list of addresses that don't need to be accessed through your proxy server. This list may include IP addresses, host names, or names of computers from your intranet. Also, wildcards may be used as well to match domains, host names or addresses. For example: www.*.com; 128.*; *man*; and so on. For local addresses use the "<local>" macro. Use semicolons ";" to separate entries.

Performance Counter test related options

Windows implementation of performance counters has bugs. E.g., Windows 2000 (Professional, Server, and Advanced Server editions) can produce memory leak in PDH.DLL when user (application) querying performance counter that does not exist. This bug fixed in SP2. Also PDH.DLL does not work correctly with multithread applications.
That's why in RMA we have implemented several different methods to work with PDH.DLL:

  • MultiThread mode
    RMA works almost according to Microsoft documentation with some workaround to avoid most likely problems. Agent loads pdh.dll at once and uses it all the time. This method fast because RMA can start several tests simultaneously. If everything will work correctly on your system, use this method.
  • OneByOne mode
    Using this method agent will start Performance Counter tests one by one. This method is slow but using this method you may avoid problems due to a buggy pdh.dll
  • Smart mode
    With this method RMA will try to detect when pdh.dll has to be reloaded...
  • External
    Use external (perfobj.exe) utility to perform the tests. This is fast and most reliable method.


RMA Manager
To configure huge arrays of remote agents installed in different networks you may use RMA Manager. It allows you to change settings for hundreds of agents installed on remote systems at one time and from one comfortable location.


How to use

O.k., now when you have your agents installed in different networks, how to use them?
HostMonitor since version 4.0 supports a list of remote agents and can perform tests not only by itself but also may send a request to the agent which will then execute the test. Every test in HostMonitor has now an additional property: "Test by". By default it has the value "HostMonitor"; it means that the test will be executed by HostMonitor. Alternatively you may choose an agent from drop down list and the test will be performed by that agent.

How to check status of the agent

When you use single agent to perform various tests, you may want to setup Master test to check agent status. In such case HostMonitor may send single alert informing you about disconnected agent and hold dependant test items (so you will receive single alert instead of hundred warnings for all tests performed by this agent).
What test can you use as Master test?

- Passive RMA: It's pretty easy to check Passive RMA status when you do not use Backup RMA. You may use TCP test to check is RMA receives connections on specified TCP port or use Ping test performed by the agent to check localhost (127.0.0.1). Such Ping test will always return "Host is alive" status when successfully authenticated connection to the agent can be established.
If there is backup agent in use, you may setup Ping test performed by Passive RMA using rma itself string as target host name. In such case HostMonitor will check agent status without using backup agent even if such backup agent was specified for selected RMA

- Active RMA: Things a little more tricky when you need to check Active RMA status. Yes, you may setup the same "Ping localhost" test to check agent status. However this may lead to some delay in reaction as HostMonitor will not perform test if agent was connected but lost connection just a moment ago. HostMonitor may wait up to several minutes for new connection before changing test status to "Unknown". Dependant test items will be delayed as well so such delay is not a big problem, you will not receive a lot of alerts. However if for some reason you need to receive alert immediately, there is solution: setup Ping test using Active RMA and type rma itself string instead of localhost or target host name. In such case HostMonitor will display agent status immediately. HostMonitor will not use backup agent (if any) when specified agent is not connected; also HostMonitor will not wait for agent re-connection.


Known problems:

Windows 95, 98, ME, NT Workstation, Windows 2000 Workstation and Windows XP has a serious limitation: maximum length of the queue for pending TCP connections is limited to 5 items.
This limitation creates problems when you want to perform lots of tests by a single remote agent (e.g. monitoring many systems by a single agent that is installed on the system in the remote network).

Suggested solution:
To avoid possible rejections of requests caused by the queue overflow you should:

  • Install a Remote Monitoring Agent on Windows Server edition.
  • Or you may set parameter "Do not start more then [N] tests per second" to 5 or less. This option is located on Behavior page in the HostMonitors` options dialog.

Minimum system requirements

  • Windows 2000 Server/Workstation  
    Windows XP Professional
    Windows Vista Business
    Windows 7 Professional
    Windows Server 2003*
    Windows Server 2008
    Windows Server 2008 R2
Service Pack 4
Service Pack 3
Service Pack 2
Service Pack 1
Service Pack 2
Service Pack 2
Service Pack 1
  • Internet Explorer 6+
  • TCP/IP connection (LAN or Dial-up)
  • 5 MB of free disk space

Windows 2012 / Windows 8:
RMA agent can run on Windows 8 Pro and Windows Server 2012 however we do not recommend these systems due to some problems in Windows API related to Event Logs.

Windows x64:

  • RMA is 32-bit application, however it can be used on Windows x64 Edition running on x86-64 (AMD64) systems (not on Itanuim/IA-64). E.g. you can start RMA on Windows XP Professional x64 Edition or Windows Server 2003 x64 Edition.
  • If you are using Windows x64 Edition and you want to setup some ODBC test items, you should setup ODBC datasources using 32-bit ODBC Data Source Administrator (e.g. C:\WINDOWS\SysWOW64\odbcad32.exe).

How much does it cost?

When you purchase an Advanced Host Monitor ENTERPRISE edition you will get the license for 10 installations of the agent at no cost. Otherwise you may buy licenses in sets of 10 ($250 per 10 licenses) or in sets of 100 licenses ($900 per one set of 100). You may order Remote Monitoring Agent using credit card, Switch and Solo debit cards, check/money order or wire transfer. If you are concerned about submitting your order and/or credit card information online, you may order the license via phone, fax or postal mail.
Details..