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.
-
You must have cluster administrator access to a Kubernetes cluster.
-
Go to OperatorHub.io - Apicurio Registry page.
-
Select the Version you want to install
-
Read the information about the Operator, and click Install.
-
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:
-
You must have cluster administrator access to an OpenShift cluster.
-
In the OpenShift Container Platform web console, log in using an account with cluster administrator privileges.
-
Create a new OpenShift project:
-
In the left navigation menu, click Home > Project > Create Project.
-
Enter a project name, for example,
my-project
, and click Create.
-
-
In the left navigation menu, click Operators > OperatorHub.
-
In the Filter by keyword text box, enter
registry
to find the Apicurio Registry Operator. -
Read the information about the Operator, and click Install. This displays the Create Operator Subscription page.
-
Select your subscription settings, for example:
-
Installation Mode > A specific namespace on the cluster > my-project
-
Update Channel > 2.x
-
Approval Strategy > Automatic
-
-
Click Subscribe. This displays the Operators > Installed Operators page.
-
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.
-
You must have cluster administrator access to an OpenShift cluster
-
In the OpenShift Container Platform web console, log in using an account with cluster administrator privileges.
-
Change to the OpenShift project in which Apicurio Registry is installed. For example, from the Project drop-down, select
my-project
. -
In the left navigation menu, click Operators > OperatorHub.
-
In the Filter by keyword text box, enter
Strimzi
to find the Strimzi Operator. -
Read the information about the Operator, and click Install. This displays the Create Operator Subscription page.
-
Select your subscription settings, for example:
-
Installation Mode > A specific namespace on the cluster > my-project
-
Update Channel > stable
-
Approval Strategy > Manual
-
-
Click Subscribe. This displays the Operators > Installed Operators page.
-
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.
-
You must have cluster administrator access to an OpenShift cluster.
-
In the OpenShift Container Platform web console, log in using an account with cluster administrator privileges.
-
Change to the OpenShift project in which Apicurio Registry is installed. For example, from the Project drop-down, select
my-project
. -
In the left navigation menu, click Operators > OperatorHub.
-
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. -
Read the information about the Operator, and click Install. This displays the Create Operator Subscription page.
-
Select your subscription settings, for example:
-
Installation Mode: Select one of the following:
-
All namespaces on the cluster (default)
-
A specific namespace on the cluster and then my-project
-
-
Update Channel > stable
-
Approval Strategy: Select Automatic or Manual
-
-
Click Subscribe. This displays the Operators > Installed Operators page.
-
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. -
Create a PostgreSQL database for your Apicurio Registry storage. For example, click Installed Operators > PostgreSQL Operator by Dev4Ddevs.com > Create database > YAML.
-
Edit the database settings as follows:
-
name
: Change the value toregistry
-
image
: Change the value tocentos/postgresql-10-centos7
-
-
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
-
Click Create Database, and wait until the database is created.