icinga2/icinga-app/config/icinga2.conf.dist

209 lines
4.5 KiB
Plaintext
Raw Normal View History

/**
* Icinga 2 configuration file
* - this is where you define settings for the Icinga application including
* which hosts/services to check.
*
* The docs/icinga2-config.txt file in the source tarball has a detailed
* description of what configuration options are available.
*/
/**
* Global configuration settings
*/
local object IcingaApplication "icinga" {
pid_path = "./var/run/icinga2.pid",
//log_path = "./var/log/icinga2/icinga2.log",
state_path = "./var/lib/icinga2/icinga2.state",
macros = {
plugindir = "/usr/local/icinga/libexec"
}
}
/**
* Advanced logging settings
*/
local object Logger "my-debug-log" {
type = "console",
path = "./var/log/icinga2/icinga2.log",
severity = "debug"
}
/**
* The checker component takes care of executing service checks.
*/
local object Component "checker" {
}
/**
* The delegation component assigns services to checkers. You need to load
* this component even if your Icinga setup only consists of a single instance.
*/
local object Component "delegation" {
}
/**
* The compat component periodically updates the status.dat and objects.cache
* files. These are used by the Icinga 1.x CGIs to display the state of
* hosts and services.
*/
local object Component "compat" {
status_path = "./var/cache/icinga2/status.dat",
objects_path = "./var/cache/icinga2/objects.cache",
}
/**
* The compatido component works as idomod connector to a running ido2db
* daemon, connected via tcp socket only. It will dump config and status
* information periodically for now. By default, this remains disabled.
*/
/*
local object Component "compatido" {
socket_address = "127.0.0.1",
socket_port = "5668",
instance_name = "i2-default",
reconnect_interval = 15,
}
*/
/**
* This template defines some basic parameters for services that use
* external plugins for their checks.
*/
abstract object Service "icinga-service" {
2012-09-14 15:41:14 +02:00
methods = {
check = "native::PluginCheck"
}
}
/**
* The service template for ping checks. In an Icinga 1.x environment
* this would be defined as a check command.
*/
abstract object Service "ping" inherits "icinga-service" {
check_command = "$plugindir$/check_ping -H $address$ -w $wrta$,$wpl$% -c $crta$,$cpl$%",
macros += {
wrta = 50,
wpl = 5,
crta = 100,
cpl = 10
}
}
/**
* And finally we define some host that should be checked.
*/
object Host "localhost" {
services = { "ping" },
macros = {
address = "127.0.0.1"
},
check_interval = 1m
}
/**
* Below, an advanced example of checking a host and its services
*/
/*
* ping
*/
abstract object Service "ping4" inherits "icinga-service" {
check_command = "$plugindir$/check_ping -H $address$ -w $wrta$,$wpl$% -c $crta$,$cpl$%",
macros += {
wrta = 50,
wpl = 5,
crta = 100,
cpl = 10
}
}
abstract object Service "ping6" inherits "icinga-service" {
check_command = "$plugindir$/check_ping -6 -H $address6$ -w $wrta$,$wpl$% -c $crta$,$cpl$%",
macros += {
wrta = 50,
wpl = 5,
crta = 100,
cpl = 10
}
}
/*
* http
*/
abstract object Service "http" inherits "icinga-service" {
check_command = "$plugindir$/check_http -H '$address$' -I '$address$'",
}
/*
* ssh
*/
abstract object Service "ssh" inherits "icinga-service" {
check_command = "$plugindir$/check_ssh '$address$'",
}
/*
* local checks
*/
abstract object Service "disk space" inherits "icinga-service" {
check_command = "$plugindir$/check_disk -w '$wfree$' -c '$cfree$'",
macros += {
wfree = "20%",
cfree = "10%",
}
}
abstract object Service "current users" inherits "icinga-service" {
check_command = "$plugindir$/check_users -w '$wgreater$' -c '$cgreater$'",
macros += {
wgreater = 20,
cgreater = 50,
}
}
abstract object Service "total processes" inherits "icinga-service" {
check_command = "$plugindir$/check_procs -w '$wgreater$' -c '$cgreater$'",
macros += {
wgreater = 250,
cgreater = 400,
}
}
abstract object Service "current load" inherits "icinga-service" {
check_command = "$plugindir$/check_load --warning='$wload1$,$wload5$,$wload15$' --critical='$cload1$,$cload5$,$cload15$'",
macros += {
wload1 = 5.0,
wload5 = 4.0,
wload15 = 3.0,
cload1 = 10.0,
cload5 = 6.0,
cload15 = 4.0,
}
}
/*
* one advanced icinga2 localhost
*/
object Host "localhost-i2" {
services = {
"ping", "ping6",
"http", "ssh",
"current load", "total processes",
"current users", "disk space",
},
macros = {
address = "127.0.0.1",
address6 = "::1",
},
check_interval = 1m
}