This section contains information about installing and creating an environment configuration for InfoHub.
InfoHub is available under the terms of the Affero GNU General Public License (AGPL) version 3, from Source Forge ( http://sourceforge.net/projects/fis-gtm). Contact FIS if you wish to obtain InfoHub under the terms of another license.
Ensure that you have a correctly configured installation of the following software:
Software |
Minimum Version |
Notes |
---|---|---|
GT.M |
V6.0-002 or above |
InfoHub requires a correctly installed distribution for GT.M V6.0-002 or above. For information on installing GT.M, refer to "Installing GT.M" chapter of the UNIX Administration and Operations Guide.
|
gtmposix |
63250_37800 |
InfoHub requires a correctly built gtmposix plugin. Infohub uses the gtmposix plugin to access POSIX functions available on POSIX platforms (UNIX/Linux). For more information on installing the gtmposix plugin, refer to readme.txt available in the gtmposix distribution available on sourceforge.net. |
Find or create a directory to hold your InfoHub distribution files and make that your current directory.
Example:
$ cd /opt
Unpack the InfoHub distribution to the current directory with a command such as the following (your UNIX version may require you to first use gzip to decompress the archive and then tar to unpack it; the tar options may also vary):
$ tar zxvf /Distrib/InfoHub/InfoHub.63344_62100.tar.gz
$ mkdir /opt/InfoHub/configs
Congratulations! InfoHub is now unpacked in the /opt/InfoHub directory. Proceed to InfoHub Environment Setup to set up a default environment.
Your InfoHub distribution comes with three Bourne shell environment setup scripts that automatically define InfoHub environment variables and display the commands to create an InfoHub database and a global directory if they do not already exist. These scripts are designed to give you a friendly out-of-the-box InfoHub operations experience. Even though you can perform normal InfoHub operations without using these scripts, it is important to go through these scripts to understand the how to manage environment configuration for InfoHub. These scripts are as follows:
-
infohub_site.sh
Contains placeholders for defining
ihsrcdir
(the source directory of your InfoHub distribution),gtmgbldir
(the InfoHub global directory which resides in the same directory as the InfoHub database and services), andgtm_dist
(the GT.M distribution used to run InfoHub).-
infohub_profile.sh
Sources
$HOME/infohub_site.sh
, creates an environment for InfoHub using the environment variables defined ininfohub_site.sh
. It displays commands to create an InfoHub database and global directory if they do not already exist. When it detects a misconfiguration, it displays the misconfigured environment variable name and stops execution.
To use these environment setup scripts, perform the following steps:
Copy
infohub_site.sh
to$HOME/.infohub_site.sh
.Use your favorite editor to open
$HOME/.infohub_site.sh
or customize it in place as 'custom_infohub_site.sh
' and set appropriate values for:ihsrcdir
: Path to the directory holding your InfoHub distribution files.gtmgbldir
: Absolute path to the global directory where you want to place your InfoHub database and InfoHub services.gtm_dist
: Path to the directory of the GT.M distribution (V6.0-002 or above) used to run InfoHub.
Source
infohub_profile.sh
on the command line or add the following command in your~/.profile
.$ source /path/to/infohub_profile.sh
When you source a infohub_profile.sh, it displays the commands to set up a default InfoHub environment (global directory and a default database) if none exists.
Execute the following command to load the server1.conf configuration file (discussed later in this document)
$ $gtm_dist/mumps -run InfoHub --action=configure --file=$ihsrcdir/configs/server1.conf
Execute the following command to start an InfoHub:
$ $gtm_dist/mumps -run InfoHub --action=start
Execute the following command to display the status of InfoHub with process listing:
$ $gtm_dist/mumps -run InfoHub --action=full
Execute the following command to shutdown an InfoHub:
$ $gtm_dist/mumps -run InfoHub --action=shutdown
Execute the following command to rundown an InfoHub:
$ $gtm_dist/mumps -run InfoHub --action=rundown
To perform any InfoHub operation without using the infohub_*.sh scripts, at a bare minimum, you need to set the following environment variables:
gtm_dist: Set the gtm_dist environment variable to point to the location of the GT.M distribution (which must be V6.0-002 or higher).
export gtm_dist=/usr/lib/fis-gtm/V6.0-002_x86_64
GTMXC_gtmposix: Set the environment variable GTMXC_gtmposix to point to the absolute location of gtmposix.xc.
export GTMXC_gtmposix=$gtm_dist/plugin/gtmposix.xc
gtmroutines: Set the environment variable gtmroutines to include the current directory and location of the InfoHub installation, here we used /opt/InfoHub, $gtm_dist and the location of the %POSIX.m routine (typically installed to $gtm_dist/plugin/r).
export gtmroutines="$PWD(/opt/InfoHub /opt/InfoHub/pipecmds /opt/InfoHub/plugins) $gtm_dist/plugin/o($gtm_dist/plugin/r) $gtm_dist"
gtmgbldir: Set the environment variable gtmgbldir to point to the location of the global directory for your InfoHub database.
export gtmgbldir=/path/to/InfoHub.gld
If you are not using the InfoHub environment setup scripts provided with your InfoHub distribution, set the minimum key and record sizes to 1000 and 4000 respectively and block size to 4096 for the global directory for your InfoHub database. The InfoHub Bourne shell Environment setup scripts run a GDE command file to automatically set these values for the InfoHub global directory.
For more information on performing InfoHub operations, refer to Starting an InfoHub, Monitoring (checking) an InfoHub, Restarting an InfoHub, Shutting down an InfoHub, Rundown an InfoHub, Troubleshooting (debugging) an InfoHub, and Purging an InfoHub.
The following table describes some files in your InfoHub distribution. Note that InfoHub Product Routines files are part of the core InfoHub product and the Reference Implementations files are examples using InfoHub. The Uptime and Log File Monitoring Reference Implementation (ULFM) is one of the ready-to-run implementations that monitors the output of the uptime command, operator log, and authentication log requiring any additional configuration.
InfoHub Product Routines | |
---|---|
IHsnmp.m |
Implements the InfoHub SNMP Adaptor that performs all SNMP Plugin operations. |
InfoHub.m |
Implements the InfoHub API for all InfoHub operations. |
InfoHubActionHandler.m |
Implements orderly execution of InfoHub actions. |
InfoHubConfigure.m |
Validates and loads an InfoHub Configuration File. |
InfoHubCfgExtract.m |
Implements extraction and listing of configuration files. |
InfoHubCli.m |
Implements parsing of InfoHub command syntax to invoke InfoHub actions actions. |
InfoHubCliParser.m |
Used by the InfoHub routine to parse the command line options. |
InfoHubDBSetup.m |
Routine that creates a temporary database environment (mumps.gld and mumps.dat) for each Publisher; if necessary, removes the existing temporary database. |
InfoHubError.m |
Implements the InfoHub's Error handler. |
InfoHubErrorMessage.m |
The collection of InfoHub Error messages with severity codes. |
InfoHubFileLine.m |
Implements the FileLine job. |
InfoHubJobs.m |
Used by the InfoHub routine to JOB a process and to obtain its status. |
InfoHubMain.m |
Implements the main InfoHub job. |
InfoHubNoInfo.m |
Implements the Subscription that detects no change of a configured value within a configured period. |
InfoHubNotify.m |
Implements basic InfoHub subscription triggers |
InfoHubPublisher.m |
Implements the Publisher job. |
InfoHubPurge.m |
Implements time-based removal of data from the InfoHub globals. |
InfoHubPipeLine.m |
Implements the PipeLine process. |
InfoHubProcessMonitor.m |
Implements detection of process failure and restart. |
InfoHubUtils.m |
Common utility routines for InfoHub. |
InfoHubVersion.m |
The file with the current version of the InfoHub. The version is taken from the release date in the form of $HOROLOG where an underscore replaces the comma. |
ULFM Reference Implementation files | |
LogFileGleaner.m |
A simple gleaner routine that prepends each line read with a key, 9999. The format of result is <key>:<line_read_value>. |
UptimeGleaner.m |
A gleaner program that processes the output of the uptime command. It separates the uptime command fields into the key value pairs |
SimpleMonitor.conf |
The InfoHub configuration file used to configure the ULFM Reference Implementation. |