Knowledge Document: Icinga Monitoring Tool Configuration for Retain


SLES Linux 15 SP3
Retain Unified Archiving


Install and configure Icinga: Ensure that you have Icinga installed and properly configured on your system. Refer to the official documentation ( for detailed installation instructions specific to your operating system.


How to add the Retain: User Frontend and Search functionality in the Icinga Monitoring tool


To add the Retain: User Frontend and Search functionality in the Icinga Monitoring tool, make the below configuration changes.

1. Define the host: Open the Icinga configuration file (/etc/icinga/objects/hosts.conf or a similar location depending on your installation). Define a new host by adding a configuration block. Here's an example:

                       object Host "YourHost" {
address = "IP ADDRESS" // IP address or hostname of the host
check_command = "hostalive" // Icinga check command to use
max_check_attempts = 3 // Maximum check attempts before considering the host
check_interval = 5m // Interval between checks
retry_interval = 1m // Interval between retries if check fails
vars.os = "Linux" // Additional host variables if required
// Add more host-specific configuration if needed

Adjust the parameters according to your environment and requirements.

2. Define services: Open the services configuration file (/etc/icinga/objects/services.conf or a similar location). Add a new service definition for the host you defined in the previous step. Here's an example: Index Configuration:

apply Service "URI Check" {
import "generic-service"
check_command = "httpauth"
vars.http_uri = "/hpi/index.html"
vars.http_host = "YourHost"
vars.http_port = "port" //replace with your index port
vars.http_ssl = true
vars.http_expect_status = "200"
vars.http_auth = "username:password" //
replace with your username and password
assign where == "YourHost"

Retain Configuration:

apply Service "URI Check1" {
import "generic-service"
check_command = "http"
vars.http_uri = "/RetainServer/Manager/login.jsp"
vars.http_host = "YourHost"
vars.http_expect_status = "200"
assign where == "YourHost"

3. Open the commands.conf file in your Icinga configuration directory (usually located at /etc/icinga2/conf.d/commands.conf). Add the below configuration for it to use the credentials in the service definition.

object CheckCommand
"http-auth" {
import "plugin-checkcommand"
command = [ PluginDir + "/check_http" ]
arguments = {
"-H" = "$http_host$"
"-I" = "$http_ip$"
"-S" = {
set_if = "$http_ssl$"
"-p" = "$http_port$"
"-u" = "$http_uri$"
"-a" = "$http_auth$"
vars.http_ssl = false

4. Save the configuration file and validate it using the Icinga command-line tools:
icinga2 daemon -C

5. If the configuration is valid, restart the Icinga service:
sudo systemctl restart icinga2

Access article on support portal


Knowledge Docs
Comment List