溫馨提示×

Linux Kafka集群搭建步驟

小樊
48
2025-08-30 08:34:01
欄目: 智能運維

以下是在Linux上搭建Kafka集群的步驟(以3節點為例):

一、環境準備

  1. 服務器要求:至少3臺Linux服務器(如CentOS 7),確保能互相通信。
  2. 關閉防火墻/SELinux
    systemctl stop firewalld && systemctl disable firewalld  # 關閉防火墻  
    setenforce 0  # 臨時關閉SELinux  
    sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config  # 永久關閉  
    
  3. 安裝Java:Kafka依賴JDK 8+,推薦OpenJDK:
    yum install -y java-1.8.0-openjdk-devel  
    java -version  # 驗證安裝  
    

二、安裝Zookeeper集群

  1. 下載并解壓Zookeeper
    wget https://downloads.apache.org/zookeeper/stable/zookeeper-3.8.0.tar.gz  
    tar -zxvf zookeeper-3.8.0.tar.gz -C /opt  
    mv /opt/zookeeper-3.8.0 /opt/zookeeper  
    
  2. 配置Zookeeper
    編輯/opt/zookeeper/conf/zoo.cfg,添加集群節點信息:
    tickTime=2000  
    initLimit=10  
    syncLimit=5  
    dataDir=/opt/zookeeper/data  
    clientPort=2181  
    server.1=node1:2888:3888  
    server.2=node2:2888:3888  
    server.3=node3:2888:3888  
    
  3. 創建myid文件:在每個節點的/opt/zookeeper/data目錄下創建myid,內容為對應節點ID(1/2/3)。
  4. 啟動Zookeeper
    /opt/zookeeper/bin/zkServer.sh start  
    

三、安裝Kafka集群

  1. 下載并解壓Kafka
    wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz  
    tar -zxvf kafka_2.12-3.5.2.tgz -C /usr/local/  
    ln -s /usr/local/kafka_2.12-3.5.2 /usr/local/kafka  
    
  2. 配置Kafka
    編輯/usr/local/kafka/config/server.properties,關鍵參數:
    broker.id=1  # 每個節點唯一ID(1/2/3)  
    listeners=PLAINTEXT://node1:9092  # 監聽地址(需為節點外網IP)  
    log.dirs=/usr/local/kafka/logs  # 日志存儲目錄  
    zookeeper.connect=node1:2181,node2:2181,node3:2181  # ZooKeeper集群地址  
    
    將配置好的Kafka目錄復制到其他節點,修改broker.idlisteners。
  3. 啟動Kafka
    /usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties  
    

四、驗證集群狀態

  1. 查看Kafka進程
    jps  # 應看到Kafka進程  
    
  2. 創建測試Topic
    /usr/local/kafka/bin/kafka-topics.sh --create --bootstrap-server node1:9092 --replication-factor 3 --partitions 3 --topic test  
    
  3. 測試消息生產與消費
    • 生產者:
      /usr/local/kafka/bin/kafka-console-producer.sh --bootstrap-server node1:9092 --topic test  
      
    • 消費者:
      /usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server node2:9092 --topic test --from-beginning  
      

五、集群優化與安全(可選)

  • 配置副本與分區:通過replication.factorpartitions參數調整數據冗余和并行度。
  • 啟用安全機制:如SSL/TLS加密、SASL認證(需修改server.properties并配置證書)。
  • 監控與日志:使用Prometheus+Grafana監控集群狀態,定期分析Kafka日志。

注意事項

  • 確保Zookeeper集群先于Kafka啟動,且所有節點時間同步(可使用NTP服務)。
  • 生產環境中建議使用高版本Kafka(如3.5+),并配置自動故障轉移機制。

以上步驟參考自,可根據實際環境調整參數。

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