当我在没有SASL的服务器上运行rabbitmqconnector时,它工作得很好。事实上,它也在SASL激活的服务器中工作,但在重新启动Kafka Connect服务后,它现在无法开始工作。错误为:
org.apache.kafka.common.errors.TimeoutException: License topic could not be created
Caused by: org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment.
这是许可证问题吗?我不认为我们为它购买了任何许可证,它说有30天的免费试用期。但同时,我想我们已经用了30多天了。
编辑:在connect.log文件中发现:
INFO [AdminClient clientId=RabbitMQSinkConnector2-license-manager] Metadata update failed
编辑2:这与SASL有关。在为我的broker启用SASL后,rabbitmqconnector开始出现此错误。
通过为启用sasl的代理添加一点额外的配置来解决这个问题,就像我为debezium连接器所做的那样。您需要将这些行添加到连接器配置中:
"confluent.topic.sasl.mechanism": "PLAIN",
"confluent.topic.security.protocol": "SASL_PLAINTEXT",
"confluent.topic.sasl.jaas.config": "org.apache.kafka.common.security.plain.PlainLoginModule required username=admin password=secret;"
如果你不想暴露你的sasl凭据,你可以把它保存在一个文件中,然后像这样更改最后一个:
"confluent.topic.sasl.jaas.config": "${file:/kafka/vty/pass.properties:sasl}"
当然,您需要先启用从文件中读取。