kafka安裝使用


 操作系統:

 

centos版本 7.4
防火牆 關閉
selinux 關閉
java版本 1.8
kafkazk1 192.168.10.129

 

 

 

 

 

 

 

[root@kafkazk1 ~]# wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

[root@kafkazk1 ~]# tar zxf zookeeper-3.4.14.tar.gz -C /usr/local/

[root@kafkazk1 ~]# cd /usr/local/zookeeper-3.4.14/conf/

[root@kafkazk1 conf]# cp zoo_sample.cfg zoo.cfg

[root@kafkazk1 conf]# vim zoo.cfg

#設置控制心態和超時,時間為2000毫秒

tickTime=2000

#設置心態時間間隔數,10表示10*2000=20秒

initLimit=10

#設置請求和應答時間長度最初不能超過多少個tickTime的時間長度,總的時間長度時5*2000=10秒

syncLimit=5

#設置服務進程監聽的TCP端口,默認為2181

clientPort=2181

#配置存儲快照文件的目錄

dataDir=/data/zookeeper

#server.A=B:C:D,其中A時一個數字,表示這是第幾個服務器;B時這個服務器的IP地址;C表示的時這個服務器與集群中的Leader服務器通信的端口;D表示如果集群中的Leader服務器宕機了,需要一個端口來重新進行選舉,選出一個新的Leader,而這個端口就是用來執行選舉時服務器相互通信的端口

server.1=192.168.10.129:2888:3888

 

[root@kafkazk1 conf]# mkdir -p /data/zookeeper

[root@kafkazk1 bin]# vim /etc/profile

export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.14

export PATH=$ZOOKEEPER_HOME/bin:$PATH

[root@kafkazk1 bin]# source /etc/profile

[root@kafkazk1 zookeeper-3.4.14]# yum -y install java

[root@kafkazk1 zookeeper-3.4.14]# zkServer.sh start

 

 

 

 

 

 

 

[root@kafkazk1 ~]# wget https://archive.apache.org/dist/kafka/2.1.0/kafka_2.12-2.1.0.tgz

[root@kafkazk1 ~]# gzip -dv kafka_2.12-2.1.0.tgz

[root@kafkazk1 ~]# tar -xvf kafka_2.12-2.1.0.tar

[root@kafkazk1 ~]# mv kafka_2.12-2.1.0 /usr/local/kafka

[root@kafkazk1 ~]# vim /usr/local/kafka/config/server.properties

#每一個broker在集群中的唯一表示

broker.id=1

#設置kafka的監聽地址與端口

listeners=PLAINTEXT://192.168.10.129:9092

#設置kafka保持的數據位置

log.dirs=/usr/local/kafka/kafka-logs

設置topic有多少個分區

num.partitions=6

#設置kafka中消息保持的時間

log.retention.hours=60

#配置partition中每個segment數據文件的大小,默認時1GB

log.segment.bytes=1073741824

#設置zookeeper所在的地址

zookeeper.connect=192.168.10.129:2181

#設置是否自動創建topic

auto.create.topics.enable=true

#設置kafka自動刪除物理上面的topic

delete.topic.enable=true

[root@kafkazk1 ~]# cd /usr/local/kafka/

[root@kafkazk1 kafka]# nohup bin/kafka-server-start.sh config/server.properties &

[root@kafkazk1 kafka]# netstat -tunlp|grep 2181

tcp6 0 0 :::2181 :::* LISTEN 1618/java

[root@kafkazk1 bin]# netstat -tunlp|grep 9092

 

 

 

#創建一個topic

[root@kafkazk1 bin]# ./kafka-topics.sh -create --zookeeper 192.168.10.129:2181 --replication-factor 1 --partitions 3 --topic testtopic

[root@kafkazk1 bin]# ./kafka-topics.sh -create --zookeeper 192.168.10.129:2181 --replication-factor 1 --partitions 1 --topic test

#查看創建的topic

[root@kafkazk1 bin]# ./kafka-topics.sh --zookeeper 192.168.10.129:2181 --list

 

 

 

#測試生產者消息

[root@kafkazk1 bin]# ./kafka-console-producer.sh --broker-list 192.168.10.129:9092 --topic testtopic

 

 

 

#測試消費者消息

[root@kafkazk1 bin]# ./kafka-console-consumer.sh --bootstrap-server 192.168.10.129:9092 --topic testtopic

 

 

 

#刪除topic后會有個提示,如果kafka沒有設置delete.topic.enable為true的話,那么僅僅是個標記刪除,而非真正的刪除

[root@kafkazk1 bin]# ./kafka-topics.sh --zookeeper 192.168.10.129:2181 --delete --topic testtopic

 

 

 

#查看刪除的結果

[root@kafkazk1 bin]# ./kafka-topics.sh --zookeeper 192.168.10.129:2181 --list

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM