[Release] Checkmk stable release 2.5.0p11

Dear friends of Checkmk,

the new stable release 2.5.0p11 of Checkmk is ready for download.

This stable release ships with 42 changes affecting all editions of Checkmk,
3 changes for all commercial editions, 0 Ultimate specific,
0 Ultimate with multi-tenancy specific and 0 Cloud specific changes.

Support periods can be found here: Checkmk versions

Changes in all Checkmk editions:

Agent Bakery

  • 19223 FIX: Windows agent: Process agent updater output consistently…

Checks & agents

  • 20151 NetApp ONTAP SVM traffic: configurable latency levels…
  • 20148 netapp_ontap_if: Support the sfo_partners_only failover policy…
  • 20150 FIX: NetApp ONTAP: fix iSCSI latency calculation…
    NOTE: Please refer to the migration notes!
  • 22085 FIX: Agent version check: accept a full daily build version…
  • 20251 FIX: Cisco Meraki: handle disconnected power supply…
  • 20250 FIX: Cisco Meraki: handle unmapped device status…
  • 19717 FIX: Fetch correct OID for AKCP Sensor…
  • 19716 FIX: Fix TypeError during AKCP discovery…
  • 19714 FIX: Fix crash of AKCP checks on undocumented sensor status “0”…
  • 19142 FIX: Fix incorrect memory usage on ArubaOS-CX switches…
  • 20185 FIX: Prometheus special agent: fix wrong URL for reverse-proxied connections…
  • 22084 FIX: cmk_site_statistics: don’t crash when the site reports no core PID…
  • 20043 FIX: couchbase_buckets_operations: fix crash during service discovery of Couchbase buckets…
  • 20044 FIX: dell_poweredge_status: tolerate empty SNMP data…
  • 20141 FIX: livestatus_status: tolerate incomplete site status data…
  • 22086 FIX: mknotifyd: tolerate a missing timestamp in the agent section…
  • 20123 FIX: mkp add/inspect: Report unreadable files instead of failing silently…
  • 22082 FIX: mrpe: don’t crash on metric names the plug-in cannot use…
  • 19715 FIX: splunk: Fix exception in checkgroup_parameters:splunk_license_state…
  • 19144 FIX: systemd_units: Fix false alerts for unit names containing a period…

Core & setup

  • 20046 FIX: checkengine: Full support for mutiple special agent calls…
  • 20045 FIX: cmk CLI: show the error message instead of a traceback…

Linux distributions

  • 19581 FIX: Wrap rpm and journalctl to also use the system OpenSSL…
    NOTE: Please refer to the migration notes!

REST API

  • 19616 REST API: New endpoints for historical Event Console events…
  • 20023 FIX: Fix loss of site-specific global settings when editing a site connection via REST API…
  • 22083 FIX: REST API: report unknown hosts when creating a comment…

Setup

  • 18384 ConfigAnonymizer: Fixed some crashes related to unknown customer fields…
  • 19370 FIX: Analyze configuration: correct announced deprecation versions of legacy display hints and bakery plug-in API…
  • 19885 FIX: Fix crash when a predefined condition’s unique ID contains a dash…
  • 20232 FIX: Fix icon selectors blanking out all icons after a failed save…
  • 22057 FIX: Fix use of predefined conditions shared with contact groups…
  • 19478 FIX: LDAP group to user custom attributes or roles now agnostic between DN and CN…
  • 19933 FIX: Restore inline help on the rule edit page…

Site management

  • 19718 FIX: omd umount: Fix wrong exit code when run over all sites…

User interface

  • 20138 FIX: Crash report page without request details…
  • 20139 FIX: Crash reports view with broken traceback…
  • 20140 FIX: Crash reports view with unreadable time…
  • 22090 FIX: Fix unpredictable winner among views published by several users…
  • 20137 FIX: Main menu no longer crashes on visuals without search terms…
  • 18383 FIX: Network topology: improved performance when fetching data from the core…
  • 20136 FIX: Sidebar no longer crashes on unexpected default snap-in entries…

Changes in Checkmk commercial editions:

Agent Bakery

  • 20006 Remove SQLite3 from the Windows agent’s Python…
    NOTE: Please refer to the migration notes!

Checks & agents

  • 20122 Config sync: run reloads on MKP sync in parallel…

Reporting & availability

  • 20084 FIX: Reports no longer show Python stack traces for elements that fail to render…

Changes in Checkmk Ultimate:

NO CHANGES

Changes in Checkmk Cloud:

NO CHANGES

Changes in Checkmk Ultimate with multi-tenancy:

NO CHANGES

You can download Checkmk from our download page: https://checkmk.com/download

List of all changes: https://checkmk.com/werks?product=cmk&version=2.5.0p11

We greatly thank you for using Checkmk and wish you a successful monitoring,

Your Checkmk Team

Attempting to install check-mk-ultimate-2.5.0p11-el10-38.x86_64.rpm on Red Hat Enterprise Linux release 9.8 (Plow) gives these errors:

pre-compile bytecode (.pyc) for Python files..
/omd/versions/2.5.0p11.ultimate/bin/python3: /lib64/libm.so.6: version GLIBC_2.38’ not found (required by /opt/omd/versions/2.5.0p11.ultimate/bin/../lib/libpython3.13.so.1.0) /omd/versions/2.5.0p11.ultimate/bin/python3: /lib64/libm.so.6: version GLIBC_2.35’ not found (required by /opt/omd/versions/2.5.0p11.ultimate/bin/../lib/libpython3.13.so.1.0)
/omd/versions/2.5.0p11.ultimate/bin/python3: /lib64/libc.so.6: version `GLIBC_2.38’ not found (required by /opt/omd/versions/2.5.0p11.ultimate/bin/../lib/libpython3.13.so.1.0)

I know there have been a lot of changes around this recently, is this expected behavior?

@cultureunrented looks like you try to install the Red Hat Enterprise Linux 10 Version . try the el9 one

3 Likes

Yup that was it. Thanks.

Just imagine if the RPM would have told you itself that it was built specifically for RHEL 10 and you’re trying to install it on RHEL 9 :thinking:

%pre
if [ -r /etc/os-release ]; then

    . /etc/os-release

    major_version="${VERSION_ID%%.*}"

    if [ "$ID" = "rhel" ] && [ "$major_version" = "10" ]; then
        # Native RHEL 10
        :

    elif  [[ "$ID_LIKE" == *"rhel"* ]] && [ "$major_version" = "10" ]; then
        # RHEL-compatible EL 10
        echo "WARNING: This package is intended for RHEL 10." >&2
        echo "Detected: ${PRETTY_NAME:-unknown}" >&2
        echo "Potential compatibility issues may occur." >&2

    elif [ "$ID" = "rhel" ]; then
        # Wrong RHEL version
        echo "ERROR: This package requires RHEL 10." >&2
        echo "Detected: ${PRETTY_NAME:-unknown}" >&2
        exit 1

    else
        # Unsupported OS
        echo "ERROR: This package requires RHEL 10 or an EL 10 compatible distribution." >&2
        echo "Detected: ${PRETTY_NAME:-unknown}" >&2
        exit 1
    fi
fi

Maybe someone from Checkmk is reading this to :smiley:

1 Like

After upgrading from Latest 2.4.0pX → 2.5.0p11 on a testbox i kept getting ‘crit’ on amount of processes ‘automation-helpers’

  • omd status reported green all across the board
  • logfile on automation helper showed a clean startup (master+ helpers) , no errors at all.

In the end i decided to turn the automation helpers in omd config.

As to continue my investigation i flipped the switch on automation helpers again next day, only to find out that the observed service was not going back to crit.

Tonight i upgraded a 2nd testbox in the same way (this one is multisite), and again for both sites this specific helper processes went to crit after the upgrade.

Now, taking it as a shot in the dark, i flipped the automation-helper switch to off one site.
Restarted the site, and then again enabled it, and miraculously for both sites the issue went away.

I do not know as to why i had to deliberately/force-flip this switch in omd config to get this running, and its even more weird that on the multi-site box flipping the switch on → off and again off → on solved it for both sites…
But it worked :face_with_raised_eyebrow:

  • Glowsome

additional info, i have now upgraded the 3rd site ( production) , where again this service after a/the upgrade went to crit.
image

But when checking omd config the site’s setting already had/has the option automation helper switched to ‘off’.

So i have no clue as to why the UI is reporting this at all after an upgrade.

Enabling it after it was already disabled did not solve the service’s Crit state.

So i disabled it again, then did a rediscover services, and the service went away.
Then again enabled te option in omd config
As expected (having seen same behaviour on 2 other test-boxes), the service did not return as ‘crit’, but as OK.

Personal note: (may be experienced as shocking):
i have a bad feeling that since CMK exploded its employee numbers after the take-over its releases, choices and future aims are far from what the using community is able to take in.
Also from my personal, and above experience update quality control seems to be ‘less-then-optimal’.

From my personal standing, and using the ‘community’ -edition i am more then welcome to run the extra mile, but some basic things - like my issue posted above will need to get sorted at CMK itself.
One of those other items really botherig me is package building, like @LaSoe mentioned.
IMHO this is a basic requirement, and its been ignored for far too long.

  • Glowsome

The problem is a changed discovery rule for the automation helper processes.
Please rediscover this machine and the error message should be gone.

1 Like

If it was that simple i would’ve mentioned/stumbled over it ( and from memory i did rediscover the host(s) )…

But its running now .. if it works dont fix it :innocent:

The issue should not have appeared, thus would be curious to understand it better.
From 2.4.0p26 we added a forward-compatible mechanism as the process name changed to ensure that on upgrade this service actually doesn’t go CRIT. It captures processes with by matching ~(.*cmk-automation-helper.*|gunicorn:.*automation-helper). I have a hypothesis with regards to that: the autochecks still have the old matching logic, which is not migrated. Will look into that. That’s why Andreas’ proposal also works I think.


Regarding your meta feedback:
The change in the process discovery rules follows the wish to have better out-of-the-box monitoring for the Checkmk server in place. Something a lot of users have wished for a long time.
Previously, you couldn’t spot how a Checkmk instance performed pre-/post update with regards to key components. Now, for each process which plays in important role, you get CPU and Memory metrics.

What I hear from Checkmk partners as well as from users is that many of the changes in the last years have improved their experience. Stand-still is the death of software. Ask Ethan and Nagios back in 200x.
Automation helpers were introduced to increase the speed of Checkmk, i.e. when adding/removing/changing services. See for yourself: https://youtu.be/K0R1tGx2rxY?si=08i7pfJTsrYfaqwN&t=325

And with regards to package building. The issue mentioned exactly here has nothing to do with a wrongly built package or alike. The user just accidentally downloaded the wrong package. He downloaded the RHEL 10 package while his system is running 9.8. Happened to everyone and Lars’ change would not solve it, but helps highlighting the root-cause. But fortunately we have a helpful community here!

1 Like

I had the same issue on our prod instance, doing a discovery fixed it but in the first moment you think “what is wrong with you?” :slight_smile:

A fix is in the making. Too late for you, but let’s say you ‘experienced’ it for the sake of science :wink:

1 Like

Thanks all for reporting this! I am currently investigating this issue and I think I can shine some light on why this suddenly appears:

  • With 2.4.0p26 we changed the way the automation-helper process is discovered in a forward compatible manner, since we intended to change how the automation-helper is run and the old rule would not have worked with this.
  • In 2.5 we implemented the change to the automation-helper process, changing its name.

However, the match pattern from the discovery rule is copied into the discovered service at discovery time and never changed afterwards. So if you happened to discover the process on a pre-2.4.0p26 site, the service still carries the old pattern, no matter that the rule itself was updated. The 2.5.0 site then tries to match the old pattern against the new process name → this leads to a critical state. Unfortunately, the 2.4.0p26 pattern also turned out to be incomplete, so services discovered on 2.4.0p26 or later are equally affected after the update.

This also explains why a re-discovery fixes the issue: the current rule is applied and its pattern are persisted again, so everything works as expected. This is clearly an oversight on our side and should not have slipped through our QA process. I will try to raise this further with my colleagues, so we can avoid this kind of disruption in the future.

I am working on an update action, migrating the stored service parameters for both cases. This hopefully makes it into the next 2.5.0 release, so future updates to the latest version are safe.

Let me know if you have any further questions!

Cheers,

Robin

2 Likes

Robin fixed it.

1 Like