In this post:
Get an overview of supported use cases for Ansible in RHEL
Learn the difference between Ansible Engine and Ansible Core
Find out how to migrate to Ansible Core and information on using Ansible in RHEL 7
Note: this article is intended for RHEL customers. Customers using Red Hat Ansible Automation Platform should refer to the Ansible Automation Platform product documentation.
If you use Ansible content within Red Hat Enterprise Linux (RHEL), you should know that important changes are coming to RHEL 8.6 and 9.0. If you’re currently using Ansible Engine in RHEL, additional steps will be required to upgrade from RHEL 8.5 to RHEL 8.6.
RHEL 7 and RHEL 8.0-8.5 customers have access to a separate Ansible Engine repository. In RHEL 8.6 and 9.0, customers will have access to Ansible Core, which will be included in the corresponding AppStream repository. The move to Ansible Core in RHEL is being made to adapt to changes in the Ansible project. For more information on these changes, see these posts:
This post will cover an overview of the supported use cases for Ansible in RHEL, the difference between Ansible Engine and Ansible Core, how to migrate to Ansible Core and information on using Ansible in RHEL 7.
What are supported use cases for Ansible in RHEL?
Ansible is provided to RHEL customers so they can use automation content provided in RHEL, such as RHEL System Roles, Identity Management Ansible Content, Insights remediation playbooks, and Web Console-generated Ansible content. The details of the limited scope of support for Ansible Engine (RHEL 7, RHEL 8.0-8.5), and Ansible Core (RHEL 8.6 and RHEL 9.0) is documented in these articles:
Ansible Engine (see footnote 2): How do I Download and Install Red Hat Ansible Engine?
The automation content that is included in this limited scope of support includes:
RHEL System Roles
Core RHEL System Roles, included in the rhel-system-roles package
System Roles for SAP, included in the rhel-system-roles-sap package (requires RHEL for SAP Solutions subscription)
Microsoft SQL Server role included in the ansible-collection-microsoft-sql package
IPMI Ansible modules included in the ansible-collection-redhat-rhel_mgmt package
Identity Management Ansible content included in the ansible-freeipa package
Insights generated playbooks for remediation, including security, patching, and configuration use cases
Performance Co-Pilot (PCP) Ansible content (included in the ansible-pcp package)
Web Console generated Ansible content
Using Ansible Engine or Ansible Core for other use cases, such as with custom or third-party Ansible content, is not supported without a Red Hat Ansible Automation Platform subscription.
OpenSCAP Ansible remediation playbooks may not work properly with Ansible Core in RHEL 8.6 and 9.0. If OpenSCAP Ansible remediation is needed, we recommend using Insights Compliance with Insights remediation via the Red Hat connector. The Red Hat Connector in RHEL 9.0 and 8.6 is being planned to include the necessary Ansible modules to enable the remediation playbooks to function with Ansible Core.
What is the difference between Ansible Engine and Ansible Core?
As previously noted, RHEL 8.6 and RHEL 9.0 will introduce Ansible Core (ansible-core package) to replace Ansible Engine (ansible package). Ansible Core provides significantly fewer Ansible plugins and modules than Ansible Engine.
Ansible Engine contains around 3,387 modules compared to Ansible Core which contains approximately 127 modules. There are also a number of filters that are no longer included in Ansible Core, such as json_query, ipaddr, and others.
RHEL-supported Ansible content is in the process of being updated to be compatible with Ansible Core, so if you are using RHEL-supported content, there should be no impact to migrating to Ansible Core.
Custom or third-party Ansible content may not function correctly with Ansible Core. Please contact your Red Hat Account team to discuss options, including an Ansible Automation Platform subscription.
How to migrate from Ansible Engine to Ansible Core
Ansible Engine will not be available on RHEL 9, so if you are installing a new RHEL 9 system you can install Ansible Core from the AppStream repository with the dnf install ansible-core command. For more information, see Using Ansible in RHEL 9.
If you have RHEL 8.0-8.5 systems that have Ansible Engine installed, additional steps will be required after upgrading to RHEL 8.6 to move the systems from Ansible Engine to Ansible Core. For more information, see Using Ansible in RHEL 8.6 and later.
The Ansible Engine repository is still available on RHEL 8.6, but it won’t receive any security or bug fix updates past September 29, 2023, and it may not be compatible with Ansible automation content included in RHEL 8.6 and later.
Using Ansible on RHEL 7
Ansible Core will not be available on RHEL 7. Customers can continue to use Ansible Engine 2.9 on RHEL 7.9, within the limited scope of support, until September 29, 2023. After this date, Ansible Engine will not receive any security or bug fix updates.
Customers using RHEL System Roles or Identity Management Ansible content can use a RHEL 8.6 or RHEL 9.0 control node with Ansible Core to manage RHEL 7 nodes after September 29, 2023.
Insights remediation playbooks will be unsupported on RHEL 7 after September 29, 2023.
So, that’s an overview of the Ansible changes that are coming in RHEL. If you are using RHEL 8, make sure to follow the steps to move from Ansible Engine to Ansible Core after you upgrade to RHEL 8.6. For more information on RHEL System Roles, refer to our Introduction to RHEL System Roles, and keep an eye on the RHEL System Roles blog series.
About the author
Brian Smith is a Product Manager at Red Hat focused on RHEL automation and management. He has been at Red Hat since 2018, previously working with Public Sector customers as a Technical Account Manager (TAM).