Breadcrumb

  1. Red Hat Interactive Learning Portal
  2. Unlock self-service API credentials on Connectivity Link
  3. Install the hub-only stack with multi-cloud GitOps

Unlock self-service API credentials on Connectivity Link

Understand how to set up a hub-only Connectivity Link stack, then let developers mint API keys and OIDC client credentials from Red Hat Developer Hub, without ticket back and forth.

Before you configure API authentication, you need the full platform stack running on one hub cluster. This solution uses the multi-cloud GitOps validated pattern to assemble Connectivity Link Gateways, Developer Hub, Keycloak, and the NeuroFace demo workloads from the AI Computer Vision repository through a single Pattern Custom Resource (CR). This lesson uses a single OpenShift hub cluster. Use that lab when inference runs on CPU rather than GPU, and the cluster has no pre-installed operators besides OpenShift and the Validated Patterns Operator.

Prerequisites:

  • An OpenShift 4.20 or later cluster sized as a hub-only CPU.
  • Access to the OpenShift web console with the cluster-admin role. 
  • A workstation with the oc binary installed.

In this lesson, you will:

  • Install the Validated Patterns Operator from OperatorHub.
  • Apply the hub-only Pattern CR with the values-hub-only.yaml overlay.
  • Verify that Argo CD applications sync and key workloads become healthy.
  • Understand which components the pattern installs and what hub-only mode disables.

Confirm cluster requirements

  1. Provision or use an existing OpenShift cluster with no east or west spoke clusters. The Pattern CR guide recommends this AWS sizing as a valid starting point:
    • Control plane (AWS): 3× m6a.2xlarge
    • Workers (AWS): 4–5× m6a.4xlarge
  2. Log in as a cluster administrator:

    oc login --token=<token> --server=https://api.<cluster-domain>:6443

Install the Validated Patterns Operator

The following steps guide you through installing the Validated Patterns Operator:

  1. Log in to the OpenShift web console with a user that has the cluster-admin role.
  2. Expand the Ecosystem navigation menu, and click Software Catalog.
  3. In the filter field, search for Validated Patterns Operator.
  4. Click the Install button.
  5. On the operator installation page, accept the defaults and click the Install button. Install the operator into the patterns-operator namespace with the default channel.
  6. Open a terminal on your workstation, and verify the operator pod is running:

    oc get pods -n patterns-operator | grep validated-patterns

Apply the hub-only Pattern CR

The multi-cloud GitOps installs from a single Pattern CR.

  1. For hub-only CPU, use examples/pattern-cr/hub-only-cpu.yaml from the AI Computer Vision repository:

    apiVersion: gitops.hybrid-cloud-patterns.io/v1alpha1
    kind: Pattern
    metadata:
      name: ia-computer-vision
      namespace: patterns-operator
    spec:
      clusterGroupName: hub
      extraValueFiles:
      - /values-hub-only.yaml
      gitSpec:
        targetRepo: https://github.com/maximilianoPizarro/ia-computer-vision.git
        targetRevision: main
      multiSourceConfig:
        enabled: true
        clusterGroupChartVersion: "0.9.*"
        helmRepoUrl: https://charts.validatedpatterns.io
  2. Apply the CR:

    oc apply -f https://raw.githubusercontent.com/maximilianoPizarro/ia-computer-vision/main/examples/pattern-cr/hub-only-cpu.yaml

    This command applies the Pattern custom resource hub-only-cpu.yaml. That file already lists values-hub-only.yaml under extraValueFiles, so you do not apply the overlay as a second command. The overlay is required on a single cluster with no spokes. Without it, Argo CD applications for Skupper and the Red Hat Advanced Cluster Management (RHACM) spoke import can show as Missing or Degraded, because the east and west clusters do not exist.

Wait for GitOps sync and verify health

The Validated Patterns Operator renders the multi-cloud GitOps Helm values and delegates them to OpenShift GitOps (Argo CD).

  1. You can monitor application health by running the following command:

    oc get applications -n openshift-gitops

    Wait until the core applications report as Synced and Healthy. This can take 30–60 minutes, depending on cluster resources and image pulls.

  2. Verify that the key namespaces exist:

    oc get ns | grep -E 'developer-hub|neuroface|workshop-kuadrant|keycloak|rhbk'
  3. Confirm Developer Hub and the Gateways are reachable. Replace <apps-domain> where appropriate with your cluster apps domain name:

    oc get route -n developer-hub
    oc get gateway -A

What Multicloud GitOps installs

The hub-only Pattern CR, driven by multi-cloud GitOps, deploys these component groups:

Group

Components

Role

GitOps / pattern control

OpenShift GitOps (Argo CD), multi-cloud GitOps cluster-group charts

Continuous reconciliation from Git

Edge / auth

Red Hat Connectivity Link (Kuadrant AuthPolicy, RateLimitPolicy, PlanPolicy, APIProduct), Authorino, neuroface-gateway, workshop-apis-gateway

Gateway API routing, authentication, rate limits

Developer experience

Red Hat Developer Hub

Self-service software templates and OpenAPI catalog

Identity

Red Hat build of Keycloak (realm cv, provisioner client)

OIDC token issuance and client lifecycle

Demo workloads (hubLocal)

NeuroFace hub UI, Computer Vision YOLO inference (neuroface-cv), Kafka (AMQ Streams)

PPE detection demo and violation alerts

Supporting platform

OpenShift Service Mesh / Istio data plane for gateways, External Secrets Operator, Vault integration for Keycloak secrets

Mesh routing, secret sync

What hub-only disables: Skupper, hub-interconnect, RHACM spoke import, and skupper-network-observer. NeuroFace and Computer Vision inference runs locally on the hub instead of on either East or West spokes.

Confirm you are ready for authentication lessons

Before moving to the next lesson, confirm:

  • That Developer Hub loads at https://developer-hub.<apps-domain>.
  • The workshop-apis and neuroface-gateway show a Programmed status.
  • The Keycloak realm cv is imported and reachable at https://keycloak.<apps-domain>.

You now have Connectivity Link, Developer Hub, and the demo APIs running from Multicloud GitOps and a single Pattern CR. In the Provision self-service API keys for external REST APIs lesson, you secure an external REST API with self-service API keys.

Previous resource
Overview: Unlock self-service API credentials on Connectivity Link
Next resource
Provision self-service API keys for external REST APIs