雲服務器環境安裝與配置:kafka集羣

本文詳細說明kafka集羣安裝和命令行的基本使用

環境

  • zk集羣:192.168.31.201、192.168.31.202、192.168.31.203

雲服務器環境安裝與配置:zookeeper集羣

  • Centos7 三臺

  • 對齊時鐘

對齊方式:Linux同步系統時間

  • kafka版本:kafka_2.11-1.1.0.tgz

安裝

1,傳包與解壓

去kafka官網下載即可[官網下載](http://kafka.apache.org/downloads.html)

本案例使用kafka_2.11-1.1.0.tgz 上傳到服務器。

解壓與重命名(包放在了/usr/local/src下)

tar -zvxf kafka_2.11-1.1.0.tgz
mv /usr/local/src/kafka_2.11-1.1.0 /usr/local/kafka

2,創建log文件夾

mkdir /usr/local/kafka/kafkalogs

3,配置kafka

注這裏更多配置請前往官方文檔查看

cd /usr/local/kafka/config
vi server.properties

配置項如下
broker.id=0      //當前機器在集羣中的唯一標識
port=9092       //kafka對外提供服務的tcp端口
host.name=192.168.31.201    //主機IP地址
log.dirs=/usr/local/kafka/kafkalogs    //log存放目錄
message.max.byte=5048576     //kafka一條消息容納的消息最大爲多少
default.replication.factor=2   //每個分區默認副本數量
replica.fetch.max.bytes=5048576   
zookeeper.connect=192.168.31.201:2181, 192.168.31.202:2181, 192.)168.31.203:2181

4,分發配置好的kafka文件

注:mini2和mini3分別是192.168.31.202,192.168.31.203的主機別名,我已加入/etc/hosts文件中,故可這樣別名寫法

scp -r /usr/local/kafka root@mini2:/usr/local/kafka
scp -r /usr/local/kafka root@mini3:/usr/local/kafka

5,修改另兩臺文件中的broker.id值和host.name值

把server.properties文件中的broker.id值和host.name做修改,不能三臺機器一樣的值

6,啓動kafka集羣

進入KAFKA_HOME(/usr/local/kafka),後臺啓動

 bin/kafka-server-start.sh  -daemon config/server.properties

測試集羣

三臺機器都使用jps命令檢查

[root@mini2 kafka]# jps
1146 QuorumPeerMain
1851 Jps
1791 Kafka

命令行驗證

1 創建topic

bin/kafka-topics.sh --create --zookeeper 192.168.31.201:2181 --replication-factor 1 --partitions 1 --topic test

2 查看topic

bin/kafka-topics.sh --list --zookeeper 192.168.31.201:2181

3 開啓發送者(生產者)併發送消息

bin/kafka-console-producer.sh --broker-list 192.168.31.201:9092 --topic test

4 開啓消費者並接收消息

bin/kafka-console-consumer.sh --zookeeper 192.168.31.201:2181 --topic test --from-beginning

[附錄]操作完整流程

進入到/usr/local/kafka

[root@mym kafka]# ls
bin  config  kafkalogs  libs  LICENSE  NOTICE  site-docs
[root@mym kafka]# bin/kafka-server-start.sh  -daemon config/server.properties
[root@mym kafka]# jps
4765 Kafka
4835 Jps
4444 QuorumPeerMain
[root@mym kafka]# bin/kafka-topics.sh --create --zookeeper 192.168.31.201:2181 --replication-factor 1 --partitions 1 --topic test
Created topic "test".
[root@mym kafka]# bin/kafka-topics.sh --list --zookeeper 192.168.31.201:2181
test
[root@mym kafka]# bin/kafka-console-producer.sh --broker-list 192.168.31.201:9092 --topic test
>hello
>world
>i an^Hm e producer
>heihei
>^C[root@mym kafka]# 
[root@mym kafka]# bin/kafka-console-consumer.sh --zookeeper 192.168.31.201:2181 --topic test --from-beginning
Using the ConsoleConsumer with old consumer is deprecated and will be removed in a future major release. Consider using the new consumer by passing [bootstrap-server] instead of [zookeeper].
hello
world
i am e producer
heihei
^CProcessed a total of 4 messages
[root@mym kafka]# 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章