Configuration Directories
The layout of the configuration follows the normal default Nagios setup. The directories described here are based on the runtime location defined during EMA installation.
…/nagios/etc
This is the root directory containing the configuration.
ema_resource.cfg
This file contains Nagios variables that are used in various object definition files. Variables already provided by the EMA should not normally be changed. Site specific customization can add new variables to this file as needed.
https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/configmain.html#resource_file
htpasswd.users
This file stores web console user passwords. Use the Unix/Linux command “htpasswd” to create new users or modify existing user passwords.
cgi.cfg
This file contains information for web console site configuration and most of its content should not be changed. But it also contains the permissions assigned to each user described in the htpasswd.users file. A web console user must be defined in both places.
nagios.cfg
This file contains Nagios primary system configuration information. There are many turntables in this file that can be used for site customization. The following are particularly interesting:
plugins.ini
This file is not a Nagios configuration file, but rather controls the behavior of various common Nagios support plug-ins. The EMA specifically configures the “check_by_ssh” plug-in for how problems are handled in the remote SSH connection to the Ingres hosts.
.../nagios/etc/objects
This directory contains the “object” configuration files.
The documentation for the definitions in configuration files in the objects directory and files in the host subdirectories (see below) can be found at:
https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/objectdefinitions.htmlThe EMA object hierarchy represents the types of objects you find in an Ingres installation. All the object definitions in the diagram below, except for the Specific Service Definitions, are template definitions that are not actually monitoring a service and only represent an object in the inheritance hierarchy. In a Nagios configuration file, these are defined using the “register 0” property.
The EMA configures the Nagios system to read every “.cfg” file in the etc/objects directory. Refer to the “Object Configuration Directory” setting in the main “nagios.cfg” file documentation.
The best approach to customizing a Nagios configuration is to use existing configuration files as an example.
The objects directory holds the system-wide configuration information. During setup, the EMA install procedure uses template files to generate the custom configuration for the site. These files can be identified by the suffix “@@“.
The files in this directory that are most likely to be modified for site customization are:
• hostname.cfg
• contact.cfg
• contactgroups.cfg
• ema_timeperiods.cfg.
hostname.cfg
This file contains the basic name of the monitored host and the FQDN. These will be the same name as defined during the configuration process.
contact.cfg
This is a generated file from a template and contains a specific name and email address that typically is used for alarms and notifications. You can add additional contacts for email alerts and notifications to this file.
contactgroups.cfg
A contact group is simply a collection of contacts. EMA uses a specific contact group “ema-admins” as the default for all alerts and notifications. Any contact added to the “contact.cfg” file should be added to the “ema-admins” group as well.
ema_timeperiods.cfg
This file controls service check schedules. All service checks run every three minutes 24x7x365. Customizing this file is for advanced users; it can be necessary at sites with complex operations schedules.
databases_unix.cfg
databases_win.cfg
These files, one for each host platform, contain the generic service definitions for checks that can be specified by database. By default the EMA does not provide services checks by database. It monitors all databases equally.
ema_commands.cfg
ema_commands_unix.cfg
ema_commands_win.cfg
These files, one that is common to all host platforms, and one each for UNIX/Linux and Windows host platforms, define every command that executes a plug-in. Service and host checks specify these command objects. There is not necessarily a one-to-one relationship between a service check and the command that check uses to monitor the remote service.
ema_contacts.cfg
This file contains the generic definition of contacts in the EMA. Defaults are provided for most Nagios contact configuration settings here.
ema_service_groups.cfg
There are several Nagios service groups defined by default by the EMA. They are a convenience only and show up on the Nagios web console.
ema_templates.cfg
This file defines most of the default behavior for various types of service checks on the EMA. More detailed descriptions of all the services options can be found at:
ingres_unix.cfg
ingres_win.cfg
These files, one for each host platform, contain all Ingres service check generic object definitions. Each host installation service check will inherit the definitions found here.
os_generic.cfg
os_unix.cfg
os_win.cfg
These files, one that is common to all host platforms, and one each for UNIX/Linux and Windows host platforms, contain all the operating system service check generic object definitions. Each host specific service check will inherit the definitions found here.
…/nagios/objects/hostname
A directory is created for each host you defined during the installation procedure. There is a file for the host itself and a separate file for each Ingres installation specified on that host.
host.cfg
This file contains a generic service definition for all services on this host and is inherited by all the host services. During the setup procedure the EMA picks the first Ingres installation specified as the location of the host-wide service checks, such as memory and disk use.
installation.installationcode.cfg
This file contains the unique service checks for a specific installation on a specific host. The primary definition in this file describes the installation object itself. Its primary purpose is to define the II_SYSTEM value of the installation.
The specific service checks inherit all their default behavior from their parent objects, including the installation definitions, and are normally very short.
…/nagios/ssh
This directory stores SSH information that is site specific and must be retained when patching or replacing the EMA Docker container. It contains standard SSH files that would typically be found in the $HOME/.ssh directory. The files in the ssh directory typically should not be modified or removed. More information can be found at
https://www.openssh.com/manual.html.
id_rsa
This is the private key generated for secure access to the remote Ingres host.
IMPORTANT! This file should be protected and not shared.
id_rsa.pub
This is the SSH public key that is placed on the Ingres server through the SSH tool command “ssh-copy-id”.
known_hosts
This file contains the SSH server host verification keys. It is created during the EMA installation and helps protect against security threats.