After version 3.12, RHEL 9 became supported for hosting Foreman components.
So we tried to switch from our old server (host1) to a new server we deployed (host4).
Everything was fine, and the new server is correctly responding to the trafic.
However, we couldn’t figure how to make the switch fore the content proxy.
At this time we have two content proxy running but only the former content proxy is bound to foreman content section.
We would like to know how to make the switch between old proxy-content to the new one ?
Former proxy is still present in the published at attribute of content view.
While we can force the host register to use the new one, all the default registration key, and publication still refer to host1 instance.
The setup is more B.
The link is present in the repositories view. https://app04/products/26/repositories/323
Here’s a screenshot.
Sorry, I had to redact out all the urls.
The actual foreman is running on app04 however it still connects to app01 for the katello section.
you have the main Foreman+Katello server (app04) and the external smart proxy (app01)
Previously you only used app04 and registered hosts to app04
Now you’ve added the external smart proxy app01, and wish to switch hosts’ registration and content consumption to app01.
Hopefully this is correct? let me know.
The “Change content source” feature is probably what you’re looking for. It will reconfigure the subscription-manager on each host to point to the new external smart proxy, without needing to reregister.
The “Published At” on the repository screen will not change AFAIU. Instead you’d just need to make sure that
the hosts’ lifecycle environment is synced on the external smart proxy (Infrastructure > Smart Proxies > app01 > Edit)
the Change Content Source procedure has been run for all hosts → Managing hosts
Smart proxies with content/Pulp have always had the Lifecycle Environments tab – it’s how you select what content to sync to your smart proxy.
I think there might be a misunderstanding on our end – from the screenshot above of your repository, it looks like app01 is your Foreman server? Since your haproxy stream repo is published at app01-blah, that means your primary smart proxy is on the app01 server.
Does that mean app01 and app04 are both Foreman/Katello servers? Or is app01 supposed to be the “primary” smart proxy where your Library synced content goes?
I’m curious what steps you took to set up app04 since there’s a bit of confusion about the infrastructure set up.
Does that mean app01 and app04 are both Foreman/Katello servers? Or is app01 supposed to be the “primary” smart proxy where your Library synced content goes?
Indeed, both are katello/foreman instances.
We started with the app01. The plan was to switch to app04 since only el9 is supported now with a safe fallback as app01 if the plan did not go well.
If you have set up a new Foreman instance, it will exist completely outside your old one, and know nothing about it.
On the new Foreman instance, you will have to
import a manifest (if using Red Hat content)
create products/repos and sync all your content again
create all your content views / lifecycle environments and publish, if applicable
create new activation keys
Generate a new registration command for host registration
On your existing hosts, you will have to run subscription-manager clean and then run the generated command to reregister your hosts.
Then, you can decommission the old Foreman instance.
In hindsight, I would not have recommended this path – a LEAPP upgrade of the old instance probably would have been easier. But this is what you can do now, if you want to use the new instance you created.
And to clarify some more: One Foreman instance should not be registered to another, or configured to use the database of another, or be connected in any way.
We did HA for several years from 2.x to 3.1 in a previous job without any issue but the notification.
We were running around 3k vms with 2x instances of foreman.
I think rails is inherently HA ready so what is preventing foreman to be HA ?
I’d like to consider diferent options before rebuilding an complete external foreman:
Could we just remove the app04 and do a leapp upgrade of app01 ?
Is it possible to move the proxy-content to another host ?