溫馨提示×

怎樣在Linux上配置Kafka集群

小樊
42
2025-07-20 08:12:21
欄目: 智能運維

在Linux上配置Kafka集群涉及多個步驟,包括安裝、配置、啟動以及安全設置。以下是一個詳細的指南:

安裝Kafka

  1. 更新系統軟件包列表
sudo apt-get update
  1. 安裝Java開發工具包(JDK)和Maven(如果尚未安裝):
sudo apt-get install openjdk-11-jdk maven
  1. 下載Kafka

訪問Apache Kafka官方網站并下載最新版本的Kafka。例如,要下載Kafka 3.0.0,請運行以下命令:

wget https://downloads.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz
  1. 解壓Kafka文件
tar -xzf kafka_2.13-3.0.0.tgz
  1. 進入解壓后的Kafka目錄
cd kafka_2.13-3.0.0

配置Kafka集群

  1. 創建配置目錄
mkdir config
  1. 復制Kafka和Zookeeper服務啟動腳本
cp bin/kafka-server-start.sh bin/zookeeper-server-start.sh /usr/local/bin/
  1. 創建Kafka配置文件
cp config/server.properties /usr/local/kafka/config/
  1. 配置Zookeeper

編輯Kafka的配置文件config/zookeeper.properties,設置數據目錄和其他必要參數。例如:

dataDir = /tmp/zookeeper
clientPort = 2181
maxClientCnxns = 0
  1. 配置Kafka Broker

編輯Kafka的配置文件config/server.properties,設置broker ID、日志目錄等參數。例如:

broker.id = 0
listeners = PLAINTEXT://localhost:9092
log.dirs = /tmp/kafka-logs
num.partitions = 1
  1. 分發配置文件到其他節點

使用scp命令將配置文件分發到集群中的其他節點,并修改每個節點的broker.id以匹配其在集群中的位置。

啟動Kafka集群

  1. 啟動Zookeeper服務
sudo /usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties
  1. 啟動Kafka服務
sudo /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
  1. 驗證安裝

使用jps命令檢查Kafka服務是否正常運行。

安全設置

  1. 配置防火墻規則

確保只開放Kafka使用的端口,如9092(Broker間通信)、2181(ZooKeeper)、9094(TLS/SSL加密通信)等。

sudo ufw allow 9092/tcp
sudo ufw allow 2181/tcp
sudo ufw allow 9094/tcp
  1. 使用TLS/SSL加密通信

生成SSL證書,并在Kafka的配置文件server.properties中配置listeners和security.inter.broker.protocol以啟用SSL。

listeners=SSL://:9093
security.inter.broker.protocol=SSL
ssl.trustStore=/path/to/truststore.jks
ssl.trustStore.password=password
ssl.keyStore=/path/to/keystore.jks
ssl.keyStore.password=password
  1. 啟用SASL認證

安裝并配置Kafka SASL插件,創建JAAS配置文件,并修改Kafka配置文件以啟用SASL認證。

# 在server.properties中啟用SASL
listeners=SASL_PLAINTEXT://:9092
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.mechanism.inter.broker.protocol=PLAINTEXT
sasl.enabled.mechanisms=SCRAM-SHA-256
  1. 限制訪問權限

使用ACL(訪問控制列表)功能定義用戶和角色,為用戶分配適當的權限。

kafka-topics.sh --zookeeper localhost:2181 --alter --topic test --add-partition 1 --partitions 2 --replication-factor 2
  1. 禁用root賬戶遠程登錄

修改/etc/ssh/sshd_config文件,將PermitRootLogin設置為no。

PermitRootLogin no
  1. 定期更新和監控

定期更新Kafka和JDK,保持其最新版本,以獲取最新的安全補丁。同時,配置監控和日志記錄,以便及時發現和響應安全事件。

以上步驟應該能幫助您在Linux上成功配置Kafka集群。如果在配置過程中遇到任何問題,建議查閱Kafka官方文檔或尋求社區支持。

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