Remote Management Service (RMS) - User Guide

Introduction

What is RMS?

Remote Management Service (RMS) utilises the permanent connections between the Gateway and the Netprobes to provide the following facilities:

  • PUT files from the Gateway node to the NetProbe nodes
  • GET files from the NetProbe nodes to the Gateway node
  • Add COMMENTS to your task
  • EXEC in bulk commands on the NetProbe nodes. Output from the commands is made available in a .log file on the Gateway.
  • View and Edit files using an editor in ActiveConsole, typically before or after running PUT/GET commands.

PUT, GET, EXEC and COMMENT commands can be grouped into Tasks.

A task has the following functionality

  • scheduled to run at a specified time
  • scheduled to run at a on a regular basis
  • stopped and rescheduled by a User at any time
  • a user may view the progress of a task, as it runs
  • a timeout, per host, can be defined, so tasks exceeding a specified run time on a host will be abandoned on that host. Any further hosts in a task list will continue
  • halt time can also be specified. A task running when the Halt time occurs will be automatically terminated. This can be used to prevent resource consuming tasks, running during trading hours

The following examples show how RMS can be used:

  • Upgrade NetProbe version on remote nodes - uses self-upgrading NetProbe functionality.
  • Check that a number of remote nodes have identical sets of data files compared to the master node, and produce an inconsistencies report.
  • Run commands to collect remote node configuration parameters.

Security

RMS is fully integrated into Geneos. See Auditing.

NetProbe will by default allow the following commands:

  • GET, PUT or COMPARE files in the local NetProbe directory
  • EXEC $RESTART
  • EXEC $LAUNCH
  • EXEC $ROLLBACK
  • EXEC $SHUTDOWN

To enable other commands, an environment variable called PERMISSIONS must be set on the NetProbe host to

  • RMSCOMPARE to enable COMPARE
  • RMSPUT to enable PUT
  • RMSGET to enable GET
  • RMSEXEC to enable EXEC

Permissions can be combined using a plus sign. So for example, to enable PUT and EXEC, set PERMISSIONS to RMSPUT+RMSEXEC.

Alternatively PERMISSIONS can be set to RMSALL to enable all.

License

Where RMS is used to work with files outside the NetProbe directory a RMS license is required.

Functional Overview

Introduction

RMS functionality is managed by the Gateway with the ActiveConsole used as a user front end.

Central to the RMS functionality is definition of a task. A task is a sequence of PUT, GET, EXEC and COMPARE commands together with a list of target hosts.

When the task is executed it completed all commands for one target host before moving to the next. Log file of the task's progress is generated as the task executes.

Scheduler

RMS user interface is centered around the scheduler window. The scheduler is used to manage the tasks.

A task can be in one of following states:

Unscheduled

A task with no time set as to when it should be run.

Waiting

A task with a run time set, that is waiting for that time to arrive, or is ready to run but waiting for another task to complete.

Running

A task that is currently being processed. Only one task can be running at a time.

Completed

A task that completed its execution.

Tasks

A Tasks contains a list of commands to be executed in the order they appear. The following commands are supported:

PUT command

PUT <from file> <to file>

The PUT command will copy a file from a gateway node to the nominated remote node(s).

<from file> specifies the file on the gateway.

<to file> specifies the file on the remote node(s).

The paths can be absolute or relative. If relative paths are specified, they will be taken relative to the Gateway and NetProbe directories. Wild cards are not allowed.

GET command

GET <from file> <to file>

The PUT command will copy a file from a gateway node to the nominated remote node(s).

<from file> specifies the file on the remote node(s).

<to file> specifies the file on the gateway.

The paths can be absolute or relative. If relative paths are specified, they will be taken relative to the Gateway and NetProbe directories. Wild cards are not allowed.

COMMENT command

COMMENT <text>

The COMMENT command is used to put comment lines into a task to remind users in the future of the purpose of various other commands within the task.

EXEC command

EXEC <instruction>

The EXEC command will cause Unix command execution <instruction> on the nominated remote nodes. The instruction is typically a UNIX shell command, an executable file or a shell script. The <instruction> can contain spaces.

Output from the executed commands is logged to the task log file.

It is not required to have trusted hosts set up on UNIX.

An <instruction> of $RESTART causes the NetProbe to restart itself with the name of the new executable supplied by the first parameter This allows for automatic upgrades of NetProbes without login to the host. See the 'Example' section of this manual.

Node selection

A task has a list of remote NetProbe nodes associated with it.

All the commands are processed for each node on the list in turn.

Task Log

A task has a log file associated with it.

This file contains the log of processing the task, a summary of any errors, and the output (if any) from EXEC commands.

Every time a task is rescheduled the log file is overwritten.

User Interface

SCHEDULER WINDOW

The Scheduler managers the tasks for each of the Gateways connected to the ActiveConsole.

The Gateway is selected via the Gateway selector at the top of the window.

netprobe-rms2

Legend

Name Description
Gateway Drop down menu of gateways known to the Active Console / NAM
Gateway Time The current time on the selected Gateway
Task The name of the task
State Task state - waiting, scheduled, completed
Schedule Time Time task is/was scheduled for running
Repeat Repeat frequency = None / Daily / Weekly / Monthly
Completion Time The time the task last completed

The task control buttons at the bottom of the window have the following functionality:

Name Description
New Add a new empty task to the scheduler list
Copy Create a new task and copy the currently selected task to it
Rename Rename a selected task
Edit Opens the Task Editor window (see below)
Delete

Removes a selected task from the scheduler.

A running task must be stopped prior to deleting it

Stop Stops a running task
Schedule Opens the Task Schedule Time window (see below)
Unschedule Unschedules the selected task
View Log

Shows the progress / errors / output of a selected task

Automatically overwritten each time a task is run

Show Scheduled Opens a view showing Running task and a list of waiting (scheduled) tasks
Quit Closes the scheduler window

TASK EDITOR WINDOW

The Task Editor is invoked by the Edit button in the Scheduler window, and contains two views TARGET HOSTS and TASK DEFINITION.

After a task is edited it must be saved using the 'Save' or 'Save As' options in the File menu.

Task Definition View

netprobe-rms3

Legend

Name Description
Description A description for the task
Start Halt Time Specifies the start of a period of time when the task will not be run
End Halt Time Specifies the end of a period of time when the task will not be run
Timeout per host

A task exceeding this value will abort on the specified host.

Further hosts in the task list (if any) will continue to be processed


The task edit buttons at the bottom of the window have the following functionality:

Name Description
Add Command

Adds a new command to the task.

The command will be inserted after the selected command. Commands are run in the order they appear in the list - top to bottom.

Edit Command A facility to edit the selected command
Move Command A facility to move the order of the selected command
Remove Command Removes the selected command
Edit Master File

A facility to edit the Master File.

By default Master File is the first parameter to the PUT and COMPARE commands. This can be changed per command when command is edited.


Target Hosts View

netprobe-rms5

Legend

Name Description
Select All Selects all the hosts
Clear All De-selects all the hosts
Select by partial name Will select all hosts that contain the text specified, in addition to any already selected.
Select by attribute, where

Will select all hosts that have the ATTRIBUTE as specified, in addition to any already selected.

Note: If attribute is $TYPE = , then any matchnig hosts will be selected instead of any already selected and not in addition to.


If this is the first time the host list is being defined for the task, then all the hosts for the currently selected Gateway are shown in the list.

If the host list already exists for the task, only the existing host list is shown.

Note: When a new host is added to the Gateway it will not be automatically added to the existing host lists. In this case it is recommended to manually add the host to the list by editing the .hdf file on the Gateway - see Gateway Files section.

Selected hosts have a purple dot in the Select field.

Hosts can be selected by clicking on the individual host select field to toggle its selection status.

To speed up this process Selection Control panel at the top of the window can be used.

APPENDIX

RMS internal files

The Remote Management Service is built into the GENEOS Enterprise Management Framework. Running NetProbes on the managed nodes, one or more Gateways and one or more ActiveConsoles is therefore a pre-requisite to RMS.

RMS creates files on the Gateway host, which by default reside in the Gateway directory.

It is advisable to use a separate directory for RMS source files, which is achieved by setting the RMS_DIR environment variable on the gateway. It is also possible to put all log files etc. into a separate directory as specified by the gateway variable RMS_ADMIN.

The following files are automatically created and maintained by RMS. All files are ASCII. When the Gateway is restarted, the RMS will start in the state just before the restart.

Scheduler.txt

The scheduler contents is stored in this file. The Gateway reads this file on start up and while it is running it will modify this file as the scheduler contents changes. There can only be one scheduler file per Gateway. If the scheduler file does not exist, the Gateway will create an empty one on start up.

<task>.tdf

This files store task definition.

<task>.hdf

These files store the list of remote nodes associated with a task.

<task>.log

The log of a task's activity is stored in these files.

RMS Exec Commands

Using RMS to upgrade Netprobes

The RMS can be used to remotely upgrade Netprobes. A special parameter to the EXEC command,

"$UPGRADE" and "$RESTART", are provided for this purpose.

Note: These commands ARE case sensitive.

e.g

EXEC $UPGRADE and EXEC $RESTART

For example, to upgrade a NetProbe to netprobe.v20021004, create a task with these commands:

EXEC $UPGRADE
PUT netprobe.solaris netprobe.solaris
EXEC $RESTART

This example assumes that the source file is located in the default gateway directory, and the target file is to be put into the default NetProbe directory. A copy of the existing netprobe will be made to <filename>.old.

Full paths to the files can be specified.

Note: If pathnames are specified, this would require a full RMS licence, obtainable from your Geneos vendor.

Using RMS to launch scripts and return immediately

EXEC $LAUNCH <script or batch filename>

Note: The underlying argument used here is execvp on Unix and _popen on Windows.

Using RMS to roll back probe versions

EXEC $ROLLBACK
EXEC $RESTART

For unix only, recovers from an RMS upgrade, it renames the <binary> to <binary.temp> and <binary.old> to <binary>

Needs to be followed up by $RESTART which will start the probe that was running prior to the upgrade.

Using RMS to shut down a probe

EXEC $SHUTDOWN

This will cause the probe to exit immediately.