Skip to content

Latest commit

 

History

History
42 lines (31 loc) · 2.69 KB

File metadata and controls

42 lines (31 loc) · 2.69 KB

Remote execution workflow

When you run a remote job on hosts, {Project} selects a remote execution {SmartProxy} for each host by checking the host interfaces and subnets and balancing load across {SmartProxies}.

For custom Ansible roles that you create, or roles that you download, you must install the package containing the roles on your {SmartProxyServer}. Before you can use Ansible roles, you must import the roles into {Project} from the {SmartProxy} where they are installed.

  1. {Project} finds the host’s interfaces that have the Remote execution checkbox selected.

  2. {Project} finds the subnets of these interfaces.

  3. {Project} finds remote execution {SmartProxies} assigned to these subnets.

  4. From this set of {SmartProxies}, {Project} selects the {SmartProxy} that has the least number of running jobs. By doing this, {Project} ensures that the jobs load is balanced between remote execution {SmartProxies}.

If you have enabled Prefer registered through {SmartProxy} for remote execution, {Project} runs the REX job by using the {SmartProxy} to which the host is registered.

By default, Prefer registered through {SmartProxy} for remote execution is set to No. To enable it, in the {ProjectWebUI}, navigate to Administer > Settings, and on the Content tab, set Prefer registered through {SmartProxy} for remote execution to Yes. This ensures that {Project} performs REX jobs on hosts by the {SmartProxy} to which they are registered to.

If {Project} does not find a remote execution {SmartProxy} at this stage, and if the Fallback to Any {SmartProxy} setting is enabled, {Project} adds another set of {SmartProxies} to select the remote execution {SmartProxy} from. {Project} selects the most lightly loaded {SmartProxy} from the following types of {SmartProxies} that are assigned to the host:

  • DHCP, DNS and TFTP {SmartProxies} assigned to the host’s subnets

  • DNS {SmartProxy} assigned to the host’s domain

  • Realm {SmartProxy} assigned to the host’s realm

  • Puppet server {SmartProxy}

  • Puppet CA {SmartProxy}

  • OpenSCAP {SmartProxy}

If {Project} does not find a remote execution {SmartProxy} at this stage, and if the Enable Global {SmartProxy} setting is enabled, {Project} selects the most lightly loaded remote execution {SmartProxy} from the set of all {SmartProxies} in the host’s organization and location to execute a remote job.