MQ:Kafka環境搭建

最近對MQ(消息隊列中間件)很感興趣,既然感興趣那就上手瞭解嘍。要說MQ中流行的應該就是RabbitMQ和Kafka了,綜合對比之下(具體對比方法請參考擲硬幣)我選擇了Kafka,決定從哪裏下手後第一步就是搭建環境了,於是就有了這篇帖子。

在這篇帖子中我將詳細講述如何從零開始在Linux下搭建Kafka,以及在搭建Kafka環境前的準備工作。

準備工作

本文中我使用的Linux版本是Ubuntu16.04(運行Zookeeper和Kafka Server)和Ubuntu18.04(運行Kafka producer和Kafka consumer)。
使用的Kafka版本爲kafka_2.11-1.1.0,下載地址:http://kafka.apache.org/downloads
Kafka是使用scala編寫的運行於jvm上的程序,這裏也需要使用Java開發環境,我使用的JDK版本爲1.8.0_181,下載地址:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html#javasejdk

準備Java環境

將下載好的Java壓縮包解壓至某個目錄,本文中使用的目錄爲/usr/local/Java/jdk1.8.0_181。命令如下:

tar -zxvf jdk-8u181-linux-x64.tar.gz
sudo mv jdk1.8.0_181/ /usr/local/Java/jdk1.8.0_181/

然後設置Java環境變量,這裏採用本用戶設置方法。命令如下:

sudo gedit /etc/profile

在環境變量文件末尾添加

export JAVA_HOME=/usr/local/Java/jdk1.8.0_181
export JRE_HOME=${JAVA_HOME}/jre 
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib 
export PATH=${JAVA_HOME}/bin:$PATH

最後應用Java環境變量。命令如下:

source /etc/profile

搭建Kafka環境

在Kafka官網下載自己需要的二進制版本的Kafka安裝包進行安裝。Kafka除了需要使用Java環境外還需要使用Zookeeper。目前,最新的版本中已經包含裏Zookeeper環境,我們可以直接使用。說是安裝,我們需要的只是把Kafka的二進制壓縮包解壓到某個目錄即可,這裏將Kafka壓縮包解壓到~/目錄

由於我們使用我使用兩臺電腦盡心Kafka環境測試,需要配置Kafka Server的listeners。進入config文件夾找到server.properties文件,在Socket Server Settings 中添加listeners=PLAINTEXT://192.168.3.73:9092,192.168.3.73是我的本機IP地址,如果只是在單機上進行環境測試不需要進行測試,全部使用默認配置即可。

至此,Kafka的環境就已經搭建完成了。

測試

在Ubuntu 16.04中,進入Kafka目錄。

  • 啓動zookeeper

輸入命令

bin/zookeeper-server-start.sh config/zookeeper.properties

執行結果如下:

這裏寫圖片描述

  • 啓動Kafka服務端

輸入命令

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

執行結果如下:

這裏寫圖片描述

  • 創建名爲test的topic

輸入命令

bin/kafka-topics.sh --create --zookeeper 192.168.3.73:2181 --replication-factor 1 --partitions 1 --topic test
  • 查詢已經創建的topic

輸入命令

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

執行結果如下
這裏寫圖片描述

在Ubuntu 18.04中,進入Kafka目錄。

  • 創建一個消息生產者

輸入命令

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

執行結果如下
這裏寫圖片描述

  • 創建一個消息消費者

輸入命令

bin/kafka-console-consumer.sh --bootstrap-server 192.168.3.73:9092 --topic test --from-beginning

執行結果如下
這裏寫圖片描述

生產者和消費者成功創建後就可以在消息生產者Terminal中輸入消息,在消息消費者Terminal中接收了。

以上就是搭建Kafka單機環境的全部內容。如有不明白的地方歡迎留言交流,若帖子中有錯誤的地方同樣歡迎留言批評指正,在此謝過路過的各位大神,歡迎騷擾。

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