At least with the Smart Proxy Templates module there is the option template_url
, which is the external URL which clients should use. In a load balanced setup, the user is expected to use --foreman-proxy-template-url $URL
. That can point to a load balancer. The registration module reuses this setting. Similarly, the Pulp plugin has a setting for the RHSM URL, but that’s automatically set to the common name on the certificate (I think --certs-node-fqdn $LB_HOSTNAME
).
It is at best a workaround because in the UI you still select just a single Smart Proxy, but it should allow you to move forward even today without any code changes.
Many years ago we already talked about adding an entity in Foreman which has 1 or more Smart Proxy instances so Foreman would understand the topology. It depends on the Smart Proxy module whether this is needed.
With that knowledge, I’m on your proposal.
This is basically rewriting the entire design. Today we have the Smart Proxy which knows its external URLs. Everything is auto discovered and you can just register a new Smart Proxy. Your proposal rewrites that. Suddenly you have to modify everything where the Smart Proxy settings are used and apply logic to change those settings.
Can you elaborate how your solution improves the situation over what we have today?
Can you elaborate what use this is?