Red Hat Integration - Service Registry Operator
Official Documentation
- Red Hat Integration - Service Registry Operator: https://access.redhat.com/documentation/en-us/red_hat_integration/2023.q1/html/installing_and_deploying_service_registry_on_openshift/pr01 
- ApiCurio: https://www.apicur.io/ 
Install the Red Hat Integration - Service Registry Operator from the OperatorHub
cluster admin role is required.As a cluster administrator, install the Red Hat Integration - Service Registry Operator from the OperatorHub to the
namespace foundation as follows:
- Navigate in the OpenShift Web Console to the Operators → OperatorHub page 
- Filter by keyword: Service Registry 
- Select the operator: Red Hat Integration - Service Registry Operator provided by Red Hat 
- Read the information about the operator and click Install 
- On the Create Operator Subscription page: - Select an update channel (if more than one is available) 
- Select option All namespaces on the cluster (default) 
- Select Automatic approval strategy 
- Click Install 
 
- After the subscription's upgrade status is up to date, navigate in the web console to the Operators → Installed Operators page 
Create the Apicurio Registry instance
Create the ApicurioRegistry CRD instance in the namespace foundation as follows:
- Navigate in the OpenShift Web Console to the Operators → Installed Operators page 
- Select the Red Hat Integration - Service Registry Operator 
- Navigate to the Apicurio Registry tab of the Operators → Operator Details page 
- Click Create ApicurioRegistry - Enter the resource definition ( See Example Apicurio Registry Configuration) 
- Click on Create 
 
- Verify that in the Apicurio Registry tab the newly created - apicurioCRD instance is displayed.
Example Apicurio Registry Configuration
apiVersion: registry.apicur.io/v1
kind: ApicurioRegistry
metadata:
  name: apicurio
  namespace: foundation
spec:
  configuration:
    persistence: sql
    security:
      keycloak:
        apiClientId: registry-api
        realm: foundation
        uiClientId: apicurio-registry
        url: 'https://auth.my-openshift-cluster.cloud/auth'
    sql:
      dataSource:
        password: myPassword
        url: >-
          jdbc:postgresql://postgresql.foundation.svc.cluster.local:5432/sampledb
        userName: userJ2T
    ui:
      readOnly: false
  deployment:
    host: schema-registry.my-openshift-cluster.cloud.router-default.my-openshift-cluster.cloudConfigure compatability rule
Please configure the compatability rule in order to avoid a known bug as Apicurio cannot handle event evolution with compatibility rules enabled.
- Login into Apicurio 
- Go to Global rules 
- Set Compatibility rule to None