Automating Leapp upgrades using Oracle Linux Automation Manager

December 6, 2023 | 4 minute read
Monica S
Technical Product Manager
Text Size 100%:

Oracle Linux Automation Manager, based on the open source AWX project, is an enterprise automation solution for provisioning, deployment, configuration management, and task automation. With a centralized management user interface, it provides workflow management, role-based access control, job scheduling, integrated notifications, and graphical inventory management.
The Leapp utility provides a framework for updating and upgrading of both Oracle Linux operating systems and applications. It is beneficial in scenarios where in-place upgrades can be carried out without the requirement of reinstalling the entire operating system, and simplifies an in-place upgrade to a major Oracle Linux release.
Combining the automation capabilities of Oracle Linux Automation Manager with the upgrade framework of Leapp – in other words, automating Leapp upgrades – can significantly reduce manual work and the time involved in those important operations. Together, both technologies provide the option to scale while managing in-place upgrades for tens or hundreds of systems or more.
Exploring the practical side, let's see how we can integrate these solutions with a few straightforward playbooks, while keeping the process simple.

Process

  • It is essential to understand how the Leapp procedure works, including its steps and limitations. Refer to the documentation for a detailed understanding.
  • The playbooks are available at Oracle's Github repository Ansible-collections. Ansible-collections repository has a wide range of example playbooks curated by Oracle that aids in automating operations with Oracle Linux, Oracle Cloud Native environment, Oracle Linux Virtualization Manager, and Oracle Cloud Infrastructure. Playbooks help you tackle most of the admin tasks, from simple OS updates to more complex STIG implementation solutions.
  • Setup required resources - Projects, Inventories, Templates, and Credentials from Oracle Linux Automation Manager.
  • Create a separate Template for each of the playbooks: leapp_prepare.yml, leapp_preupgrade.yml, leapp_upgrade.yml, and post_upgrade.yml. Add extra variables if required as mentioned in the playbook.

olam_leapp_1

Playbooks

The scope of following playbooks is for upgrading Oracle Linux 7 machines to Oracle Linux 8. Here's a quick overview of each playbook's functionality.

  • leapp_prepare.yml - Along with other configuration changes, this playbook prepares the machine for the Leapp upgrade. As part of the process, it installs the necessary Leapp packages and also performs a yum update.

olam_leapp_2

  • leapp_preupgrade.yml - After executing Leapp Preupgrade, this playbooks displays Inhibitors (if any) on the user interface. Inhibitors could differ from one machine to another. It is essential to review and remediate each Inhibitor before moving to the upgrade phase.

olam_leapp_3

  • leapp_upgrade.yml: Executes Leapp upgrades and if the process is successful, the playbook reboots the machine.

olam_leapp_4

  • post_upgrade.yml - Checks the version of the updated machine and removes any residual Oracle Linux 7 packages.

olam_leapp_5

In order to further simplify the process, a workflow template can be created that points to all of the playbooks.

olam_leapp_5

Conclusion

As per the support policy, Oracle Linux 7 Premier Support is ending in December 2024, which is nearly a year away. It's advisable to upgrade release 7 systems soon. To avoid reinstalling the entire Oracle Linux operating system manually, which can be time-consuming, the option of using Oracle Linux Automation Manager combined with Leapp will save time, resources, and costs, and will help you to centrally manage your upgrade process.
Feel free to give it a go and share your feedback with us on Ansible Collection GitHub repository.

Resources

•    Oracle Linux Training Station
•    Oracle.com/linux
•    Download Oracle Linux
•    Oracle Linux documentation and training resources
•    Oracle Linux Premier Support Information
•    Oracle Linux Automation Manager 2.1 Announcement
 

Monica S

Technical Product Manager


Previous Post

Oracle Linux 8 Update 9 includes updated Linux Kernel and improved technology for developers

Simon Coter | 3 min read

Next Post


Working with Custom Execution Environments in Oracle Linux Automation Manager

Craig McBride | 5 min read