Page
Deploy Ansible Automation Platform, the Red Hat build of Keycloak, and Red Hat Developer Hub operators
In this lesson, you will build and deploy the infrastructure needed to integrate Red Hat Developer Hub (Developer Hub) with Red Hat Ansible Automation Platform under a single sign-on system (SSO). We will use Ansible Automation Platform for orchestration, the Red Hat build of Keycloak for centralized authentication, and Developer Hub for its interface and ease of access to developer resources.
Prerequisites:
- You must have administrative access to a Red Hat OpenShift Container Platform cluster.
- Install the OpenShift command-line interface (CLI) and Kustomize locally.
- A valid Red Hat subscription is required.
In this lesson, you will:
- Install Ansible Automation Platform, the Red Hat build of Keycloak, and Developer Hub operators.
- Create the SSO instance with the Red Hat build of Keycloak.
- Deploy Ansible Automation Platform.
Deploy the infrastructure
Let’s start by deploying all of our necessary components. We’ll use the standalone tool Kustomize to manage our configurations, making it easy to replicate across environments.
Note
All of the code referenced in this guide is available at https://github.com/openlab-red/rhdh-with-ansible. Clone the repository to follow along!
Install the operators
First, install the required operators:
oc apply -k clusters/demo/operators/aap-operator
oc apply -k clusters/demo/operators/rhsso-operator
oc apply -k clusters/demo/operators/rhdh-operatorEnsure the operators are ready before proceeding to deployment.
oc wait --for=jsonpath='{.status.phase}'=Succeeded csv -l operators.coreos.com/ansible-automation-platform-operator.aap="" -n aap --timeout=300s
oc wait --for=jsonpath='{.status.phase}'=Succeeded csv -l operators.coreos.com/rhsso-operator.rhsso-operator="" -n rhsso-operator --timeout=300s
oc wait --for=jsonpath='{.status.phase}'=Succeeded csv -l operators.coreos.com/rhdh.rhdh-operator="" -n rhdh-operator --timeout=300sDeploy the Red Hat build of Keycloak
Now, we will create the SSO instance that will handle our authentication.
Begin by creating a namespace and deploying the Red Hat build of Keycloak:
oc new-project rhsso oc apply -k clusters/demo/instances/rhssoOnce ready, the build will look like this:
oc wait --for=condition=Ready pod -l app=keycloak -n rhsso --timeout=300sVerify that the build is accessible:
oc get route keycloak -n rhsso
Deploy Ansible Automation Platform
Finally, we will deploy the Ansible Automation Platform.
Begin by creating a namespace:
oc new-project aap oc apply -k clusters/demo/instances/aapWait for Ansible Automation Platform to be ready (this can take 10-15 minutes). Confirm the instance is deployed:
oc get ansibleautomationplatform -n aapWait for Ansible Automation Platform pods to be ready:
oc wait --for=condition=Ready pod -l app.kubernetes.io/name=aap-controller-web -n aap --timeout=900sVerify Ansible Automation Platform is accessible:
oc get route aap -n aap
Success! We’ve deployed our infrastructure.