我正在尝试在ec2上运行schema registry我的kafka正在aws上运行。
这是我的属性文件
listeners=http://0.0.0.0:8081
kafkastore.connection.url=z-3.***:2181,z-***:2181,z-**:2181
kafkastore.bootstrap.servers=PLAINTEXT://b-3.**:9092,PLAINTEXT://b-6.**:9092,PLAINTEXT://b-1.**:9092
kafkastore.topic=_schemas
debug=false
schema-registry-start /etc/schema-registry/schema-registry.properties &
当我运行这个我得到下面的错误
kafka.common.KafkaException: Failed to parse the broker info from zookeeper: {"listener_security_protocol_map":{"CLIENT":"PLAINTEXT","CLIENT_SECURE":"SSL","REPLICATION":"PLAINTEXT","REPLICATION_SECURE":"SSL"},"endpoints"
Caused by: java.lang.IllegalArgumentException: No enum constant org.apache.kafka.common.protocol.SecurityProtocol.CLIENT
我已经改变了它的tsl,明文和没有两者,但都是抛出错误。我有连接从ec2到msk以及。
ApacheKafka版本
2.2.1
汇合
sudo rpm --import http://packages.confluent.io/deb/3.1/archive.key
即使我没有提到代理的网址,然后我也得到同样的错误
基于答案更新问题
当未提及连接url时
[ec2-user@ip-10-97-54-99 ~]$ [2020-01-11 03:46:29,418] ERROR Server died unexpectedly: (io.confluent.kafka.schemaregistry.rest.SchemaRegistryMain:51)
io.confluent.common.config.ConfigException: Missing required configuration "kafkastore.connection.url" which has no default value.
at io.confluent.common.config.ConfigDef.parse(ConfigDef.java:241)
at io.confluent.common.config.AbstractConfig.<init>(AbstractConfig.java:76)
at io.confluent.rest.RestConfig.<init>(RestConfig.java:299)
at io.confluent.kafka.schemaregistry.rest.SchemaRegistryConfig.<init>(SchemaRegistryConfig.java:358)
at io.confluent.kafka.schemaregistry.rest.SchemaRegistryConfig.<init>(SchemaRegistryConfig.java:354)
at io.confluent.kafka.schemaregistry.rest.SchemaRegistryMain.main(SchemaRegistryMain.java:41)
提及 CLIENT://
或者 CLIENT_SECURE://
也抛出了同样的错误。
msk确实提供了 Plaintext
我也能从客户信息中看到
2条答案
按热度按时间o2rvlv0m1#
如果您配置
kafkastore.bootstrap.servers
,则需要从架构注册表中删除zookeeper连接字符串。以Kafka为基础的初选是在
<kafkastore.connection.url>
未配置并且具有kafka引导代理<kafkastore.bootstrap.servers>
明确规定先把它去掉。
同样相关-https://github.com/confluentinc/schema-registry/issues?utf8=%e2%9c%93&q=is%3aissue+msk+
不清楚您试图安装哪个版本的注册表,但是msk没有任何纯文本客户端连接字符串,如
listener_security_protocol_map
.您需要指定一个不同的连接,例如
CLIENT://
或者CLIENT_SECURE://
对于有效的侦听器协议,假设明文仍然不起作用83qze16e2#
我想问题出在你的版本上。我也面临同样的问题后,我手动安装,它为我工作。
这是我的确切安装步骤和模式注册表开始步骤