Kafka-Kraft モード
左の図は、Kafka の既存のアーキテクチャを示しています。メタデータは Zookeeper にあり、コントローラは実行時に動的に選択され、Kafka クラスターはコントローラによって管理されます。右の図は、Kraft モード アーキテクチャ (実験的) を示しています。 Zookeeper クラスターに依存しますが、3 つのコントローラーを使用します ノードは Zookeeper を置き換え、メタデータはコントローラーに保存され、コントローラーは Kafka クラスターを直接管理します 利点: 1. Kafka は外部フレームワークに依存しなくなり、独立して実行でき
ます
。 2.
コントローラーがクラスターを管理する場合、最初に Zookeeper から読み取る必要がなくなり、データを取得することでクラスターのパフォーマンスが向上します。 3. Zookeeper に
依存しないため、クラスターの拡張は Zookeeper の読み取りと読み取りによって制限されなくなります。
4. コントローラーは Dongyao によって選出されなくなりましたが、設定ファイルによって指定されるため、ターゲットを絞った方法でコントローラー ノードを強化できます。前
配備
設定変更
config/kraft/server.properties を解凍して変更します。
注意路径
vim config/kraft/server.properties
この4箇所を修正します
分发 修改其他节点的node.id=2和advertised.Listeners
クラスターを初期化する
bin/kafka-storage.sh random-uuid
Kafka ストレージ ディレクトリをこの ID でフォーマットし (ID は同じである必要があります)、3 台のマシンすべてを実行する必要があります。
bin/kafka-storage.sh format -t qtUYZ6KhQ5mlAxIg-T0M5w -c /usr/local/src/kafka/kraft/kafka_2.12-3.0.0/config/kraft/server.propertie
開始コマンド
bin/kafka-server-start.sh -daemon config/kraft/server.properties
逆指値注文
bin/kafka-server-stop.sh
脚本
#! /bin/bash
case $1 in
"start"){
for i in hadoop100 hadoop101 hadoop102
do
echo " --------启动 $i Kafka2-------"
ssh $i "/usr/local/src/kafka/kraft/kafka_2.12-3.0.0/bin/kafka-server-start.sh -daemon /usr/local/src/kafka/kraft/kafka_2.12-3.0.0/config/kraft/server.properties"
done
};;
"stop"){
for i in hadoop102 hadoop103 hadoop104
do
echo " --------停止 $i Kafka2-------"
ssh $i "/usr/local/src/kafka/kraft/kafka_2.12-3.0.0/bin/kafka-server-stop.sh "
done
};;
esac