Health check issues after update to Katello 4.1.4

Today I’ve updated to Katello 4.1.4 on my Foreman 2.5.2 and now the foreman-maintain health check is constantly failing, telling that:


Check whether all services are running using the ping call: [FAIL]
Couldn’t connect to the server: undefined method `to_sym’ for nil:NilClass

Restarting the services then doesn’t change anything:

All services started
/ Try 1/5: checking status of hammer ping
Couldn’t connect to the server: undefined method to_sym' for nil:NilClass | Try 2/5: checking status of hammer ping Couldn't connect to the server: undefined method to_sym’ for nil:NilClass

in the foreman-maintain.log the failing service seem to be “katello_agent”:

D, [2021-10-01 08:03:48+0200 #30440] DEBUG – : Called /katello/api/ping
D, [2021-10-01 08:03:48+0200 #30440] DEBUG – : Response: 200, {“status”:“FAIL”,“services”:{“candlepin”:{“status”:“ok”,“duration_ms”:“28”},“candlepin_auth”:{“status”:“ok”,“duration_ms”:“65”},“foreman_tasks”:{“status”:“ok”,“duration_ms”:“7”},“katello_events”:{“status”:“ok”,“message”:“1 Processed, 0 Failed”,“duration_ms”:“0”},“candlepin_events”:{“status”:“ok”,“message”:“0 Processed, 0 Failed”,“duration_ms”:“0”},“pulp3”:{“status”:“ok”,“duration_ms”:“323”},“katello_agent”:{“status”:“FAIL”,“message”:“Not running”,“duration_ms”:“0”}}}

What’s wrong here??

Thanks!

forgot to mention:

foreman-maintain is rubygem-foreman_maintain-0.8.6-1.el7.noarch

do you see any errors/traceback in /var/log/foreman/production.log when running ‘hammer ping’ ?

There are no errors or tracebacks in production.log when running ‘hammer ping’, but what I see are some messages in /var/log/messages that may be related to it:

Oct 2 10:34:20 my-katello qpidd[101156]: 2021-10-02 10:34:20 [System] error Error reading socket: Encountered end of file [-5938]
Oct 2 10:34:20 my-katello qpidd: 2021-10-02 10:34:20 [System] error Error reading socket: Encountered end of file [-5938]

Thinking about disabling katello_agent now completely as it is already deprecated (and I’m using remote execution from the beginning).

So I will add:

katello::globals::enable_katello_agent: false
foreman_proxy_content::enable_katello_agent: false

to my custom-hiera.yaml and rerun the foreman-installer.

Is there anything else that I need to consider when doing that?

The correct way to achieve that is foreman-installer --foreman-proxy-content-enable-katello-agent false. Adding those to custom-hiera.yaml is probably going to create problems later on.

2 Likes

Thanks for pointing this out! Will run the installer again tomorrow morning (when I’ve a small maintenance window :))