Kafka 學習筆記

Kafka - Zookeeper Mode 安裝步驟

本文將介紹在傳統的 Zookeeper Mode 下安裝 Kafka 的步驟。

Kafka Installation

Kafka official site: https://kafka.apache.org/downloads

Kafka provides two types of downloads on its official website, namely Source downloads and Binary downloads. The difference between the two is that Source download means Kafka’s source code, and users need to compile it themselves after downloading, while Binary Download means pre-compiled binaries that users can download and use directly. Additionally, different versions of Kafka written in different Scala versions are available for download in Binary Download.

以下步驟需要在每個 node 上操作。

下載 Kafka (以 3.4.0 為例)

2.13 為 scala 的版本

curl -OL https://downloads.apache.org/kafka/3.4.0/kafka_2.13-3.4.0.tgz

解壓縮

tar -zxvf kafka_2.13-3.4.0.tgz -C /opt/module

mv /opt/module/kafka_2.13-3.4.0 /opt/module/kafka

設定 broker.id

如果我需要部署一個 Kafka cluster, 要注意在每一台 node 上的 config/server.properties 內的 broker.id 需要設為不一樣, 否則會出錯。

Log Basics

預設的 log.dirs/tmp/kafka-logs, 這位導致 log 遺失, 因此需要調整 log 位置。例如: /opt/module/kafka/data

Zookeeper Client

預設的 zookeeper.connectlocalhost:2181, 需要改為 cluster 內所有 host 位置, 假設集群有 3 台 node, 他們的 ip 分別是:

  • 192.168.1.100
  • 192.168.1.101
  • 192.168.1.102

那就應該配置為:

/kafka 的意思為, 在 zookeeper 內建立一個名為 kafka 的目錄, 未來如不需要此 cluster , 直接刪除 kafka 即可。

zookeeper.connect: 192.168.1.100:2181,192.168.1.101:2181,192.168.1.102:2181/kafka

environment variable

修改 /etc/profile.d/my_env.sh

export KAFKA_HOME=/opt/module/kafka/data
export PATH=$PATH:$KAFKA_HOME/bin

source /etc/profile

啟動 zookeeper

/opt/module/kafka/bin/zookeeper-server-start.sh /opt/module/kafka/config/zookeeper.properties

啟動 Kafka

/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties

關閉 Kafka

先關閉 Kafka 再關閉 zookeeper。否則會無法關閉 Kafka。