這裏經過 VMware ,咱們安裝了三臺虛擬機,用來搭建 kafka集羣,虛擬機網絡地址以下:html
hostname ipaddress subnet mask geteway apache
一、 master 192.168.146.200 255.255.255.0 192.168.146.2網絡
二、 slave1 192.168.146.201 255.255.255.0 192.168.146.2工具
三、 slave2 192.168.146.202 255.255.255.0 192.168.146.2spa
官網下載地址:http://kafka.apache.org/downloads日誌
因爲 kafka 集羣的運行須要 zookeeper,因此咱們要首先進行 zookeeper 集羣的搭建。code
關於搭建的教程,我在上一篇博客已經介紹了:http://www.javashuo.com/article/p-kffgtcjg-cg.htmlserver
將下載的 kafka 壓縮文件上傳到集羣中的每臺機器相應目錄,執行以下命令進行解壓。htm
tar -zxf kafka_2.12-2.0.0.tgz
1 broker.id=0 2 listeners=PLAINTEXT://192.168.146.200:9092 3 zookeeper.connect=192.168.146.200:2181,192.168.146.201:2181,192.168.146.202:2181
第一個 broker.id 後面的值和搭建 zookeeper 集羣中 myid 同樣,是一個集羣中惟一的數,要求是正數。須要保證kafka集羣中設置的都不同。blog
第二個設置監聽器,後面的 IP 地址對應當前的 ip 地址。
第三個是配置 zookeeper 集羣的 IP 地址。
該配置文件的其他設置能夠默認,具體會在後面博客進行介紹。
/usr/local/software/kafka_2.12-2.0.0/bin/kafka-server-start.sh /usr/local/software/kafka_2.12-2.0.0/config/server.properties &
該命令雖然是後臺啓動服務,可是日誌仍然會打印到控制檯。
想要徹底後臺啓動,執行以下命令:
/usr/local/software/kafka_2.12-2.0.0/bin/kafka-server-start.sh /usr/local/software/kafka_2.12-2.0.0/config/server.properties 1>/dev/null 2>&1 &
其中1>/dev/null 2>&1 是將命令產生的輸入和錯誤都輸入到空設備,也就是不輸出的意思。/dev/null表明空設備。
執行完畢後,輸入 jps ,出現 kafka 的進程,則證實啓動成功。
集羣啓動成功後,咱們經過建立一個名字爲 test,partitions爲3,replication爲3的topic。
進入到bin 目錄下,執行以下命令:
./kafka-topics.sh --create --zookeeper 192.168.146.200:2181,192.168.146.201:2181,192.168.146.202:2181 --partitions 3 --replication-factor 3 --topic test
進入到 bin 目錄下,執行以下命令:
./kafka-console-producer.sh --broker-list 192.168.146.200:9092,192.168.146.201:9092,192.168.146.202:9092 --topic test
輸入 hello kafka ,而後 enter 鍵,即向名爲 test 的topic 發送了一條消息:hello kafka
爲了更好的看到上一步建立的 topic,以及發送的消息。這裏介紹一個 kafka 可視化工具——Kafka Tools,官網下載地址:http://www.kafkatool.com/download.html
安裝過程很簡單,都是點擊下一步便可。而後打開該工具,進行以下配置:
點擊 File ---> Add cluster
而後點擊有下家的 Add 按鈕便可。
點開剛剛建立的鏈接,出現以下界面:
test 即是咱們上一步建立的 topic 名稱,裏面有一條消息 hello kafka。