Last year, the Apicurio developer community launched the new Apicurio Registry project, which is an API and schema registry for microservices. You can use the Apicurio Registry to store and retrieve service artifacts such as OpenAPI specifications and AsyncAPI definitions, as well as schemas such as Apache Avro, JSON, and Google Protocol Buffers.
Because the registry also works as a catalog where you can navigate through artifacts, adding a new web-based user interface (UI) was a priority for the current Apicurio Registry 1.2.2 release. With this release, the Apicurio community has made the Apicurio Registry available as a binary download or from container images. To make it easier to set up and manage your Apicurio Registry deployment, they have also created a new Kubernetes Operator for the Apicurio Registry.
This article is a quick introduction to the new Apicurio Registry UI and Apicurio Registry Operator. I'll show you how to access these new features in Apicurio 1.2.2 and describe a few highlights of using them. For a more detailed demonstration, check out my video tutorial introducing the new UI and Kubernetes Operator.
The Apicurio Registry UI
Apicurio's new web-based user interface allows you to navigate through artifacts stored in the Registry. You can use the UI to search for artifacts by label, name, or description. You can also preview an artifact's content, and you have the option to download and store an artifact locally. While in the registry, you can check for all of the available versions of any stored artifact.
In addition to browsing through artifacts, the Apicurio UI allows you to configure and manage the registry's content rules, both globally and for each artifact. Of course, it is also possible to upload new artifacts and update the content or version of any existing artifact.
To access the Apicurio UI, just navigate to the main endpoint of your current Apicurio Registry deployment, such as http://localhost:8080/
. At the endpoint, you will be redirected to the /ui
path.
The Apicurio Registry Operator
You can deploy the Apicurio Registry Operator in any working Kubernetes or OpenShift cluster, and use it to quickly install and configure an Apicurio Registry deployment. See the Apicurio Registry Operator deployment quickstart for instructions. In the future, the Operator will be available from the Kubernetes operatorhub.io catalog.
After installation, you can create an ApicurioRegistry resource (see the deployment quickstart's in-memory example) and configure it to be deployed in your cluster. If you want to customize the deployed ApicurioRegistry resource, you can define things like the persistence type and the ingress-route configuration to expose it externally.
Conclusion
The Apicurio Registry and Apicurio Registry Operator make it easier to discover, manage, and work with service specifications and artifacts—not only for request-response synchronous APIs but also for asynchronous and event-driven architectures. For a technical preview and supported version of Apicurio Registry, check out the Red Hat Integration service registry. This service registry is a drop-in replacement for the Confluent Schema Registry and is designed to help teams govern their service schemas.
Meanwhile, the Apicurio community continues enhancing Apicurio's component ecosystem. The new Apicurio Registry Operator is still in development, but we invite you to try it out and provide feedback to the team.
Last updated: February 5, 2024