Confluent/KRaft
Confluent/KRaft是Apache Kafka在2.8之后推出的功能,由Confluent包装的版本,目的是为了取代Apache ZooKeeper的功能。
设定
这边是三controller机的设定。
先把/etc/kafka/kraft/controller.properties
复制到/etc/kafka/server.properties
下,然后把以下的设定值改成对应的值:
process.roles=controller
node.id=1
controller.quorum.voters=1@kafka-controller-1.example.com:19092,2@kafka-controller-2.example.com:19092,3@kafka-controller-3.example.com:19092
listeners=CONTROLLER://kafka-controller-1.example.com:19092
controller.listener.names=CONTROLLER
listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL
log.dirs=/opt/kraft-controller-logs
接着先产生--cluster-id=
后面需要用到的值,三台的值都会是同一个:
kafka-storage random-uuid
接着透过kafka-storage
把/opt/kraft-controller-logs
这个目录初始化:
sudo -u cp-kafka kafka-storage format --config=/etc/kafka/server.properties --cluster-id=xxxxxxxxxxxxxxxxxxxxxx