[聚合文章] 基于Docker搭建分布式消息队列Kafka

消息系统 2882-01-01 16 阅读

获取镜像

  • zookeeper镜像:zookeeper:3.4.9
  • kafka镜像:wurstmeister/kafka:0.10.2.0
  • kafka-manager镜像:kafka-manager:latest

建立Zookeeper容器

这里我们用最简单的方式创建一个独立的Zookeeper节点,如果要考虑zookeeper的高可用,可以将其做成一个集群,最好是能有多台机器。

docker run --name some-zookeeper \--restart always \-p 2181:2181 \-d zookeeper

默认的,容器内配置文件在,/conf/zoo.cfg,数据和日志目录默认在/data 和 /datalog,需要的话可以将上述目录映射到宿主机的可靠文件目录下。详情参考Zookeeper官方镜像

建立kafka节点

这里同样只做一个简单的单点kafka

docker run --name kafka \-p 9092:9092 \-e KAFKA_ADVERTISED_HOST_NAME=kafka01 \-e KAFKA_CREATE_TOPICS="test:1:1" \-e KAFKA_ZOOKEEPER_CONNECT=100.100.16.231:2181 \-d  wurstmeister/kafka  

详情参考Kafka官方镜像

创建Kafka管理节点

kafka-manager有图形化UI,可以方便的监控集群状态,调整队列配置

docker run -itd \--restart=always \--name=kafka-manager \-p 9000:9000 \-e ZK_HOSTS="100.100.16.231:2181" \sheepkiller/kafka-manager

容器启动以后访问主机的9000端口,http://xxx:9000

注:本文内容来自互联网,旨在为开发者提供分享、交流的平台。如有涉及文章版权等事宜,请你联系站长进行处理。