Apache kafka 正在使用Avro转换器运行Kafka Connect:ConfigException:";缺少架构注册表url“;
嗨,我正在运行卡夫卡连接docker图像Apache kafka 正在使用Avro转换器运行Kafka Connect:ConfigException:";缺少架构注册表url“;,apache-kafka,confluent-platform,apache-kafka-connect,Apache Kafka,Confluent Platform,Apache Kafka Connect,嗨,我正在运行卡夫卡连接docker图像 docker run -d \ --name=kafka-connect \ --net=host \ -e CONNECT_BOOTSTRAP_SERVERS=localhost:39092 \ -e CONNECT_REST_PORT=28082 \ -e CONNECT_GROUP_ID="quickstart" \ -e CONNECT_CONFIG_STORAGE_TOPIC="quickstart-config" \
docker run -d \
--name=kafka-connect \
--net=host \
-e CONNECT_BOOTSTRAP_SERVERS=localhost:39092 \
-e CONNECT_REST_PORT=28082 \
-e CONNECT_GROUP_ID="quickstart" \
-e CONNECT_CONFIG_STORAGE_TOPIC="quickstart-config" \
-e CONNECT_OFFSET_STORAGE_TOPIC="quickstart-offsets" \
-e CONNECT_STATUS_STORAGE_TOPIC="quickstart-status" \
-e CONNECT_KEY_CONVERTER="io.confluent.connect.avro.AvroConverter" \
-e CONNECT_KEY_CONVERTER_SCHEMA_REGISTRY_URL="http://localhost:8081" \
-e CONNECT_VALUE_CONVERTER="io.confluent.connect.avro.AvroConverter" \
-e CONNECT_VALUE_CONVERTER_SCHEMA_REGISTRY_URL="http://localhost:8081" \
-e CONNECT_INTERNAL_KEY_CONVERTER="io.confluent.connect.avro.AvroConverter" \
-e CONNECT_INTERNAL_VALUE_CONVERTER="io.confluent.connect.avro.AvroConverter" \
-e CONNECT_REST_ADVERTISED_HOST_NAME="localhost" \
-e CONNECT_ZOOKEEPER_CONNECT="localhost:2181" \
tim/kafka-connect
得到
Exception in thread "main" org.apache.kafka.common.config.ConfigException: Missing Schema registry url!
at io.confluent.connect.avro.AvroConverter.configure(AvroConverter.java:64)
at org.apache.kafka.connect.runtime.Worker.<init>(Worker.java:93)
at org.apache.kafka.connect.cli.ConnectDistributed.main(ConnectDistributed.java:74)
线程“main”org.apache.kafka.common.config.ConfigException中的异常:缺少架构注册表url!
在io.confluent.connect.avro.AvroConverter.configure处(AvroConverter.java:64)
位于org.apache.kafka.connect.runtime.Worker.(Worker.java:93)
位于org.apache.kafka.connect.cli.ConnectDistributed.main(ConnectDistributed.java:74)
无法确定在何处添加“schema.registry.url”conf 问题出在
\u INTERNAL\u键
和\u INTERNAL\u值
我没有像我为
\u KEY\u CONVERTER
和\u KEY\u VALUE
添加这两个模式的SCHEMA\u REGISTRY\u URL,我切换回org.apache.kafka.connect.json.JsonConverter
作为内部键和值如果您使用.properties
文件,您需要:
:internal.key.converter.schema.registry.url http://urlgoes.here
:internal.value.converter.schema.registry.url http://urlgoes.here
INTERNAL_KEY_CONVERTER_SCHEMA_REGISTRY_URL=http://urlgoes.here
INTERNAL_VALUE_CONVERTER_SCHEMA_REGISTRY_URL=http://urlgoes.here
如果要传入命令行环境变量,则需要:
:internal.key.converter.schema.registry.url http://urlgoes.here
:internal.value.converter.schema.registry.url http://urlgoes.here
INTERNAL_KEY_CONVERTER_SCHEMA_REGISTRY_URL=http://urlgoes.here
INTERNAL_VALUE_CONVERTER_SCHEMA_REGISTRY_URL=http://urlgoes.here
这是正确的答案。此处使用的avro转换器需要对其所用的每个实例进行模式注册表URL配置。JsonConverter没有这样的要求,尽管如果您想使用它们,它有自己的特定配置选项(例如schemas.enable)。