在Ubuntu上部署Kafka的步驟如下:
首先,確保你的系統上已經安裝了JDK??梢允褂靡韵旅畎惭bOpenJDK 8:
sudo apt update
sudo apt install openjdk-8-jdk
安裝完成后,驗證JDK是否安裝成功:
java -version
從Apache Kafka官網下載所需的Kafka版本,例如kafka_2.12-3.5.2.tgz
。然后解壓到指定目錄:
wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz
tar -xzvf kafka_2.12-3.5.2.tgz
cd kafka_2.12-3.5.2
Kafka需要Zookeeper來進行管理??梢韵螺d并解壓Zookeeper,然后配置其zoo.cfg
文件。
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
tar xvf zookeeper-3.4.6.tar.gz
sudo mv zookeeper-3.4.6 /usr/local/zookeeper
編輯/usr/local/zookeeper/conf/zoo.cfg
文件:
sudo cat > /usr/local/zookeeper/conf/zoo.cfg << EOF
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
EOF
sudo /usr/local/zookeeper/bin/zkServer.sh start
驗證Zookeeper是否啟動成功:
sudo netstat -nap | grep 2181
編輯Kafka的server.properties
文件,通常位于config
目錄下。主要的配置項包括:
broker.id
: 每個Kafka broker的唯一標識。listeners
: Kafka監聽的地址和端口。log.dirs
: Kafka日志文件的存儲目錄。zookeeper.connect
: Zookeeper的連接地址和端口。示例配置:
broker.id=0
listeners=PLAINTEXT://:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=localhost:2181
使用以下命令啟動Kafka服務器:
sudo /usr/local/kafka/bin/kafka-server-start.sh -daemon config/server.properties
驗證Kafka是否啟動成功:
sudo netstat -nap | grep 9092
使用以下命令創建一個名為test
的Topic:
sudo /usr/local/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
啟動一個Kafka生產者來發送消息,并啟動一個消費者來接收消息,以驗證部署是否成功。
sudo /usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
sudo /usr/local/kafka/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
為了方便使用Kafka命令,可以將Kafka的bin
目錄添加到系統的PATH
環境變量中。編輯~/.bashrc
或~/.profile
文件:
export KAFKA_HOME=/usr/local/kafka
export PATH=$PATH:$KAFKA_HOME/bin
source ~/.bashrc
以上步驟涵蓋了在Ubuntu上部署Kafka的基本流程。根據具體需求,可能還需要進行更多的配置和優化。