You can configure {Project} to use push-based (SSH) or pull-based (MQTT) transport for remote job execution. Each {SmartProxy} uses one mode. Choose push for slightly better scalability in larger deployments or pull if your organization restricts the ports needed for SSH.
- Push-based transport
-
On {SmartProxies} in
sshmode, remote execution uses the SSH service to transport job details. This is the default transport mode. The SSH service must be enabled and active on the target hosts. The remote execution {SmartProxy} must have access to the SSH port on the target hosts. Unless you have a different setting, the standard SSH port is 22.This transport mode supports both Script and Ansible providers.
- Pull-based transport
-
On {SmartProxies} in
pull-mqttmode, remote execution uses Message Queueing Telemetry Transport (MQTT) to initiate the job execution it receives from {ProjectServer}. The host subscribes to the MQTT broker on {SmartProxy} for job notifications by using theyggdrasilpull client. After the host receives a notification from the MQTT broker, it pulls job details from {SmartProxy} over HTTPS, runs the job, and reports results back to {SmartProxy}.This transport mode supports the Script provider only.
To use the
pull-mqttmode, you must enable it on {SmartProxyServer} and configure the pull client on hosts.
|
Note
|
If your {SmartProxy} already uses the # {foreman-installer} --foreman-proxy-plugin-remote-execution-script-mode ssh
|