雲伺服器環境安裝與配置:kafka叢集
阿新 • • 發佈:2018-12-18
本文詳細說明kafka叢集安裝和命令列的基本使用
環境
- zk叢集:192.168.31.201、192.168.31.202、192.168.31.203
-
Centos7 三臺
-
對齊時鐘
- 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 [email protected]:/usr/local/kafka
scp -r /usr/local/kafka [email protected]:/usr/local/kafka
5,修改另兩臺檔案中的broker.id值和host.name值
把server.properties檔案中的brokerid值做修改,不能三臺機器一樣的標識
6,啟動kafka叢集
進入KAFKA_HOME(/usr/local/kafka),後臺啟動
bin/kafka-server-start.sh -daemon config/server.properties
測試叢集
三臺機器都使用jps命令檢查
[[email protected] 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
[[email protected] kafka]# ls
bin config kafkalogs libs LICENSE NOTICE site-docs
[[email protected] kafka]# bin/kafka-server-start.sh -daemon config/server.properties
[[email protected] kafka]# jps
4765 Kafka
4835 Jps
4444 QuorumPeerMain
[[email protected] kafka]# bin/kafka-topics.sh --create --zookeeper 192.168.31.201:2181 --replication-factor 1 --partitions 1 --topic test
Created topic "test".
[[email protected] kafka]# bin/kafka-topics.sh --list --zookeeper 192.168.31.201:2181
test
[[email protected] kafka]# bin/kafka-console-producer.sh --broker-list 192.168.31.201:9092 --topic test
>hello
>world
>i an^Hm e producer
>heihei
>^C[[email protected] kafka]#
[[email protected] 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
[[email protected] kafka]#