Apache kafka 正在使用Avro转换器运行Kafka Connect:ConfigException:";缺少架构注册表url“;

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图像

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)。