Satellite is not processing remote execution tasks
Environment
- Red Hat Satellite 6.12+
Issue
-
Satellite is not processing remote execution jobs.
dynflow details of the task show no error, no warning, and no processing attempt, and every step is pending.
Actions::RemoteExecution::RunHostJob running pending
Actions::RemoteExecution::ProxyAction (suspended) Cancel
Actions::RemoteExecution::RunHostJob (pending)
Resolution
-
Refer to the Diagnostic Steps section to identify the Transport Mode used by Satellite/Capsule. Transport mode is Capsule specific configuration, and it defines how the Capsule sends the job to the client. Different Capsules can have different transport modes.
Note: Capsule here can include the internal Capsule running on the Satellite as well.
-
If Pull-MQTT is not the preferred transport mode for the Satellite/Capsule, reset the mode to
sshto enable default push mode.satellite-installer --reset-foreman-proxy-plugin-remote-execution-script-modeThe command has to be executed on the Capsule(or Satellite) the client(s) are registered with.
-
If Pull-MQTT (Pull-based Transport) is the preferred transport mode, ensure the clients associated with the pending jobs are configured with client-side agent. Refer to the documentation for the steps to configure the client-side agent.
For more KB articles/solutions related to Red Hat Satellite 6.x Remote Execution Issues, please refer to the Red Hat Satellite Consolidated Troubleshooting Article for Red Hat Satellite 6.x Remote Execution Issues
Root Cause
-
The remote execution jobs can get stuck in pending state for the following reasons.
- Pull-MQTT was configured as the transport mode unintentially on the Satellite/Capsule.
- Pull-MQTT was configured on the Satellite/Capsule but the client(s) were not configured with the Pull-MQTT client-side agent.
Diagnostic Steps
-
Check the mode set in remote execution configuration (
/etc/foreman-proxy/settings.d/remote_execution_ssh.yml) for foreman-proxy.grep mode /etc/foreman-proxy/settings.d/remote_execution_ssh.yml :mode: pull-mqtt -
As an alternative to
remote_execution_ssh.yml, we can check the current setup from thesatellite-installercommand.satellite-installer --full-help | grep remote-execution-script-modeLook for the
Operation Mode of the pluginline.--foreman-proxy-plugin-remote-execution-script-mode Operation Mode of the plugin. (current: "pull-mqtt")
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.