Chapter 1. Installing Red Hat Ansible Automation Platform Operator on Red Hat OpenShift Container Platform
As a system administrator, you can use Ansible Automation Platform Operator to deploy new Ansible Automation Platform instances in your OpenShift environment.
1.1. Planning your Red Hat Ansible Automation Platform Operator on Red Hat OpenShift Container Platform Copy linkLink copied to clipboard!
Red Hat Ansible Automation Platform is supported on both Red Hat Enterprise Linux and Red Hat Openshift.
OpenShift operators help install and automate day-2 operations of complex, distributed software on Red Hat OpenShift Container Platform. The Ansible Automation Platform Operator enables you to deploy and manage Ansible Automation Platform components on Red Hat OpenShift Container Platform.
You can use this section to help plan your Red Hat Ansible Automation Platform installation on your Red Hat OpenShift Container Platform environment. Before installing, review the supported installation scenarios to determine which meets your requirements.
1.1.1. About Ansible Automation Platform Operator Copy linkLink copied to clipboard!
The Ansible Automation Platform Operator provides cloud-native, push-button deployment of new Ansible Automation Platform instances in your OpenShift environment.
The Ansible Automation Platform Operator includes resource types to deploy and manage instances of automation controller and private automation hub.
It also includes automation controller job resources for defining and launching jobs inside your automation controller deployments.
Deploying Ansible Automation Platform instances with a Kubernetes native operator offers several advantages over launching instances from a playbook deployed on Red Hat OpenShift Container Platform, including upgrades and full lifecycle support for your Red Hat Ansible Automation Platform deployments.
You can install the Ansible Automation Platform Operator from the Red Hat Operators catalog in OperatorHub.
For information about the Ansible Automation Platform Operator system requirements and infrastructure topology see Operator topologies in Tested deployment models
1.1.2. OpenShift Container Platform version compatibility Copy linkLink copied to clipboard!
The Ansible Automation Platform Operator to install Ansible Automation Platform 2.5 is available on OpenShift Container Platform 4.12 through to 4.17 and later versions.
1.1.3. Supported installation scenarios for Red Hat OpenShift Container Platform Copy linkLink copied to clipboard!
You can use the OperatorHub on the Red Hat OpenShift Container Platform web console to install Ansible Automation Platform Operator.
Alternatively, you can install Ansible Automation Platform Operator from the OpenShift Container Platform command-line interface (CLI), oc
. See Installing Red Hat Ansible Automation Platform Operator from the OpenShift Container Platform CLI for help with this.
After you have installed Ansible Automation Platform Operator you must create an Ansible Automation Platform custom resource (CR). This enables you to manage Ansible Automation Platform components from a single unified interface known as the platform gateway. As of version 2.5, you must create an Ansible Automation Platform CR, even if you have an existing automation controller, automation hub, or Event-Driven Ansible, components.
If existing components have already been deployed, you must specify these components on the Ansible Automation Platform CR. You must create the custom resource in the same namespace as the existing components.
Supported scenarios | Supported scenarios with existing components |
---|---|
|
|
1.1.4. Custom resources Copy linkLink copied to clipboard!
You can define custom resources for each primary installation workflows.
1.1.4.1. Modifying the number of simultaneous rulebook activations during or after Event-Driven Ansible controller installation Copy linkLink copied to clipboard!
-
If you plan to install Event-Driven Ansible on OpenShift Container Platform and modify the number of simultaneous rulebook activations, add the required
EDA_MAX_RUNNING_ACTIVATIONS
parameter to your custom resources. By default, Event-Driven Ansible controller allows 12 activations per node to run simultaneously. For an example see the eda-max-running-activations.yml in the appendix section.
EDA_MAX_RUNNING_ACTIVATIONS
for OpenShift Container Platform is a global value since there is no concept of worker nodes when installing Event-Driven Ansible on OpenShift Container Platform.
1.1.5. Ansible Automation Platform Operator CSRF management Copy linkLink copied to clipboard!
In Ansible Automation Platform version 2.5 the Ansible Automation Platform Operator on OpenShift Container Platform creates OpenShift Routes and configures your Cross-site request forgery (CSRF) settings automatically.
When using external ingress, you must configure your CSRF on the ingress, for help with this see Configuring your CSRF settings for your platform gateway operator ingress.
In previous versions CSRF was configurable through the automation controller user interface, in version 2.5 automation controller settings are still present but have no impact on CSRF settings for the platform gateway.
The following table helps to clarify which settings are applicable for which component.
UI setting | Applicable for |
---|---|
Subscription | automation controller |
platform gateway | platform gateway |
User Preferences | User interface |
System | Automation controller |
Job | Automation controller |
Logging | Automation controller |
Troubleshooting | Automation controller |
1.1.6. Additional resources Copy linkLink copied to clipboard!
To learn more about OpenShift Container Platform OperatorHub you can review OpenShift Container Platform documentation:
1.2. Deploying the Red Hat Ansible Automation Platform Operator on Red Hat OpenShift Container Platform Copy linkLink copied to clipboard!
Use this procedure to guide you through deploying the Red Hat Ansible Automation Platform Operator through the Operators section on Red Hat OpenShift Container Platform, selecting the appropriate update channel and installation mode, and then verifying the successful deployment.
1.2.1. Installing the Red Hat Ansible Automation Platform Operator on Red Hat OpenShift Container Platform Copy linkLink copied to clipboard!
When installing your Ansible Automation Platform Operator you have a choice of a namespace-scoped operator or a cluster-scoped operator. This depends on the update channel you choose, stable-2.x or cluster-scoped-2.x.
A namespace-scoped operator is confined to one namespace, offering tighter security. A cluster-scoped operator spans multiple namespaces, which grants broader permissions.
If you are managing multiple Ansible Automation Platform instances with the same Ansible Automation Platform Operator version, use the cluster-scoped operator, which uses a single operator to manage all Ansible Automation Platform custom resources in your cluster.
If you need multiple operator versions in the same cluster, you must use the namespace-scoped operator. The operator and the deployment share the same namespace. This can also be helpful when debugging because the operator logs pertain to custom resources in that namespace only.
For information about the Ansible Automation Platform Operator system requirements and infrastructure topology see Operator topologies in Tested deployment models.
For help with installing a namespace or cluster-scoped operator see the following procedure.
You cannot deploy Ansible Automation Platform in the default namespace on your OpenShift Cluster. The aap
namespace is recommended. You can use a custom namespace, but it should run only Ansible Automation Platform.
Prerequisites
- You have installed the Red Hat Ansible Automation Platform catalog in OperatorHub.
-
You have created a
StorageClass
object for your platform and a persistent volume claim (PVC) withReadWriteMany
access mode. See Dynamic provisioning for details. To run Red Hat OpenShift Container Platform clusters on Amazon Web Services (AWS) with
ReadWriteMany
access mode, you must add NFS or other storage.-
For information about the AWS Elastic Block Store (EBS) or to use the
aws-ebs
storage class, see Persistent storage using AWS Elastic Block Store. -
To use multi-attach
ReadWriteMany
access mode for AWS EBS, see Attaching a volume to multiple instances with Amazon EBS Multi-Attach.
-
For information about the AWS Elastic Block Store (EBS) or to use the
Procedure
- Log in to Red Hat OpenShift Container Platform.
-
Navigate to
. - Search for Ansible Automation Platform and click .
Select an Update Channel:
- stable-2.x: installs a namespace-scoped operator, which limits deployments of automation hub and automation controller instances to the namespace the operator is installed in, this is suitable for most cases. The stable-2.x channel does not require administrator privileges and utilizes fewer resources because it only monitors a single namespace.
- stable-2.x-cluster-scoped: installs the Ansible Automation Platform Operator in a single namespace that manages Ansible Automation Platform custom resources and deployments in all namespaces. The Ansible Automation Platform Operator requires administrator privileges for all namespaces in the cluster.
- Select Installation Mode, Installed Namespace, and Approval Strategy.
- Click .
Verification
The installation process begins. When installation finishes, a modal appears notifying you that the Ansible Automation Platform Operator is installed in the specified namespace.
- Click to view your newly installed Ansible Automation Platform Operator and verify the following operator custom resources are present:
Automation controller | Automation hub | Event-Driven Ansible (EDA) | Red Hat Ansible Lightspeed |
---|---|---|---|
|
|
|
|
- Verify that the Ansible Automation Platform operator displays a Succeeded status.
1.3. Installing Red Hat Ansible Automation Platform Operator from the Red Hat OpenShift Container Platform CLI Copy linkLink copied to clipboard!
Use these instructions to install the Ansible Automation Platform Operator on Red Hat OpenShift Container Platform from the OpenShift Container Platform command-line interface (CLI) using the oc
command.
1.3.1. Installing the Ansible Automation Platform Operator in a namespace Copy linkLink copied to clipboard!
Use this procedure to subscribe a namespace to an operator.
You cannot deploy Ansible Automation Platform in the default namespace on your OpenShift Cluster. The aap
namespace is recommended. You can use a custom namespace, but it should run only Ansible Automation Platform.
Prerequisites
- Access to Red Hat OpenShift Container Platform using an account with operator installation permissions.
-
The OpenShift Container Platform CLI
oc
command is installed on your local system. Refer to Installing the OpenShift CLI in the Red Hat OpenShift Container Platform product documentation for further information.
Procedure
Create a project for the operator.
oc new-project ansible-automation-platform
oc new-project ansible-automation-platform
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Create a file called
sub.yaml
. Add the following YAML code to the
sub.yaml
file.Copy to Clipboard Copied! Toggle word wrap Toggle overflow This file creates a
Subscription
object calledansible-automation-platform
that subscribes theansible-automation-platform
namespace to theansible-automation-platform-operator
operator.Run the
oc apply
command to create the objects specified in thesub.yaml
file:oc apply -f sub.yaml
oc apply -f sub.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Verify the CSV PHASE reports "Succeeded" before proceeding using the
oc get csv -n ansible-automation-platform
command:oc get csv -n ansible-automation-platform NAME DISPLAY VERSION REPLACES PHASE aap-operator.v2.5.0-0.1728520175 Ansible Automation Platform 2.5.0+0.1728520175 aap-operator.v2.5.0-0.1727875185 Succeeded
oc get csv -n ansible-automation-platform NAME DISPLAY VERSION REPLACES PHASE aap-operator.v2.5.0-0.1728520175 Ansible Automation Platform 2.5.0+0.1728520175 aap-operator.v2.5.0-0.1727875185 Succeeded
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Create an
AnsibleAutomationPlatform
object calledexample
in theansible-automation-platform
namespace.To change the Ansible Automation Platform and its components from
example
, edit the name field in themetadata:
section and replace example with the name you want to use:Copy to Clipboard Copied! Toggle word wrap Toggle overflow