Installing Apicurio Registry Operator using the OperatorHub

This chapter explains how to install Apicurio Registry Operator on Kubernetes or OpenShift. It also shows how to install the Strimzi or Java Persistence API (PostgreSQL) storage option:

Installing Apicurio Registry Operator using the OperatorHub on Kubernetes

This chapter focuses on installation procedures for OpenShift using OperatorHub UI. If you are deploying to Kubernetes, you can use command line tools to install Operator Lifecycle Manager (OLM), and instruct it to deploy the Apicurio Registry or other Operators.

operator hub search ar
Prerequisites
  • You must have cluster administrator access to a Kubernetes cluster.

Procedure
  1. Go to OperatorHub.io - Apicurio Registry page.

  2. Select the Version you want to install

  3. Read the information about the Operator, and click Install.

  4. Follow the instructions on the installation page.

Installing Apicurio Registry Operator using Operator Lifecycle Manager

The recommended way to install Apicurio Registry Operator is to use the Operator Lifecycle Manager (OLM), which can automatically manage the Operator deployment and upgrades.

Apicurio Registry Operator is released to the OperatorHub, so if your cluster has the OLM and OperatorHub installed, the cluster administrator can use the OpenShift web console to deploy the Apicurio Registry Operator:

operator hub search sr
Prerequisites
  • You must have cluster administrator access to an OpenShift cluster.

Procedure
  1. In the OpenShift Container Platform web console, log in using an account with cluster administrator privileges.

  2. Create a new OpenShift project:

    1. In the left navigation menu, click Home > Project > Create Project.

    2. Enter a project name, for example, my-project, and click Create.

  3. In the left navigation menu, click Operators > OperatorHub.

  4. In the Filter by keyword text box, enter registry to find the Apicurio Registry Operator.

  5. Read the information about the Operator, and click Install. This displays the Create Operator Subscription page.

  6. Select your subscription settings, for example:

    • Installation Mode > A specific namespace on the cluster > my-project

    • Update Channel > alpha

    • Approval Strategy > Automatic

  7. Click Subscribe. This displays the Operators > Installed Operators page.

  8. Wait a few moments until the Status for the Apicurio Registry Operator displays Succeeded and the subscription is Up to Date.

Installing Strimzi storage using OpenShift OperatorHub

The recommended Kafka storage option requires that you provide connection information to a Kafka cluster. You can use any Kafka cluster with Kafka support. However, it is recommended to use the Strimzi Operator to provide and maintain a Kafka cluster for you.

If you do not already have Kafka installed, you can install the Strimzi Operator on your OpenShift cluster from the OperatorHub.

Prerequisites
  • You must have cluster administrator access to an OpenShift cluster

Procedure
  1. In the OpenShift Container Platform web console, log in using an account with cluster administrator privileges.

  2. Change to the OpenShift project in which Apicurio Registry is installed. For example, from the Project drop-down, select my-project.

  3. In the left navigation menu, click Operators > OperatorHub.

  4. In the Filter by keyword text box, enter Strimzi to find the Strimzi Operator.

  5. Read the information about the Operator, and click Install. This displays the Create Operator Subscription page.

  6. Select your subscription settings, for example:

    • Installation Mode > A specific namespace on the cluster > my-project

    • Update Channel > stable

    • Approval Strategy > Manual

  7. Click Subscribe. This displays the Operators > Installed Operators page.

  8. Wait a few moments until the Status for the Strimzi Operator displays Succeeded and the subscription is Up to Date.

Installing PostgreSQL database storage using OpenShift OperatorHub

One of the available storage options requires that you provide connection information to a PostgreSQL database. You can use any PostgreSQL database available on your OpenShift cluster, but it is recommended to use OperatorHub to choose and install an Operator that can manage a PostgreSQL database for you.

You can install your preferred PostgresQL Operator, but this section shows how to install the PostgreSQL Operator by Dev4Ddevs.com and create a new database for Apicurio Registry.

Prerequisites
  • You must have cluster administrator access to an OpenShift cluster.

Procedure
  1. In the OpenShift Container Platform web console, log in using an account with cluster administrator privileges.

  2. Change to the OpenShift project in which Apicurio Registry is installed. For example, from the Project drop-down, select my-project.

  3. In the left navigation menu, click Operators > OperatorHub.

  4. In the Filter by keyword text box, enter PostgreSQL to find an Operator suitable for your environment, for example, PostgreSQL Operator by Dev4Ddevs.com or Crunchy PostgreSQL for OpenShift.

  5. Read the information about the Operator, and click Install. This displays the Create Operator Subscription page.

  6. Select your subscription settings, for example:

    • Installation Mode > A specific namespace on the cluster > my-project

    • Update Channel > stable

    • Approval Strategy > Manual

  7. Click Subscribe. This displays the Operators > Installed Operators page.

  8. Wait a few moments until the Status for the PostgreSQL Operator displays Succeeded and the subscription is Up to Date.

    You must read the documentation from your chosen PostgreSQL Operator for details on how to create and manage your database.
  9. Create a PostgreSQL database for your Apicurio Registry storage. For example, click Installed Operators > PostgreSQL Operator by Dev4Ddevs.com > Create database > YAML.

  10. Edit the database settings as follows:

    • name: Change the value to registry

    • image: Change the value to centos/postgresql-10-centos7

  11. Edit any other database settings as needed depending on your environment, for example:

    apiVersion: postgresql.dev4devs.com/v1alpha1
    kind: Database
    metadata:
      name: registry
      namespace: my-project
    spec:
      databaseCpu: 30m
      databaseCpuLimit: 60m
      databaseMemoryLimit: 512Mi
      databaseMemoryRequest: 128Mi
      databaseName: example
      databaseNameKeyEnvVar: POSTGRESQL_DATABASE
      databasePassword: postgres
      databasePasswordKeyEnvVar: POSTGRESQL_PASSWORD
      databaseStorageRequest: 1Gi
      databaseUser: postgres
      databaseUserKeyEnvVar: POSTGRESQL_USER
      image: centos/postgresql-10-centos7
      size: 1
  12. Click Create Database, and wait until the database is created.