A Foreman installation will always contain a central foreman instance that is responsible for providing the Web based GUI, node configurations, initial host configuration files, etc. However, if the foreman installation supports unattended installations then other operations need to be performed to fully automate this process. As these operations often occur on machines other than the Puppetmaster or Foreman host an autonomous web-based distributed component has been introduced.
A smart proxy is located on or near a machine that performs a specific function and helps foreman orchestrate the process of commissioning a new host. Placing the proxy on or near to the actual service will also help reduce latencies in large distributed organizations and as smart proxies also support caching this will allow users to share results without overwhelming the underlying server with queries and requests.