Deploy Pega Platform on Red Hat OpenShift Service on AWS (ROSA)
This content is authored by Red Hat experts, but has not yet been tested on every supported configuration.
Deploying Pega Platform on a managed OpenShift environment like Red Hat OpenShift Service on AWS (ROSA) lets you take advantage of the platform’s enterprise capabilities while benefiting from a fully managed Kubernetes service. However, the deployment process involves coordinating several components: container images, databases, search services, message streaming, and Helm charts.
This guide walks you through deploying Pega Platform on ROSA step by step, covering everything from preparing your container images to accessing the Pega web interface. The accompanying Git repository contains all the configuration files you need to get started.
This deployment was tested on ROSA GovCloud 4.18, using a bastion host running RHEL 8.6.
Prerequisites
- OpenShift CLI (
oc) - Helm
- Podman
- A running ROSA cluster
- Three Pega container images (obtained from
Pega
):
pega-docker.downloads.pega.com/platform/installerpega-docker.downloads.pega.com/platform/pegapega-docker.downloads.pega.com/platform-services/search-n-reporting-service-os
Create a Namespace and Configure the Internal Registry
Create a dedicated namespace for the Pega deployment and expose the OpenShift internal registry so you can push your container images.
Load and Push Container Images
Load the Pega images from their tar archives, tag them for the internal registry, and push them.
Create a Machine Pool for the Installer
The Pega installer pods require significant resources. Create a machine pool with a larger instance type to accommodate them.
Deploy OpenSearch
Pega uses OpenSearch for its Search and Reporting Service. Deploy it using Helm with the required configuration.
Clone the Git Repository
Install OpenSearch
Scale down the StatefulSet to apply environment variable changes, then scale it back up.
Deploy PostgreSQL
Deploy PostgreSQL 12 as the backing database for Pega.
Deploy Kafka
Install the Streams for Apache Kafka operator using the Red Hat documentation , then deploy a Kafka cluster.
The Kafka cluster must be named pega-kafka-cluster as this name is referenced in the Pega Helm chart configuration.
Deploy Pega Backing Services
Add the Pega Helm repository and configure the backing services.
Update the backingservices.yaml file in the cloned repository with the following values. Refer to the
Pega documentation
for details.
Deploy the backing services.
The default NetworkPolicy in the backing services Helm template uses a podSelector that must be patched to work with OpenSearch.
Deploy Pega Platform
Update the pega.yaml file in the cloned repository with the following values. Refer to the
Pega documentation
for details.
Run the Helm chart to create the database schema and deploy Pega.
The database install process takes approximately 20 minutes to complete, followed by the Pega web deployment.
For subsequent installs where the database schema already exists, use the same command — the installer will detect the existing schema and skip creation.
Access the Pega Web Interface
Once the Pega web pod is running, access the application using the route specified in tier.ingress.domain in your pega.yaml configuration.
Log in with the default credentials:
- Username:
administrator@pega.com - Password:
ADMIN_PASSWORD
You will be prompted to change your password on first login.