kafka_2.8.0 より前では、kafka を実行するには依然として zookeeper に依存する必要があり、「ブローカー登録情報」、「トピック情報」、「運用および保守の一時情報」、「構成情報」などの kafka 内の多くのデータが zk に保存されていました。 以下では、写真を使用して、Zookeeper における Kafka の全体像を紹介します。ぜひ集めてみることをお勧めします!!! 一枚の写真がすべてを物語るZookeeper における Kafka のデータ構造 1/クラスター01- /cluster/id 永続データノード クラスター ID 最初のブローカーが起動すると、/cluster/id が存在しないことがわかり、その cluster.id 構成が zk に書き込まれます。現在の zk がどのクラスターに属しているかをマークします。他のブローカーが後で起動すると、データが取得されます。データが自身の構成と一致していないことが判明した場合;例外がスローされ、同じクラスターに参加しません。データ例: {"version":"1","id":"0"} 2/controller_epoch 永続データノードコントローラーの選出時間。 3/コントローラ一時データノード現在のコントローラー ロールの BrokerId、データ例: {"version":1,"brokerid":0,"timestamp":"1624415590383"} このノードを削除すると、すぐに再選出がトリガーされます 4/ログディレクトリイベント通知zk データには、シリアル番号永続ノードであるノード /log_dir_event_notification/ があります。 kafka でのこのノードの役割は次のとおりです: ブローカーの LogDir で例外が発生した場合 (ディスクの損傷、ファイルの読み取りおよび書き込みの失敗など)、子ノード /log_dir_event_notification/log_dir_event_serial 番号を zk に追加します。コントローラーはこのノードの変更を監視した後、ブローカーに LeaderAndIsrRequest リクエストを送信します。その後、オフラインレプリカに対していくつかのフォローアップ操作を実行します 5/isr_change_notification/log_dir_event_{シーケンス番号}Isrが変更されると、このノードコントローラは変更を監視するように書き込まれます。 6/管理者01 -/admin/delete_topics/{topicName} 永続ノード、削除するトピック このノードが存在するということは、現在のトピックを削除する必要があることを意味します。 02 - /admin/reassign_partitions 永続データノード このノードが存在する場合、データ移行が現在進行中であり、その中のデータは移行中の構成サンプル データであることを意味します。 7/ブローカー01 -/ブローカー/seqid /brokers/seqid: グローバルシーケンス番号にデータがありません。主にノードの dataVersion 情報をグローバル シーケンス番号として使用します。 Kafka の機能: BrokerId を自動的に生成は、主に brokerId を自動的に生成するために使用されます。クラスターが非常に大きい場合、brokerId の設定を繰り返すことはできず、1 つずつ設定するのは面倒です。ブローカーにBrokerIdを自動生成させることもできます server.properties の設定
BrokerIdの計算方法 ブローカーID = {reserved.broker.max.id} +/brokers/seqid.dataVersion /brokers/seqid の dataVersion 値を取得するたびに、set メソッドを使用します。設定時はバージョンデータは取得されずに返されます。ノードデータを設定するたびに、バージョン情報が自動的に増加します。グローバル自動インクリメント ID が実装されます。 02 - /brokers/ids/{id} 一時データノード: オンラインブローカーID すべてのオンラインブローカーはここにノードを登録します。オフラインになると自動的に削除されます。 03 - /brokers/topics/{topicName} 永続データノード ストレージ トピック パーティション レプリカの割り当て情報。例: {"version":1,"partitions":{"0":[0]}} /brokers/topics/{topicName}/{partition number}/state 永続データノード 指定されたパーティションのリーダーや isr などの情報を格納します。例: {"controller_epoch":203,"leader":0,"version":1,"leader_epoch":0,"isr":[0]} この記事はWeChat公式アカウント「Shi Zhenzhen's Grocery Store」から転載したものです。下のQRコードからフォローできます。記事を転載する場合は、石真珍食料品店の公式アカウントまでご連絡ください。 |
<<: コンテナを理解するには、まずその歴史から始めましょう
>>: Dubbo 3.0サーバー露出の全プロセスの詳細な分析
クラウドの力を活用することで、企業はコストを削減し、スケーラビリティを高め、セキュリティを強化し、俊...
NodeServさん、このVPS事業は2年以上もやっているんですよね?フロリダのコンピュータールーム...
2007年に海外で最も利用率の高いSEOツール1 SEO分析ツールのトップ10を挙げる2 バックリン...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています一部のネッ...
エンタープライズレベルのフルスタッククラウドICTサービスプロバイダーであるQingCloud(qi...
SEO に携わる人なら誰でも、ウェブサイトの SEO における独創性の重要性を知っているので、ここで...
ウェブマスターの友人は皆、Aizhan.com をよくご存知だと思います。 Aizhan.com 独...
最近、知的財産出版社株式会社傘下のプラットフォームであるi Think Tankは、中国のインターネ...
これらの Kubernetes ヘルパー ツールを活用して、アプリケーション定義の簡素化、監視の強化...
ヘンズは、Intel Xeon E5620 クアッドコア CPU、最低 64G のメモリ、RAID1...
[51CTO.comよりオリジナル記事]ポストパンデミック時代において、モバイルオフィスやリモートオ...
Budgetvm 特別価格サーバーは、E3-1230V3 CPU、16G メモリ、1T ディスク、拡...
この記事を書いた主な目的は、ウェブマスターに、常に過去の視点で現在の SEO 最適化を見ないように伝...
2015年以来、紅包は毎年の春節の美しい一面となっています。アリババを代表として、テンセント、百度、...
すべてのウェブマスターが毎朝必ず行うべきことは、クエリツールを開くか、Baidu 検索エンジンを使用...