Apicurio Registry Operator configuration reference
This chapter provides detailed information on the custom resource used to configure the Apicurio Registry Operator to deploy Apicurio Registry:
Apicurio Registry Custom Resource
The Apicurio Registry Operator defines an ApicurioRegistry
custom resource (CR) that represents a single deployment of Apicurio Registry on OpenShift.
These resource objects are created and maintained by users to instruct the Apicurio Registry Operator how to deploy and configure Apicurio Registry.
The following command displays the ApicurioRegistry
resource:
kubectl edit apicurioregistry example-apicurioregistry
apiVersion: apicur.io/v1alpha1
kind: ApicurioRegistry
metadata:
name: example-apicurioregistry
namespace: demo-streams
# ...
spec:
configuration:
persistence: streams
streams:
bootstrapServers: 'my-cluster-kafka-bootstrap.demo-streams.svc:9092'
deployment:
host: >-
example-apicurioregistry.demo-streams.example.com
status:
deploymentName: example-apicurioregistry-deployment-qsdb7
host: >-
example-apicurioregistry.demo-streams.example.com
image: >-
registry.redhat.io/integration/service-registry-streams-rhel8@sha256:4b56da802333d2115cb3a0acc8d97445bd0dab67b639c361816df27b7f1aa296
ingressName: example-apicurioregistry-ingress-7mlnw
replicaCount: 1
serviceName: example-apicurioregistry-service-xvnmz
The Apicurio Registry Operator currently only watches its own project namespace. Therefore you must create the ApicurioRegistry CR in the same namespace.
|
These configuration options may change or be renamed until Apicurio Registry Operator leaves the alpha development stage. |
Apicurio Registry CR spec
The spec
is the part of the ApicurioRegistry
CR that is used to provide the desired state or configuration for the Operator to achieve.
The following example block contains the full tree of possible spec
configuration options. Some fields may not be required or should not be defined at the same time.
spec:
configuration:
persistence: <string>
dataSource:
url: <string>
userName: <string>
password: <string>
kafka:
bootstrapServers: <string>
streams:
bootstrapServers: <string>
applicationId: <string>
applicationServerPort: <string>
security:
tls:
truststoreSecretName: <string>
keystoreSecretName: <string>
scram:
mechanism: <string>
truststoreSecretName: <string>
user: <string>
passwordSecretName: <string>
infinispan:
clusterName: <string>
ui:
readOnly: <string>
logLevel: <string>
deployment:
replicas: <int32>
host: <string>
The following table describes each configuration option:
Configuration option | type | Default value | Description |
---|---|---|---|
|
- |
- |
Section for configuration of Apicurio Registry application |
|
string |
|
Storage backend. One of |
|
- |
- |
Database connection configuration for JPA storage backend |
|
string |
required |
Database connection URL string |
|
string |
required |
Database connection user |
|
string |
empty |
Database connection password |
|
- |
- |
Kafka backend configuration section |
|
string |
required |
Kafka bootstrap server URL |
|
- |
- |
Kafka Streams storage backend configuration |
|
string |
required |
Kafka bootstrap server URL, for Streams storage backend |
|
string |
ApicurioRegistry CR name |
Kafka Streams application ID |
|
string |
|
- |
|
- |
- |
Section to configure TLS authentication for Kafka Streams storage backend |
|
string |
required |
Name of a secret containing TLS truststore for Kafka |
|
string |
required |
Name of a secret containing user TLS keystore |
|
string |
required |
Name of a secret containing TLS truststore for Kafka |
|
string |
required |
SCRAM user name |
|
string |
required |
Name of a secret containing SCRAM user password |
|
string |
|
SASL mechanism |
|
- |
- |
Infinispan persistence configuration section |
|
string |
ApicurioRegistry CR name |
Infinispan cluster name |
|
- |
- |
Apicurio Registry web console settings |
|
string |
|
Set Apicurio Registry web console to read-only mode |
|
string |
|
Apicurio Registry operand log level. One of |
|
- |
- |
Section for operand deployment settings |
|
positive integer |
|
Number of Apicurio Registry pods to deploy |
|
string |
auto-generated from ApicurioRegistry CR name and namespace |
Host/URL where the Apicurio Registry console and API are available |
If an option is marked as required, it might be conditional on other configuration options being enabled. Empty values might be accepted, but the Operator does not perform the specified action. |
Apicurio Registry CR status
The status
is the section of the CR managed by the Apicurio Registry Operator that contains a description of the current deployment and application state.
The status
section contains the following fields:
status:
image: <string>
deploymentName: <string>
serviceName: <string>
ingressName: <string>
replicaCount: <int32>
host: <string>
Status field | Type | Description |
---|---|---|
|
string |
Apicurio Registry operand image that the Operator deploys. Might change based on the storage option selected in configuration. |
|
string |
Name of the |
|
string |
Name of the |
|
string |
Name of the |
|
int32 |
Number of Apicurio Registry operand pods deployed. |
|
string |
URL where the Apicurio Registry UI and REST API are accessible. |
Apicurio Registry managed resources
The resources managed by the Apicurio Registry Operator when deploying Apicurio Registry are as follows:
-
Deployment
(Kubernetes) orDeploymentConfig
(OpenShift) -
Service
-
Ingress
andRoute
(OpenShift) -
PodDisruptionBudget
Apicurio Registry Operator labels
Resources managed by the Apicurio Registry Operator are usually labeled as follows:
Label | Description |
---|---|
|
Name of the Apicurio Registry deployment that the resource belongs to, based on the name of the specified |
|
Type of the deployment: |
|
Name of the deployment: same value as |
|
Version of the Apicurio Registry or the Apicurio Registry Operator |
|
A set of recommended Kubernetes labels for application deployments. |