集群搭建
192.168.200.7 kafka01
192.168.200.8 kafka02
192.168.200.9 kafka03
三臺主機配置免密
ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub 地址
配置hosts-->分發(fā)到不同的主機上
scp /etc/hosts root@kafka03:/etc/hosts
安裝JDK
安裝zk
1办素、修改配置文件名稱
mv zoo_sample.cfg zoo.cfg
2锌蓄、修改存放目錄
dataDir=/keduox/data/zookeeper
文件尾部加入
server.1=kafka01:2888:3888
server.2=kafka02:2888:3888
server.3=kafka03:2888:3888
3、創(chuàng)建myid文件
執(zhí)行之前先創(chuàng)建目錄
mkdir -p /keduox/data/zookeeper
echo 1 >> /keduox/data/zookeeper/myid
4轻猖、將zk發(fā)送到其它主機上
scp -r zk root@kafka03:/keduox/
將環(huán)境變量文件同步到其它主機
scp /etc/profile root@kafka02:/etc/profile
5、啟動
zkServer.sh start
查看狀態(tài)
zkServer.sh status
6域那、配置項
#每臺服務器的broker.id都不能相同
broker.id=0
#hostname
host.name=192.168.7.100
#在log.retention.hours=168 下面新增下面三項
message.max.byte=5242880
default.replication.factor=2
replica.fetch.max.bytes=5242880
#設置zookeeper的連接端口
zookeeper.connect=192.168.7.100:12181,192.168.7.101:12181,192.168.7.107:12181
啟動服務器
kafka-server-start.sh -daemon /keduox/kafka/config/server.properties
創(chuàng)建topic
kafka-topics.sh --create --zookeeper kafka01:2181,kafka02:2181,kafka03:2181 --replication-factor 2 --partitions 1 --topic keduox
發(fā)送消息
kafka-console-producer.sh --broker-list kafka01:9092 --topic keduox
接收
kafka-console-consumer.sh --zookeeper kafka01:2181,kafka02:2181,kafka03:2181 --topic keduox --from-beginning
如果之前啟動過kafka咙边,且集群的meta.properties已經(jīng)生成,需要將meta.properties修改或者刪除
默認在/tmp目錄下
doesn’t match stored brokerId 0 in meta.properties
錯誤的原因是log.dirs目錄下的meta.properties中配置的broker.id和配置目錄下的server.properties中的broker.id不一致了次员,解決問題的方法是將兩者修改一致后再重啟败许。
kafka-console-producer.sh --broker-list kafka01:9092,kafka02:9092,kafka03:9092 --topic keduox
領取大數(shù)據(jù)分析、python爬蟲等試聽視頻淑蔚,可上科多大數(shù)據(jù)官網(wǎng)咨詢領取市殷,或者加入大數(shù)據(jù)技術交流群領取:107743339