For the majority of our use cases for Red Hat, we have on-prem deployments. There are some things that they are trying to spin up on AWS. I do not know if they are cloud-native apps or not, but I know our developers are now moving on to it.
I have been involved in the initial setup, upgrades, and migration of Red Hat Enterprise Linux. I did not have any problems while going from major OS versions. I always push new upgrades or homogeneous migrations, such as from version 6 to version 7 to version 8. There is probably an option to upgrade in place. Overall, with Red Hat OS, I have not seen many problems. A long time ago, when they went from Python 2 to Python 3, there were certain things we had to change in the script.
I know that Red Hat is moving to Wayland from X11, but I do not see any problems there. From Satellite 5 to 6, it was a bit hard in the beginning, but now, it is pretty self-explanatory. Overall, everything about which we had questions was very well documented.
In terms of our upgrade and/or migration plans to stay current, first, we look at the EOL and the roadmap of Red Hat because of security. We used to offer every single version before the said EOL happened, but now, we just do an n-minus-one. We try to maintain the newest and one level below version. SAP users are the biggest Red Hat Enterprise Linux users in our environment. They have a particular PAM and upgrade path that they have to do with Red Hat. We also wait to be certified to certain versions, but our main strategy is the newest and one major version down. We try to get everybody off the other versions.
Our provisioning is all done using VMware products. We have a vRealize automation, now called the Aria automation, to spin it up. Patching is done through Satellite. I do not do it, but when I watch them doing it, it seems it is just using remote SSH commands against the list of non-prod and prod servers. It is something simple. We do not seem to be doing anything complicated. I am wondering if there is a better way to do versioning control or patching and whatnot, but currently, it is very simple.
I am satisfied with the management experience not only in terms of patching but also the day zero to day one or day two stuff. We are interested in utilizing Ansible to eliminate human error and whatnot. During provisioning, we have Pearl scripts that we have to manually trigger. I know we can use Ansible for that, but it comes down to the cost of entry which is still very high.