一.Kafka安裝
1,此處我們選擇下載下傳的是
kafka 2.12-2.3.0
版本,下載下傳路徑如下:http://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.12-2.3.0.tgz。各位也可以在此處http://mirror.bit.edu.cn/apache/kafka/挑選其他版本。
cd /usr/local
wget http://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.12-2.3.0.tgz
tar -zxvf kafka_2.12-2.3.0.tgz
rm kafka_2.12-2.3.0.tgz
2,安裝完成之後我們需要對其進行配置,主要需要關注的為
server.properties
這個檔案。
broker.id=0 #broker.id 就是一個kafka伺服器的唯一id得是數字
host.name=192.168.5.130
port=9092
listeners=PLAINTEXT://192.168.5.130:9092
advertised.listeners=PLAINTEXT://192.168.5.130:9092
log.dirs=/usr/local/kafka/data
zookeeper.connect=s201:2181,s202:2181,s203:2181
3,配置環境變量
export KAFKA_HOME=/usr/local/kafka
export PATH=$PATH:$KAFKA_HOME/bin
二.啟動
1,用守護模式啟動
kafka-server-start.sh -daemon server.properties
2,把啟動指令寫成腳本,省着一台一台機器去啟動,注意寫成腳本,配置檔案的路徑要絕對路徑。case 文法,别忘了後面有esac結尾。
#! /bin/bash
pcount=$#
if((pcount==0));then
echo no args;
exit;
fi
case $1 in
"start"){
echo "*****start**********"
for i in s201 s202 s203
do
echo "********$i**********"
ssh $i "/usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties"
done
};;
"stop"){
echo "*****stop**********"
for i in s201 s202 s203
do
echo "********$i**********"
ssh $i "/usr/local/kafka/bin/kafka-server-stop.sh /usr/local/kafka/config/server.properties"
done
};;
esac
三.測試
1,查詢主題
./kafka-topics.sh --zookeeper s201:2181 --list
./kafka-topics.sh --zookeeper s201:2181 --describe --topic first
2,建立主題
./kafka-topics.sh --zookeeper s201:2181 --create --replication-factor 3 --partitions 1 --topic first
3,删除主題
./kafka-topics.sh --zookeeper s201:2181 --delete --topic first
4,發送消息
./kafka-console-producer.sh --broker-list s201:9092 --topic first
5,消費消息
./kafka-console-consumer.sh --bootstrap-server s201:9092 --topic first --from-beginning