Werk #17195: Combined clustering of discovered and enforced services

Component Checks & agents
Title Combined clustering of discovered and enforced services
Date Sep 24, 2024
Level Trivial Change
Class Bug Fix
Compatibility Incompatible - Manual interaction might be required
Checkmk versions & editions
2.4.0b1 Checkmk Raw (CRE), Checkmk Enterprise (CEE), Checkmk Cloud (CCE), Checkmk MSP (CME)

This only affects users that have clustered services that are enforced on some of the clusters nodes, and discovered on others.

If this affects you, we strongly recommend you change your configuration to enforce the services on all nodes (or none of them).

Previous behavior

In the case where a service was enforced on some nodes and discovered on others, the type of the resulting service on the cluster was determined by which service occured last in the list of the nodes. In case a discovered service was encountered last, the service on the node would have been a discovered one, being run with whichever parameters where configured on the cluster. In case an enforced service was encountered last, the service would appear as enforced service on the cluster, being checked with the parameters as configured in the "Enforces services" ruleset.

New behavior

We now changed the logic, such that enforced services always win, regardless of the order they are encountered in. This is in line with the behavior on an individual node where an enforced services always overrides a discovered one.

The parameters that are used for checking are derived by merging all encountered enforced services parameters, where the nodes precedence is defined by their order in the clusters definition. This again is in line with how Checkmk behaves in other situations when merging parameters.

However, to repeat: We strongly recommend to always configure the exact same enforced services on all nodes, in case they are clustered, to avoid any confusion.

To the list of all Werks