2018年9月17日 星期一

[Kafka] 基本安裝方式 - 使用Docker安裝

本篇使用Docker方式進行安裝Kafka, 目的是快速建立測試環境, 讓開發者體驗kafka的運作方式, 環境Ubuntu Linux



Docker
進入官網下載Docker Community Edition, 依照自己環境下載

Ubuntu Linux則依照此頁下指令步驟安裝
Docker 與 Docker-compose都要安裝!


安裝完成後可使用下列指令測試
$ docker version
$ docker-compose version
$ sudo docker run hello-world
執行docker run hello-world 要看到 Hello from Docker! 才算安裝成功

Set Kafka & Zookeeper
  • docker-compose.yml 檔案下載(感謝郭二哥分享, 幫忙推廣)
  • 將檔案移到適當的檔案夾
  • 打開docker-compose.yml 修改相關hostname為安裝的IP, 文件中會發現會去下載kafka與zookeeper
  • cd 到yml的檔案夾
  • 執行下列指令
$ docker-compose up -d
  • 啟動後就會從網路下載docker images, 會花一點時間
  • 安裝完成後執行下列指令, 啟用正確會看到有兩個container正在跑(kafka與zookeeper)
$ docker-compose ps
  • 驗證zookeeper是否成功
$ docker-compose logs zookeeper | grep -i binding
  • 驗證kafka是否成功
$ docker-compose logs kafka | grep -i started
  • 測試kafka環境, 進入kafka bash >> path會變成 root@kafka:/#
$ docker exec -it env_kafka_1 bash
  • 建立Topic(kafka操作要在kafka bash當中)
$ kafka-topics \
--create \
--topic test \
--replication-factor 1 \
--partitions 1 \
--zookeeper zookeeper_ip:2181
  • 傳送資料進去
$ kafka-console-producer \
--broker-list kafka_ip:9092 \
--topic test
  • 訂閱資料
$ kafka-console-consumer \
--bootstrap-server kafka_ip:9092 \
--topic test \
--from-beginning
  • 關閉zookeeper & kafka(記得先離開kafka bash, 回到安裝docker-compose.yml路徑下)
$ docker-compose stop
  • 開啟zookeeper & kafka
$ docker-compose start
  • 移除zookeeper & kafka
$ docker-compose down

Ref : 

  1. 緯創IT先進技術實驗室, 郭二文, http://streamgeeks.org/apps/tdea2018/index.html

沒有留言:

張貼留言