# Kafka-Manager怎么用
## 一、Kafka-Manager簡介
Kafka-Manager是Yahoo開源的Kafka集群管理工具,提供Web UI界面,支持以下核心功能:
- 多集群管理
- Broker狀態監控
- Topic創建/刪除/配置修改
- 分區管理(擴縮容、副本分配)
- 消費者組監控
- 副本重分配
- 權限管理(配合SASL)
> 項目地址:https://github.com/yahoo/kafka-manager
## 二、環境準備
### 1. 依賴環境
- JDK 1.8+
- ZooKeeper集群(與Kafka共用)
- Kafka 0.8.2+(建議1.0+版本)
### 2. 安裝方式
推薦兩種安裝方式:
#### 方式一:源碼編譯
```bash
git clone https://github.com/yahoo/kafka-manager.git
cd kafka-manager
./sbt clean dist
# 生成的zip包在target/universal目錄下
wget https://github.com/yahoo/kafka-manager/releases/download/2.0.0.2/kafka-manager-2.0.0.2.zip
unzip kafka-manager-2.0.0.2.zip
修改conf/application.conf關鍵配置:
kafka-manager.zkhosts="zk1:2181,zk2:2181,zk3:2181"
kafka-manager.zkhosts=${?ZK_HOSTS}
application.secret="your_secret_key"
bin/kafka-manager -Dconfig.file=conf/application.conf \
-Dhttp.port=9000 \
-java-home /usr/java/jdk1.8.0_291
建議使用systemd管理:
# /etc/systemd/system/kafka-manager.service
[Unit]
Description=Kafka Manager
After=network.target
[Service]
User=kafka
ExecStart=/path/to/bin/kafka-manager -Dconfig.file=/path/to/conf/application.conf
Restart=always
[Install]
WantedBy=multi-user.target
http://<host>:9000
{
"retention.ms": "172800000",
"cleanup.policy": "delete"
}
當需要平衡集群負載時: 1. 進入”Topics” > 選擇Topic > “Generate Partition Assignments” 2. 選擇目標Broker 3. 點擊”Run Assignments”
解決Leader不均衡問題: 1. 進入”Brokers”視圖 2. 點擊”Run Preferred Replica Election”
需在Broker端開啟JMX:
KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999"
host:port,host:port/pathkafka-manager.jmx.user和kafka-manager.jmx.password配置調整超時參數:
kafka-manager.broker-view-thread-pool-size=16
kafka-manager.broker-view-update-seconds=30
修改application.conf:
basicAuthentication.enabled=true
basicAuthentication.username="admin"
basicAuthentication.password="password"
配置JAAS文件:
-Djava.security.auth.login.config=/path/to/jaas.conf
隨著Kafka生態發展,也可考慮: - CMAK (原Kafka-Manager分支) - Kafka Web Console - Confluent Control Center(商業版)
注意:Kafka-Manager已停止維護,生產環境建議評估其他方案
最佳實踐建議:
1. 為每個環境(dev/test/prod)部署獨立實例
2. 定期備份conf/application.conf配置文件
3. 監控服務本身的資源使用情況(內存/線程數)
“`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。