Checkmk Conference #6 goes digital. Get your tickets here!
The following overview shows all of the important files and directories applicable to the Checkmk Micro Core. All data paths relate to the instance's home directory. For example: if an instance is named mysite, then all of the paths are derived from /omd/sites/mysite.
1. Runtime data
|var/log/cmc.log||Here messages from starting and stopping the CMC can be found, as well as general warnings and error messages. The history for hosts and services (with Nagios, both are in nagios.log) is stored in its own data set and is thus not included here.|
|var/check_mk/core/||Directory with all CMC runtimes.|
|var/check_mk/core/config||The core's configuration. In Nagios this data equates to the data sets under etc/nagios/conf.d and contains all statistical data for hosts, services, groups, users and global settings.|
|var/check_mk/core/state||The core's current runtime state. This stores information on the current status of hosts and services, likewise downtimes, acknowledgements and commentaries. This data equates to the retention.dat data in Nagios, but it is however binary-coded. The data is updated regularly during processing and when when the core is stopped. If it is unavailable or incompatible when the core starts, the core will begin with an empty state.|
|var/check_mk/core/state-*||Backup copies of the status following a migration from an old CMC version, or when the CMC detects a large reduction in the number of hosts in the configuration. Thus you can return to the old status (and recover its downtimes and acknowledgements), e.g., if due to a configurations-error all hosts have been temporarily removed from the monitoring.|
|var/check_mk/core/core||The core-data is normally not present. If that is not the case, then this indicates an earlier core crash and aids the developers in locating the cause of the error.|
|var/check_mk/core/history||The history for all hosts and services is stored in text format in this file. This corresponds in its content and format to the nagios.log file in Nagios, with which it is largely compatible.|
|var/check_mk/core/archive/||Old versions of history are moved to this folder when the log files are rotated. Historic data can only be accessed with Livestatus and Multisite (events, availability) when this data is uncompressed.|
|tmp/run/live||The CMC's livestatus socket. This is in the same location as in Nagios. Because the CMC is livestatus-compatible with Nagios and Icinga, all extensions based on livestatus can be used without modification (e.g. NagVis).|
|tmp/run/cmc.pid||The CMC's current process-ID|
The CMC has no configuration data of its own. All settings for the CMC can be found in the Global Settings WATO module under Monitoring Core, and these are stored together with the other global options in etc/check_mk/conf.d/wato/global.mk.
|bin/cmc||Executable program for the CMC itself. This has been developed in C++, and apart from the standard C++ library requires no other libraries (in particular, no Boost). For testing purposes one can also activate the CMC by hand (Try it: cmc --help).|
|lib/cmc/checkhelper||A help process that is repeatedly started by CMC, and which takes over the efficient running of checks.|
|lib/cmc/icmpsender||A help process that is started by CMC and which takes over the sending of ICMP packages for the Smart-Ping. This MUST be installed with SUID-root.|
|lib/cmc/icmpreceiver||A help process that is started by CMC and which takes over the receiving of ICMP and TCP connection packages for the Smart-Ping. This MUST be installed with SUID-root.|
|etc/init.d/cmc||The Micro Core's start script|
|share/check_mk/web/plugins/wato/cmc.py||WATO extension with global settings and rule sets for the CMC.|
|share/check_mk/web/plugins/sidebar/cmc.py||A Sidebar plug-in for Multisite with CMC performance data.|
|share/check_mk/modules/cmc.py||Checkmk module that generates the configuration for the CMC.|
|share/check_mk/modules/rrd.py||Checkmk module for installing RRD data.|