Docker搭建Kafka


下載Kafka和Zookeeper鏡像文件

1、docker pull wurstmeister/kafka
2、docker pull wurstmeister/zookeeper
3、docker pull sheepkiller/kafka-manager

先運行zk,再運行kafka

 

1,啟動zk
docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper 2,啟動kafka
docker run --name kafka01 \ -p 9092:9092 \ -e KAFKA_BROKER_ID=0 \ -e KAFKA_ZOOKEEPER_CONNECT=192.168.91.66:2181 \ -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.91.66:9092 \ -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \ -d wurstmeister/kafka
 

創建主題

進入到容器中:
 docker exec -it kafka01 /bin/bash
創建主題: my_log
/opt/kafka/bin/kafka-topics.sh --create --zookeeper 192.168.91.66:2181 --replication-factor 1 --partitions 1 --topic my_log

 

 在項目代碼我們可以進行AOP日志處理,將異常信息 發送到Kafaka 然后 Logstash訂閱話題,將數據寫入到ES中。

 

Logstash配置:  通過Logstash去訂閱主題,主題要保持一致與代碼,與創建的主題。

 
input {
  kafka {
    bootstrap_servers => "192.168.91.66:9092"
    topics => ["goods_mylog"]
  }
}
output {
    stdout { codec => rubydebug }
    elasticsearch {
       hosts => ["192.168.91.66:9200","192.168.91.66:9201"]
       index => "goods_mylog"
    }
}
 

 

啟動Logstash: ./bin/logstash -f  goods_mylog.conf

kafka-manager安裝

docker run -d --name kafka-manager \
-p 9000:9000 \
--link zookeeper:zookeeper \
--link kafka:kafka \
--restart=always \
--env ZK_HOSTS=zookeeper:2181 \
sheepkiller/kafka-manager


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM