Nagios has been wrapped by check_mk (a python based pre-processor), which in turn,
has been wrapped by OMD (Open Monitoring Distribution) to provide charting capabilities.
The OMD web site installs an older version. This documentation shows how to install
a slighter more recent testing version.
Modify /etc/apt/sources.list with (order may be important):
deb http://ftp.debian.org/debian/ stretch main
deb http://labs.consol.de/repo/testing/debian/ jessie main
deb http://labs.consol.de/repo/testing/debian/ stretch main
Will need to add the repository key:
wget --no-check-certificate https://labs.consol.de/repo/stable/RPM-GPG-KEY
apt-key add RPM-GPG-KEY
Update, search for, and install the package:
$ sudo apt-cache search omd
omd-1.31.20160718 - Open Source Monitoring Distribution, containing Nagios,
omd-daily - Open Source Monitoring Distribution
omd-labs-edition-daily - Open Source Monitoring Distribution
omd-2.11.20161019-labs-edition - OMD Labs Edition - Open Source Monitoring Distribution (Labs Edition),
$ sudo apt-get install omd-labs-edition-daily
Then a monitoring instance can be created:
sudo omd setup
sudo omd create site01
sudo omd config site01
sudo omd start site01
sudo su - site01
An agent can be installed to monitor the local machine:
ls -alt versions/default/share/check_mk/agents
sudo cp versions/default/share/check_mk/agents/check_mk_agent.linux /usr/local/bin
sudo cp versions/default/share/check_mk/agents/waitmax /usr/local/bin
Examine the output of the agent:
$ check_mk_agent.linux
< < < check_mk > > >
Version: 1.2.6p12
AgentOS: linux
AgentDirectory: /etc/check_mk
DataDirectory: /var/lib/check_mk_agent
SpoolDirectory: /var/lib/check_mk_agent/spool
PluginsDirectory: /usr/lib/check_mk_agent/plugins
LocalDirectory: /usr/lib/check_mk_agent/local
< < < df > > >
udev devtmpfs 1022472 0 1022472 0% /dev
... followed by lots more stuff ....
Login to the gui 'http://hostname/site01/check_mk/login.py' to add contacts and contact groups.
Then update etc/check_mk/main.mk to have something similar to:
# Put your host names here
# all_hosts = [ 'localhost' ]
all_hosts = [
'hostname|local|site01-checkmk|notifyNormal',
]
ipaddresses = {
'hostname': '127.0.0.1',
}
define_hostgroups = {
'site01-checkmk': 'site01 - check_mk',
}
host_groups = [
( 'site01-checkmk', ['site01-checkmk'], ALL_HOSTS ),
]
host_contactgroups = [
( 'email', ['notifyNormal'], ALL_HOSTS ),
]
datasource_programs = [
( '/usr/local/bin/check_mk_agent.linux', ['local'], ALL_HOSTS ),
]
Then inventory the host and reload the service, and monitoring should start:
cmk -II hostname
cmk -O
An over view of plugins available in check_mk:
Catalog of check plugins.
Check_MK and OMD: project started in 2010 by Mathias Kettner, a distribution of several monitoring cores (Nagios, Icinga, Shinken) and addons
As an addendum, OMD can be built from the repository. See Compile from Source:
#> git clone http://git.mathias-kettner.de/omd.git/
#> cd omd
#> ./configure
#> make
#> make pack
#> make setup
Note: Use 'make deb' or 'make rpm' instead of 'make pack && make setup' to build real system packages. I also note that the git repository has only v1.2.6p12 included at the time of this writing (changelog on Oct 1/2015), when on
check_mk download page, they have v1.2.6p16, 1.2.8p15 available with the RAW edition. The RAW edition might be superceding the OMD edition and might be the way to go in the future. I will need to try that through the above instructions during my next iteration.
Their main repository:
Mathias Kettner - GIT repositories