目錄標題
- ?`kafka` 與 `zookeeper`間的關系
- 一.集群部署
- 二.修改配置文件
- 三.分發安裝包
- 四.啟動與關閉
kafka 與 zookeeper 相同,是以集群的形式使用
?kafka
與 zookeeper
間的關系
- kafka 的使用 要在 zookeeper 集群配置好的基礎上 使用
- 要想啟動kafka 要先啟動 zookeeper
原因如下
Kafka 啟動前需要先啟動 ZooKeeper,因為 Kafka 依賴 ZooKeeper 完成以下核心功能:
- 集群管理
ZooKeeper 存儲 Kafka 集群的元數據(如 Broker 列表、Topic 配置、分區副本信息),Broker 啟動時必須向 ZooKeeper 注冊自身信息并同步集群狀態 - 控制器選舉
Kafka 集群需要選出一個主節點(Controller)來協調分區和副本的故障恢復,ZooKeeper 負責實現這一選舉過程 - 故障監測
ZooKeeper 通過臨時節點實時監控 Broker 存活狀態,一旦 Broker 宕機,立即觸發副本切換或重新選舉 - 配置同步
動態配置(如 Topic 參數)通過 ZooKeeper 統一管理,確保所有 Broker 配置一致
如果 ZooKeeper 未啟動:
Kafka Broker 無法獲取集群信息、無法選舉控制器、無法感知其他節點,導致啟動失敗或集群不可用
注
新版本的kafka(2.8+)支持 獨立運行
一.集群部署
- 下載安裝包
- 解壓安裝包 至 指定位置
- 修改名稱為
kafka
- 配置 環境變量
export KAFKA_HOME = /opt/module/kafka
export PATH = $PATH:$KAFKA_HOME/bin
內容為 kafka
中,bin文件
的位置
- 刷新
profile
文件 使環境變量 生效
source /etc/profile
事后將 環境變量 分發給 集群內 的 其他虛擬機
二.修改配置文件
配置文件名為 server.properties
位于 kafka/config/
中
- 修改內容有三處
- 本機 kafka 的編號 (唯一性)
broker.id
= - kafka 日志文件存放的位置
因為 默認位置 在電腦 關機初始化的文件夾中
log.dirs= /opt/module/kafka/datas
- 連接 zookeeper 集群地址
(并存儲在zookeeper 下的 kafka,方便管理)
zookeeper.connect = 虛擬機名:2181,虛擬機名:2181,虛擬機名:2181/kafka
三.分發安裝包
scp -r 文件名 虛擬機名:位置
- ?切記
分發后,一定要將server.properties
內的 kafka編號 更改
broker.id=
使編號 不重復,且集群內 虛擬機的編號 最好連續(可以為“0”)
四.啟動與關閉
先進入到kafka
啟動
bin/kafka-server-start.sh start config/server.properties
關閉
bin/kafka-server-stop.sh