在Ubuntu上配置Apache Kafka時,有幾個關鍵要點需要注意:
下載并解壓Zookeeper安裝包:
wget https://downloads.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
tar -xzvf apache-zookeeper-3.7.0-bin.tar.gz
sudo mv apache-zookeeper-3.7.0 /opt/zookeeper
編輯zoo.cfg配置文件:
cd /opt/zookeeper/conf
cp zoo_sample.cfg zoo.cfg
設置以下參數:
dataDir=/opt/zookeeper/data
clientPort=2181
啟動Zookeeper:
/opt/zookeeper/bin/zkServer.sh start
驗證Zookeeper是否啟動成功:
netstat -an | grep 2181
安裝OpenJDK:
sudo apt update
sudo apt install openjdk-8-jdk
驗證Java安裝:
java -version
下載Kafka安裝包:
wget https://downloads.apache.org/kafka/2.8.0/kafka_2.13-2.8.0.tgz
解壓安裝包:
sudo tar -xzvf kafka_2.13-2.8.0.tgz -C /usr/local
編輯server.properties文件:
cd /usr/local/kafka_2.13-2.8.0/config
cp server.properties server.properties.template
修改以下配置項:
broker.id=0
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://your_server_ip:9092
log.dirs=/tmp/kafka
zookeeper.connect=localhost:2181
為每個broker節點復制一份配置文件,并修改其中的broker.id
以保證每個broker的唯一性。
啟動Zookeeper:
/usr/local/kafka_2.13-2.8.0/bin/zookeeper-server-start.sh config/zookeeper.properties
啟動Kafka Server:
/usr/local/kafka_2.13-2.8.0/bin/kafka-server-start.sh config/server.properties
創建一個主題:
/usr/local/kafka_2.13-2.8.0/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
發送與接收消息:
/usr/local/kafka_2.13-2.8.0/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
/usr/local/kafka_2.13-2.8.0/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
/tmp/kafka
目錄下。-Xmx
和-Xms
參數來分配足夠的堆內存,選擇合適的垃圾回收器,如G1,調整堆內存大小,并啟用JIT編譯。num.network.threads
和num.io.threads
以提高性能,設置socket.send.buffer.bytes
和socket.receive.buffer.bytes
來增加網絡數據傳輸的效率。ulimit -n 65536
命令,更改TCP參數如net.core.somaxconn
和net.ipv4.tcp_max_syn_backlog
以提高網絡性能。以上步驟涵蓋了在Ubuntu上配置Kafka的基本流程,并根據實際需求可能需要進行更多的配置和優化。