[英]kafka connect and kafka host requirements
我正在使用Couchbase接收器連接器。 CB和kafka在不同的AWS區域中的2個不同的EC2實例中。 我正在關注這些文檔:
基於這些,我收集到連接必須在還安裝了kafka的主機上運行。 我的連接能否在遠程主機上運行,以便我可以從遠程卡夫卡中讀取消息並將消息接收到遠程CB存儲桶中? 有任何與此相關的文檔嗎?
另外,我得到以下錯誤:
at org.apache.kafka.connect.util.ConvertingFutureCallback.result(ConvertingFutureCallback.java:79)
at org.apache.kafka.connect.util.ConvertingFutureCallback.get(ConvertingFutureCallback.java:66)
at org.apache.kafka.connect.cli.ConnectStandalone.main(ConnectStandalone.java:118)
Caused by: org.apache.kafka.connect.errors.ConnectException: Failed to find any class that implements Connector and which name matches com.couchbase.connect.kafka.CouchbaseSinkConnector, available connectors are: PluginDesc{klass=class org.apache.kafka.connect.file.FileStreamSinkConnector, name='org.apache.kafka.connect.file.FileStreamSinkConnector', version='2.3.0', encodedVersion=2.3.0, type=sink, typeName='sink', location='classpath'}, PluginDesc{klass=class org.apache.kafka.connect.file.FileStreamSourceConnector, name='org.apache.kafka.connect.file.FileStreamSourceConnector', version='2.3.0', encodedVersion=2.3.0, type=source, typeName='source', location='classpath'}, PluginDesc{klass=class org.apache.kafka.connect.tools.MockConnector, name='org.apache.kafka.connect.tools.MockConnector', version='2.3.0', encodedVersion=2.3.0, type=connector, typeName='connector', location='classpath'}, PluginDesc{klass=class org.apache.kafka.connect.tools.MockSinkConnector, name='org.apache.kafka.connect.tools.MockSinkConnector', version='2.3.0', encodedVersion=2.3.0, type=sink, typeName='sink', location='classpath'}, PluginDesc{klass=class org.apache.kafka.connect.tools.MockSourceConnector, name='org.apache.kafka.connect.tools.MockSourceConnector', version='2.3.0', encodedVersion=2.3.0, type=source, typeName='source', location='classpath'}, PluginDesc{klass=class org.apache.kafka.connect.tools.SchemaSourceConnector, name='org.apache.kafka.connect.tools.SchemaSourceConnector', version='2.3.0', encodedVersion=2.3.0, type=source, typeName='source', location='classpath'}, PluginDesc{klass=class org.apache.kafka.connect.tools.VerifiableSinkConnector, name='org.apache.kafka.connect.tools.VerifiableSinkConnector', version='2.3.0', encodedVersion=2.3.0, type=source, typeName='source', location='classpath'}, PluginDesc{klass=class org.apache.kafka.connect.tools.VerifiableSourceConnector, name='org.apache.kafka.connect.tools.VerifiableSourceConnector', version='2.3.0', encodedVersion=2.3.0, type=source, typeName='source', location='classpath'}
at org.apache.kafka.connect.runtime.isolation.Plugins.connectorClass(Plugins.java:180)
at org.apache.kafka.connect.runtime.isolation.Plugins.newConnector(Plugins.java:152)
at org.apache.kafka.connect.runtime.AbstractHerder.getConnector(AbstractHerder.java:519)
at org.apache.kafka.connect.runtime.AbstractHerder.validateConnectorConfig(AbstractHerder.java:289)
at org.apache.kafka.connect.runtime.standalone.StandaloneHerder.putConnectorConfig(StandaloneHerder.java:192)
at org.apache.kafka.connect.cli.ConnectStandalone.main(ConnectStandalone.java:115)
我收集到該連接必須在還安裝了kafka的主機上運行。
有Kafka 庫 ,是的,但沒有實際運行的代理,否。
換句話說,您不能將Kafka Connect作為Separarte服務下載,因此,當您獲得它時,它已經隨Kafka庫一起提供了。
我的連接能否在遠程主機上運行,以便我可以從遠程卡夫卡中讀取消息並將消息接收到遠程CB存儲桶中?
這是建議的部署。 類似於您不會在經紀人上運行普通生產者和消費者的方式。 Kafka Connect應該沒有什么區別。
引導服務器和Couchbase連接字符串將是它們各自的遠程地址
文件有點在這里
另外,我得到以下錯誤:
Failed to find any class that implements Connector and which name matches com.couchbase.connect.kafka.CouchbaseSinkConnector
如果您查看available connectors are:
的列表為available connectors are:
,則會看到未列出您的available connectors are:
。 這意味着您沒有使用庫正確加載Connector屬性的plugin.path
。
正如Couchbase文檔所述:
修改
plugin.path
屬性以包含kafka-connect-couchbase-<version>.jar
的父目錄
您還可以使用/connector-plugins
端點在發布配置之前驗證連接器是否已全部加載
Kafka Connect無法找到您的連接器。 您可以將plugin.path設置為指向連接器jar文件,也可以將連接器jar文件復制到kafka lib目錄中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.