Broadleaf Microservices
  • v1.0.0-latest-prod

OpenShift Deployment Tutorial

The following tutorial will walk through the steps of deploying the Microservices Stack onto an empty OpenShift cluster.

Important
The following requires credentials and access to the Microservice Starter Projects outlined in the guide: Getting Started Locally.

Step 1: Initial Setup



Prerequisites:

  • OpenShift CLI

  • kubectl

  • helm

  • a Top-Level-Domain to associate with the demo storefronts

  • your provisioned credentials that were given to you along with your private accelerator projects

Step 2: Install & Configure Postgres

For this step, we will:

  • provision an ephemeral Postgres instance through the OpenShift Cloud Console

  • install the pg_trgm extension on the provisioned instance

create extension if not exists pg_trgm schema public

Step 3: Prepare Helm Charts

In this step, we will review the following files to make sure the override values match up with the namespaces used in your particular project:

  • blc-cluster-singleton-openshiftdev.yaml

  • blc-supporting-stack-openshiftdev.yaml

  • blc-balanced-flex-demo-openshiftdev.yaml

Within these files, you will want to:

  • Replace occurrences of openshift.svc.cluster.local with your Kubernetes internal DNS patterns

  • Replace occurrences of openshift.blcdemo.com with the appropriate TLD you will be using for your storefront

Step 4: Run Installation Script

Run the following to initiate the installation process (replacing the credentials appropriately):

BLC_REGISTRY_USER=[my username] \
BLC_REGISTRY_PASSWORD=[my password] \
BLC_CLOUD_SQL_USERNAME=broadleaf \
BLC_CLOUD_SQL_PASSWORD=broadleaf \
BLC_CLOUD_SQL_DB=broadleaf \
./install-openshift.sh -e openshiftdev -c cloud -n true

Step 5: Final Steps




You will need to do 2 more things as a final step:

  1. Change the "IDENTIFIER_VALUE" to match the Top Level Domain for your storefront in the tenant.blc_tenant table.

  2. Create OpenShift Routes to point your TLD to the admin gateway and the customer facing storefront gateway appropriately