簡體   English   中英

Kafka連接群集設置或啟動連接工作者

[英]Kafka connect cluster setup or launching connect workers

我正在通過kafka connect,我正在嘗試獲取這些概念。

讓我們說我有kafka集群(節點k1,k2和k3)設置並且它正在運行,現在我想在不同的節點中運行kafka connect worker,比如分布式模式下的c1和c2。

幾個問題。

1)要在分布式模式下運行或啟動kafka connect,我需要使用命令../bin/connect-distributed.sh ,該命令在kakfa集群節點中可用,因此我需要從任何一個kafka集群節點啟動kafka connect ? 或者我啟動kafka connect的任何節點都需要有kafka二進制文件,以便我可以使用../bin/connect-distributed.sh

2)我需要將我的連接器插件復制到我執行第1步的任何kafka集群節點(或所有集群節點?)?

3)在工作節點上啟動jvm進程之前,kafka如何將這些連接器插件復制到工作節點? 因為插件是具有我的任務代碼的插件,需要將其復制到worker才能在worker中啟動進程。

4)我是否需要在連接群集節點c1和c2中安裝任何東西,比如需要安裝java或任何相關的kafka連接?

5)在某些地方,它說使用匯合平台,但我想先用apache kafka connect啟動它。

有些人可以通過一些亮點甚至指向一些資源也會有所幫助。

謝謝。

1)為了有你需要運行的至少兩個實例高度可用的卡夫卡Connect服務connect-distributed.sh上具有相同的兩個不同的機器group.id 您可以在此處找到有關每個工作人員配置的更多詳細信息。 為了提高性能,Connect應獨立於代理和Zookeeper機器運行。

2)是的,您需要在計划運行kafka-connect的每台計算機上將所有連接器放在plugin.path下(通常位於/usr/share/java/ )。

3)kafka-connect將在啟動時加載連接器。 你不需要處理這個。 請注意,如果您的kafka-connect實例正在運行並且添加了新連接器,則需要重新啟動該服務。

4)您需要在所有計算機上安裝Java。 對於Confluent Platform,特別是:

此版本的Confluent Platform支持Java 1.7和1.8(目前不支持Java 1.9)。 您應該使用Garbage-First(G1)垃圾收集器運行。 有關更多信息,請參閱支持的版本和互操作性

5)這取決於。 Confluent由Apache Kafka的原始創建者創建,它是一個更完整的發行版,添加了模式管理,連接器和客戶端。 它還附帶KSQL,如果您需要對某些事件采取行動,它非常有用。 匯編只是在Apache Kafka發行版之上添加,它不是修改版本。

Giorgos給出的答案是正確的。 我跑了幾個連接器,現在我更了解它。

我只想嘗試不同的方式。

在Kafka connect中有兩件事涉及一個是Worker,第二件是connector.Below是關於運行分布式Kafka連接的詳細信息。

Kafka connect Worker是一個Java進程,連接器/連接任務將在該進程上運行。 首先,我們需要啟動worker,運行/啟動我們需要在該機器上安裝java的工作人員然后我們需要Kafka連接相關的sh / bat文件來啟動將由kafka connect worker使用的worker和kafka庫,為此我們只需在工作機器中復制/安裝Kafka,我們還需要在“plugin.path”中復制所有連接器和與連接任務相關的jar /依賴項,如下面的工作者屬性文件中所定義,現在工作機已准備就緒,要啟動worker,我們需要調用./bin/connect-distributed.sh ./config/connect-distributed.properties,這里connect-distributed.properties將為worker配置。 我們需要運行Kafka connect的每台機器都必須重復同樣的事情。

現在工作者java進程在所有機器上運行,woker配置將具有group.id屬性,具有相同屬性值的工作者將形成工作組/群集。

每個工作進程都會公開rest端點(默認http:// localhost:8083 / connectors ),在正在運行的worker上啟動/啟動連接器,我們需要http-post一個連接器配置json,根據給定的配置,worker將會啟動連接器和上述組/集群工作程序中的任務數。

示例:連接帖子,

curl -X POST -H "Content-Type: application/json" --data '{"name": "local-file-sink", "config": {"connector.class":"FileStreamSinkConnector", "tasks.max":"3", "file":"test.sink.txt", "topics":"connect-test" }}' http://localhost:8083/connectors

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM