溫馨提示×

Debian下Kafka配置需要注意哪些細節

小樊
69
2025-04-15 08:33:01
欄目: 智能運維

在Debian下配置Kafka時,需要注意以下幾個細節:

環境要求

  • 操作系統:確保使用Ubuntu 20.04+或更高版本。
  • 開放端口:9092(客戶端通信)、9093(KRaft控制器通信)。
  • 磁盤空間:根據業務需求分配,建議為/data/kafka目錄分配空間。
  • 依賴環境:Java 11+(推薦使用OpenJDK 11)。

安裝步驟

  1. 安裝Java
sudo apt update
sudo apt install openjdk-11-jdk -y
  1. 下載并解壓Kafka
wget https://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz
tar -xzf kafka_2.13-3.6.1.tgz
mv kafka_2.13-3.6.1 /opt/kafka
  1. 配置Kafka
  • 編輯config/kraft/server.properties文件,配置以下參數:

    • 通用配置(所有節點相同):

      process.roles=broker,controller
      listeners=PLAINTEXT://:9092,CONTROLLER://:9093
      inter.broker.listener.name=PLAINTEXT
      controller.listener.names=CONTROLLER
      advertised.listeners=PLAINTEXT://<當前節點IP>:9092
      
    • 節點特定配置(每個節點不同):

      node.id=1  # 節點1設為1,節點2設為2,節點3設為3
      controller.quorum.voters=1@10.0.0.1:9093,2@10.0.0.2:9093,3@10.0.0.3:9093
      log.dirs=/data/kafka/logs
      auto.create.topics.enable=true
      num.partitions=3  # 默認分區數(建議與節點數一致)
      default.replication.factor=3  # 默認副本數(確保高可用)
      
  1. 初始化集群元數據(僅首次執行):
cd /opt/kafka
bin/kafka-storage.sh format -t $(bin/kafka-storage.sh random-uuid) -c config/kraft/server.properties
  1. 啟動所有節點
/opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/kraft/server.properties
  1. 驗證進程
jps -l | grep Kafka

關鍵參數說明

  • auto.create.topics.enable=true:允許客戶端自動創建Topic,需配合num.partitionsdefault.replication.factor確保分區和副本合理。

驗證集群狀態

  1. 檢查集群元數據
bin/kafka-metadata-shell.sh --snapshot /data/kafka/logs/__cluster_metadata-0/00000000000000000000.log
  1. 測試Topic自動創建
  • 生產一條消息觸發自動創建Topic:
echo "test-message" | bin/kafka-console-producer.sh --bootstrap-server 10.0.0.1:9092,10.0.0.2:9092,10.0.0.3:9092 --topic auto-created-topic
  • 查看Topic分區分布:
bin/kafka-topics.sh --bootstrap-server 10.0.0.1:9092 --describe --topic auto-created-topic

以上是在Debian下配置Kafka時需要注意的一些細節,確保配置正確可以幫助你更好地運行和管理Kafka集群。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女