使用的主機(jī)是騰訊云輕量服務(wù)器,系統(tǒng)是Ubuntu Server 20.04 LTS 64bit。
進(jìn)入kafka官網(wǎng)找到需要的版本的下載地址。然后通過wget下載。我下載的是最新的。
wget https://dlcdn.apache.org/kafka/3.0.0/kafka_2.12-3.0.0.tgz
就是下載起來特別慢。
下載完成后解壓。
tar -zxvf kafka_2.12-3.0.0.tgz
我是打算用的自帶的zookeeper所以就不單獨(dú)安裝了。
進(jìn)入kafka的config目錄。需要修改的配置文件是server.properties和zookeeper.properties。一般會(huì)備份一份出來以備不時(shí)之需。
首先修改配置文件server.properties。我的改動(dòng)是踩過坑的,配置完成后可以通過公網(wǎng)IP直接連接kafka,但是本地虛擬機(jī)連接時(shí)不能使用127.0.0.1和localhost進(jìn)行連接。
#我喜歡把數(shù)據(jù)存活時(shí)間設(shè)置成七小時(shí),默認(rèn)是168也就是七天
log.retention.hours=7
#端口看個(gè)人需求
host.name=內(nèi)網(wǎng)IP
listeners=PLAINTEXT://內(nèi)網(wǎng)IP:9092
advertised.listeners=PLAINTEXT://公網(wǎng)IP:9092
我單機(jī)加了以上配置就夠了。
接著修改zookeeper.properties。我修改的是zookeeper的data和log的路徑??磦€(gè)人習(xí)慣,記得創(chuàng)建一下,直接創(chuàng)建建議使用命令加絕對(duì)路徑比如mkdir -pv /home/zhu/logs/zookeeper/data。
dataDir=/home/zhu/logs/zookeeper/data
dataLogDir=/home/zhu/logs/zookeeper/log
以上配置就全部完成了。我沒動(dòng)/etc/hosts配置。
創(chuàng)建了兩個(gè)腳本,啟動(dòng)和停止的。
zhu@vm-zhu-001:~/shell$ cat kafka-start.sh
#!/bin/bash
#啟動(dòng)zookeeper
echo "開始啟動(dòng)zookeeper"
/home/zhu/kafka_2.12-3.0.0/bin/zookeeper-server-start.sh -daemon /home/zhu/kafka_2.12-3.0.0/config/zookeeper.properties &
sleep 3
#啟動(dòng)kafka
echo "開始啟動(dòng)kafka"
/home/zhu/kafka_2.12-3.0.0/bin/kafka-server-start.sh -daemon /home/zhu/kafka_2.12-3.0.0/config/server.properties &
echo "啟動(dòng)完成"
zhu@vm-zhu-001:~/shell$ cat kafka-stop.sh
#!/bin/bash
#停止kafka
/home/zhu/kafka_2.12-3.0.0/bin/kafka-server-stop.sh
sleep 3
#停止zookeeper
/home/zhu/kafka_2.12-3.0.0/bin/zookeeper-server-stop.sh
zhu@vm-zhu-001:~/shell$
運(yùn)行啟動(dòng)腳本啟動(dòng)即可。
記得在騰訊云上面開始允許訪問9092端口。
程序測(cè)試也ok。