Add schema registry to Kafka tools

This commit is contained in:
Chris Bono
2022-04-15 13:05:07 -05:00
parent 3e9571d777
commit af10c1f863
3 changed files with 54 additions and 8 deletions

View File

@@ -20,21 +20,45 @@ TIP: To start the containers in the foreground simply add `-d` to the start comm
=== Control Center UI
Runs a https://docs.confluent.io/platform/current/control-center/index.html[Confluent Control Center] that exposes a UI at http://locahost:9021.
NOTE: It is expected that the brokers are already running
NOTE: The scripts must be chained together as the UI depends on the brokers
To start the Control Center run the following command:
To start the brokers and the Control Center UI run the following command:
[source,shell]
----
docker-compose -f ./control-center-ui.yml up
docker-compose -f ./kafka-cluster.yml -f ./control-center-ui.yml up
----
To stop the Control Center run the following command:
To stop the brokers and the Control Center UI run the following command:
[source,shell]
----
docker-compose -f ./control-center-ui.yml down
docker-compose -f ./kafka-cluster.yml -f ./control-center-ui.yml down
----
TIP: The scripts can be chained together to start both cluster and UI in a single command
=== Schema Registry
Runs a https://docs.confluent.io/platform/current/schema-registry/index.html[Confluent Schema Registry] available at http://locahost:8081.
NOTE: The scripts must be chained together as the schema registry depends on the brokers
To start the brokers and the schema registry run the following command:
[source,shell]
----
docker-compose -f kafka-cluster.yml -f ./control-center-ui.yml up`
docker-compose -f ./kafka-cluster.yml -f ./schema-registry.yml up
----
To stop the brokers and the schema registry run the following command:
[source,shell]
----
docker-compose -f ./kafka-cluster.yml -f ./schema-registry.yml down
----
=== All The Things
The scripts can be chained together to start the cluster, UI and schema registry with the following commmand:
[source,shell]
----
docker-compose -f kafka-cluster.yml -f ./control-center-ui.yml -f ./schema-registry.yml up
----
Likewise, to stop all the things:
[source,shell]
----
docker-compose -f kafka-cluster.yml -f ./control-center-ui.yml -f ./schema-registry.yml down
----
TIP: The only "UI" representation of the schema registry is by navigating to a `Topic` and then clicking the `Schema` tab for the topic

View File

@@ -21,7 +21,7 @@ services:
#CONTROL_CENTER_CONNECT_CONNECT-DEFAULT_CLUSTER: 'connect:8083'
#CONTROL_CENTER_KSQL_KSQLDB1_URL: "http://ksqldb-server:8088"
#CONTROL_CENTER_KSQL_KSQLDB1_ADVERTISED_URL: "http://localhost:8088"
#CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://schema-registry:8081"
CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://schema-registry:8081"
CONTROL_CENTER_REPLICATION_FACTOR: 1
CONTROL_CENTER_INTERNAL_TOPICS_PARTITIONS: 1
CONTROL_CENTER_MONITORING_INTERCEPTOR_TOPIC_PARTITIONS: 1

View File

@@ -0,0 +1,22 @@
version: '2'
# Runs a Confluent Schema Registry instance on 'http://localhost:8081'.
#
# Pre-requisites: The brokers are already running.
services:
schema-registry:
image: confluentinc/cp-schema-registry:7.0.1
hostname: schema-registry
container_name: schema-registry
depends_on:
- broker1
- broker2
- broker3
ports:
- "8081:8081"
environment:
SCHEMA_REGISTRY_HOST_NAME: schema-registry
SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: 'broker1:29091,broker2:29092,broker3:29093'
SCHEMA_REGISTRY_LISTENERS: http://0.0.0.0:8081
SCHEMA_REGISTRY_LOG4J_ROOT_LOGLEVEL: WARN