在CentOS上配置Kafka的步驟如下:
Kafka需要Java運行環境,首先確保你的系統上安裝了Java。如果沒有,可以通過以下命令安裝:
sudo yum install java-1.8.0-openjdk-devel -y
驗證Java安裝成功:
java -version
從Apache官網下載適合的版本,例如Kafka 3.5.2:
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
sudo mv kafka_2.12-3.5.2 /opt/kafka
將Kafka的bin目錄添加到系統的PATH中:
echo 'export PATH=$PATH:/opt/kafka/bin' >> ~/.bashrc
source ~/.bashrc
打開config目錄下的server.properties
文件修改配置:
vim /opt/kafka/config/server.properties
配置日志存放位置:
log.dirs=/opt/kafka/kafka-logs
找到下面配置進行修改,位置大概在34行左右:
listeners=PLAINTEXT://:9092
改成自己服務器IP:
advertised.listeners=PLAINTEXT://your_server_ip:9092
先在解壓目錄下創建zookeeper文件夾用來存放數據,再打開config目錄下的zookeeper.properties
文件修改配置:
vim /opt/kafka/config/zookeeper.properties
配置數據存放位置:
dataDir=/opt/kafka/zookeeper
放通9092端口:
firewall-cmd --zone=public --add-port=9092/tcp --permanent
firewall-cmd --reload
注意:這里除了放通CentOS的端口,還要將安全組的端口也放通。
進入Kafka目錄并啟動Kafka服務:
cd /opt/kafka
./bin/kafka-server-start.sh config/server.properties
使用以下命令創建一個主題并測試:
./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning