2017-08-08 8 views
2

記載のとおり。私にブローカーが3人いるとします。私が消費者として接続すると、ブローカーの1人がグループコーディネーターになります。私はブローカーを殺す(または死ぬ)。すぐにブローカに再接続しようとすると、コーディネータが利用できないというエラーが表示されます。カフカブローカーが消費者団体の調整に関して失敗した場合はどうなりますか?

カフカはブローカーが死んだことをどのように知っていますか、新しいコーディネーターを割り当てるのにどれくらい時間がかかりますか?そしてそれはどのように構成されていますか?

これはドキュメントにあるはずですが、見つかりませんでした。

+0

使用しているカフカバージョンは何ですか? – marvel308

+0

グループコーディネーターの障害回復を正常に検証できましたか?私は3つのブローカーを持つテストトポロジーを持っていて、消費者グループコーディネーターがクラッシュすると、トピックのバランスが正しく取れますが、消費者グループはメッセージを受信しなくなります。バージョン0.11.0.1 – Yamada

+0

@ Yamadaはいを使用していますが、時間がかかりました。使用しているクライアントがどのレベルで動作しているかによって異なります。コーディネーターに依存することも、クライアントで手動で行うこともできます。私は両方に出くわし、頭痛の終わりに至っていません。 – deitch

答えて

0

私は飼育係は、あなたがApacheのカフカの重要な依存関係が分散構成と同期サービスであるApacheの飼育係、ある

を求めているすべてのものを扱うと考えています。 Zookeeperは、Kafkaブローカーと消費者の間の調整インターフェースとして機能します。 Kafkaサーバーは、Zookeeperクラスタを介して情報を共有します。 Kafkaはトピック、ブローカー、コンシューマーオフセット(キューリーダー)などの情報をZookeeperに保存します。

すべての重要な情報はZookeeperに保存され、通常このデータをそのアンサンブル全体に複製するため、Kafkaブローカー/ Zookeeperの障害はKafkaクラスターの状態に影響しません。 Zookeeperが再起動すると、Kafkaは状態を復元します。これにより、カフカの停止時間はゼロになります。カフカブローカー間のリーダー選挙は、リーダーの失敗の際にZookeeperを使用して行われます。私は

The role of Apache ZooKeeper in Apache Kafka

+0

@ marvel208 consumer_offsetsは最新バージョンのKafka 0.11.0.0リリースのブローカレベルで保存されています。したがって、ブローカの状態はクラスタ全体の状態に影響する可能性があります。 – FindingTheOne

+0

@ marvel308本当に。 Zookeeperは状態ストア(複製+ロジック)です。しかし、実際のブローカーがコーディネーターとして機能します。カフカがコーディネーターリーダーの喪失、新しいコーディネーターの割り当て方法、およびそれを設定する方法をどのように認識しているかを知りたい。 – deitch

+0

すべてのブローカーには、新しいリーダーが選出されるたびに、またはパーティションの数が変更されたときに動物園キーパーによって最新の状態に保たれるトピック(およびパーティション)とそのリーダーのリストに関する情報があります。 – marvel308

0

ブログを経ることをお勧め
私は内部を理解するために、次ののStackOverflowポストとカフカのConfluence Wikiのを読んでお勧めします。

Coordinator Failover

Group Coordinator and Consumer Group

Kafka Client-side Assignment Proposal

カフカすなわち__consumer_offsetsの新しいバージョンに若干のばらつきがあり、ブローカーの代わりに、飼育係とコーディネーター+飼育係であるに格納されている(消費者のオフセットを格納するために使用されます)消費者集団を維持するために使用される。

+0

コーディネータであるブローカが失敗したときに何が起こるか説明していません。 – deitch

+0

私がコーディネーターフェイルオーバーこの[リンク]で上で何かを見つけた(https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Detailed+Consumer+Coordinator+Design#KafkaDetailedConsumerCoordinatorDesign-10.OnCoordinatorFailover)。 – FindingTheOne

+0

これは近いです。私は実際のメカニズムと構成制御を探しています。 – deitch

関連する問題