NCCM stands for Network Configuration and Change Management. It keeps track of the configs of your nodes, and any changes that happen to them over time. It is stored in its own database, alongside compliance which is heavily dependant on it. You can view these tables in the Custom data form in the admin section.
The Nccm_selections table keeps track of all nodes that are maintained in the NCCM. These can be nodes in YCE or the CMDB. It has the following attributes:
The Next_poll_time and how many Failed_polls should be tolerated are dependent on the node's polling groups.
Polling groups can contain a number of node groups. A node can therefore have more than one polling group. If any attributes conflict for such a node, the minimum value is picked. A polling group has the following attributes:
The Nccm_data table keeps track of all nccm polls. Since these tables can grow quite large, they are split into weekly tables for added stability. The table Nccm_data_all and Nccm_data_quarter combine those together into just one table for all records, or all records of the past three months respectively. They have the following attributes:
The Nccm_diff table contains the actual configs. Their records correspond one-on-one to the Nccm_data table, linked by their Nccm_id. This table too is split in weekly tables, and they are combined together in the Nccm_diff_all and Nccm_diff_quarter tables. This is where the Baseconfig_ids come in. Since most changes in configs only relate to a part of a config, saving the whole config for every single poll would create a lot of waste. Base configs are therefore saved as whole configs, and diffs just store the lines that are different from their base config.
The Nccm_diff tables have the following attributes:
Please note that any text that changes every time (for example cyphers and timestamps) are filtered out so that they don't trigger false positives. We also filter out passwords for security reasons.
Main article The NCCMD Daemon