Checkmk Raw Edition 2.4.0p20 running as podman container: Error running automation call service-discovery-preview: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

CMK version: Checkmk Raw Edition 2.4.0p20
OS version: Rocky Linux 9.7

Error message:

Error running automation call service-discovery-preview: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

Output of “cmk --debug -vvn hostname”: (If it is a problem with checks or plugins)

cmk does not work inside the container, it appears the CheckMK docker image is somehow missing useful features, like cmk amd SSL support for the webserver. But I have this stacktrace in the /check_mk/user_message.py page:

Failed to execute the test ACTestDeprecatedRuleSets: Traceback (most recent call last):
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 493, in _make_request
    conn.request(
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connection.py", line 500, in request
    self.endheaders()
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1333, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1093, in _send_output
    self.send(msg)
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1037, in send
    self.connect()
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automation_helper.py", line 84, in connect
    self.sock.connect(str(paths.omd_root.joinpath(AUTOMATION_HELPER_SOCKET)))
FileNotFoundError: [Errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/adapters.py", line 667, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 841, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/util/retry.py", line 490, in increment
    raise reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/util/util.py", line 38, in reraise
    raise value.with_traceback(tb)
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 493, in _make_request
    conn.request(
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connection.py", line 500, in request
    self.endheaders()
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1333, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1093, in _send_output
    self.send(msg)
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1037, in send
    self.connect()
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automation_helper.py", line 84, in connect
    self.sock.connect(str(paths.omd_root.joinpath(AUTOMATION_HELPER_SOCKET)))
urllib3.exceptions.ProtocolError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automations.py", line 130, in check_mk_local_automation_serialized
    result = executor.execute(command, args, stdin_data, auto_logger, timeout)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automation_helper.py", line 50, in execute
    response = session.post(AUTOMATION_HELPER_ENDPOINT, json=payload)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/sessions.py", line 637, in post
    return self.request("POST", url, data=data, json=json, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/opentelemetry/instrumentation/requests/__init__.py", line 333, in instrumented_send
    raise exception.with_traceback(exception.__traceback__)
  File "/omd/sites/cmk/lib/python3.12/site-packages/opentelemetry/instrumentation/requests/__init__.py", line 255, in instrumented_send
    result = wrapped_send(
             ^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/opentelemetry/instrumentation/requests/__init__.py", line 180, in instrumented_send
    return wrapped_send(self, request, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/adapters.py", line 682, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/analyze_configuration.py", line 174, in run
    for result in self.execute():
                  ^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3/cmk/gui/wato/_ac_tests.py", line 1374, in execute
    for r in find_unknown_check_parameter_rule_sets().result
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/check_mk_automations.py", line 571, in find_unknown_check_parameter_rule_sets
    _automation_serialized(
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/check_mk_automations.py", line 61, in _automation_serialized
    cmdline, serialized_result = check_mk_local_automation_serialized(
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automations.py", line 137, in check_mk_local_automation_serialized
    raise MKAutomationException(msg)
cmk.gui.watolib.automations.MKAutomationException: Error running automation call find-unknown-check-parameter-rule-sets: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

This does not work in Checkmk 2.4.0.

We highly recommend solving this issue already in your installation.

Affected sites: cmk

Details:

Failed to execute the test ACTestDeprecatedRuleSets: Traceback (most recent call last):
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 493, in _make_request
    conn.request(
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connection.py", line 500, in request
    self.endheaders()
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1333, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1093, in _send_output
    self.send(msg)
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1037, in send
    self.connect()
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automation_helper.py", line 84, in connect
    self.sock.connect(str(paths.omd_root.joinpath(AUTOMATION_HELPER_SOCKET)))
FileNotFoundError: [Errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/adapters.py", line 667, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 841, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/util/retry.py", line 490, in increment
    raise reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/util/util.py", line 38, in reraise
    raise value.with_traceback(tb)
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connectionpool.py", line 493, in _make_request
    conn.request(
  File "/omd/sites/cmk/lib/python3.12/site-packages/urllib3/connection.py", line 500, in request
    self.endheaders()
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1333, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1093, in _send_output
    self.send(msg)
  File "/omd/sites/cmk/lib/python3.12/http/client.py", line 1037, in send
    self.connect()
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automation_helper.py", line 84, in connect
    self.sock.connect(str(paths.omd_root.joinpath(AUTOMATION_HELPER_SOCKET)))
urllib3.exceptions.ProtocolError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automations.py", line 130, in check_mk_local_automation_serialized
    result = executor.execute(command, args, stdin_data, auto_logger, timeout)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automation_helper.py", line 50, in execute
    response = session.post(AUTOMATION_HELPER_ENDPOINT, json=payload)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/sessions.py", line 637, in post
    return self.request("POST", url, data=data, json=json, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/opentelemetry/instrumentation/requests/__init__.py", line 333, in instrumented_send
    raise exception.with_traceback(exception.__traceback__)
  File "/omd/sites/cmk/lib/python3.12/site-packages/opentelemetry/instrumentation/requests/__init__.py", line 255, in instrumented_send
    result = wrapped_send(
             ^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/opentelemetry/instrumentation/requests/__init__.py", line 180, in instrumented_send
    return wrapped_send(self, request, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3.12/site-packages/requests/adapters.py", line 682, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/analyze_configuration.py", line 174, in run
    for result in self.execute():
                  ^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3/cmk/gui/wato/_ac_tests.py", line 1374, in execute
    for r in find_unknown_check_parameter_rule_sets().result
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/check_mk_automations.py", line 571, in find_unknown_check_parameter_rule_sets
    _automation_serialized(
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/check_mk_automations.py", line 61, in _automation_serialized
    cmdline, serialized_result = check_mk_local_automation_serialized(
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/omd/sites/cmk/lib/python3/cmk/gui/watolib/automations.py", line 137, in check_mk_local_automation_serialized
    raise MKAutomationException(msg)
cmk.gui.watolib.automations.MKAutomationException: Error running automation call find-unknown-check-parameter-rule-sets: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

I don’t know how to reproduce it yet. I have another podman container on another machine which is running fine (still) with an almost similar set of hosts & services.