Upgrade path from old version

I’m running a fairly old version of Foreman + Katello. Foreman is 2.1.4 and Katello is 3.1.6. I’m getting started on getting RHEL 9 ready for deployment, so I figure I should probably get Katello updated first. Is an upgrade still possible and/or recommended? I think I have to go through every 2.x and 3.x version to get there, correct?

At the same time, Katello is running on RHEL 7.9, and I really wouldn’t mind getting that onto 8, so now I’m looking at a server migration as well. What’s the right way to handle migrating all of my environments, configurations, and hosts?

Thanks in advance for any advice and suggestions.

Hi and welcome :slight_smile:
To answer your basic question: Yes, it is still possible to upgrade from an old version, but as you already mentioned yourself, you will have to upgrade through every 2.x and 3.x release one-by-one. For an EL8 upgrade, there is documentation available for an inplace upgrade once you reach a version where running on both EL7 and EL8 is supported:
https://docs.theforeman.org/3.2/Upgrading_and_Updating/index-katello.html#upgrading-foreman-or-proxy-in-place-using-leapp_upgrade-guide
These are the docs from 3.2, which is the version we ran our inplace upgrade on, but the upgrade should work on all version that support both EL7 and 8.

If you prefer starting from scratch and migrating over, there is no easy/standard way. You will pretty much have to setup the new instance to the point where everything is the way it should be and then start migrating your client systems over. The easiest way is probably using REX from your old system to trigger the migration, but you will have to develop the job yourself or search the forums if someone left useful notes somewhere. There have been some threads on this topic recently, so you might be lucky.

Thanks, I appreciate it. Sounds like the upgrade path is the way to go. Is there still any documentation out there for the 2.1->2.2 and 2.2->2.3 upgrades?

Do I need to update the clients at each point upgrade, or just at the 3.0 upgrade, or just at the end?

Any major items I should be aware of in that process, like a puppet upgrade that could break modules?

The older documentation:
Upgrading and Updating Foreman server and Foreman :: Plugin documentation index

Looks like I have a bunch of Katello upgrades to do to get from 3.1 to 3.18. Does anyone know if I have to do every single one, or can I skip some? It looks like I can possibly go 3.1 → 3.4 → 3.5 → 3.6, then hit all the even-numbered releases?

As you already found the documentation, I skip this.

You will likely need to update also some client packages like puppet and katello-host-tools.

Skipping releases is not supported and I would also not recommend it as it needs nearly the same time to verify if an upgrade could be skipped like simply updating. But as the Red Hat Satellite is also based only on every second release you can try to skip.