Docker安装kafka

1、kafka需要zookeeper管理,所以需要先安装zookeeper。 

下载zookeeper镜像
$ docker pull wurstmeister/zookeeper

    解决docker pull 速度慢问题
    将docker镜像源修改为国内的:
    在 /etc/docker/daemon.json 文件中添加以下参数(没有该文件则新建):
    {
        "registry-mirrors": ["https://mj9kvemk.mirror.aliyuncs.com"]
    }
    服务重启:
    systemctl daemon-reload
    systemctl restart docker

2、启动镜像生成容器
## docker run -d --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper
$ docker run -d --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2  --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper

3、下载kafka镜像
$ docker pull wurstmeister/kafka

4、启动kafka镜像生成容器
## docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.6.121:2181/kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.6.121:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime wurstmeister/kafka
$ docker run -d --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2 --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=172.16.0.13:2181/kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.16.0.13:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime wurstmeister/kafka
参数说明:
-e KAFKA_BROKER_ID=0  在kafka集群中,每个kafka都有一个BROKER_ID来区分自己

-e KAFKA_ZOOKEEPER_CONNECT=172.16.0.13:2181/kafka 配置zookeeper管理kafka的路径172.16.0.13:2181/kafka

-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.16.0.13:9092  把kafka的地址端口注册给zookeeper,如果是远程访问要改成外网IP,类如Java程序访问出现无法连接。

-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口

-v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间

5、验证kafka是否可以使用

5.1、进入容器
$ docker exec -it kafka bash

5.2、进入  cd /opt/kafka_2.12-2.5.0/bin/ 目录下
$ cd /opt/kafka_2.12-2.5.0/bin/

5.3、运行kafka生产者发送消息
$ ./kafka-console-producer.sh --broker-list localhost:9092 --topic mmr

发送消息
> {"datas":[{"channel":"","metric":"temperature","producer":"ijinus","sn":"IJA0101-00002245","time":"1543207156000","value":"80"}],"ver":"1.0"}
 
5.4、运行kafka消费者接收消息
$ ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mmr --from-beginning

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Kafka集群搭建

     安装kafka集群之前,确保zookeeper服务已经正常运行,这里3台zookeeper准备工作都已完成,三台主机分别为:192.168.3.220,192...

    HUC思梦
  • springMVC笔记一

    1)需求:学生注册【add.jsp->StudentAction.java->addOK.jsp】

    HUC思梦
  • Kafka及Spring Cloud Stream

    下载kafka http://mirrors.hust.edu.cn/apache/kafka/2.0.0/kafka_2.11-2.0.0.tgz

    HUC思梦
  • kafka介绍与搭建(单机版)

    根据官网的介绍,ApacheKafka®是一个分布式流媒体平台,它主要有3种功能:

    py3study
  • 00 Confluent_Kafka权威指南-前言部分

    对kafka来说,这是一个激动人心的时刻。kafka被成千上万个组织使用,包含了三分之一的世界500强公司。它是增长最快的开源项目之一,围绕它产生了一个巨大的生...

    冬天里的懒猫
  • Kafka常用命令收录

    本文内容主要来自两个方面:一是网上的分享,二是自研的随手记。日记月累,收录kafka各种命令,会持续更新。

    一见
  • Java 最常见的 208 道面试题:第十五模块答案

    kafka 不能脱离 zookeeper 单独使用,因为 kafka 使用 zookeeper 管理和协调 kafka 的节点服务器。

    Java团长
  • kafka的Docker镜像使用说明(wurstmeister/kafka)

    在hub.docker.com网站上,Star最多的kafka镜像是wurstmeister/kafka,今天一起来实践这个镜像,使用此镜像搭建kafka环境,...

    程序员欣宸
  • CDH集成Kafka

    1.离线 先下载相应版本的kafka http://archive.cloudera.com/kafka/parcels/ 然后放置相应目录,如下图...

    shengjk1
  • Kafka介绍及安装部署

    消息中间件是在消息的传输过程中保存消息的容器。消息中间件在将消息从消息生产者到消费者时充当中间人的作用。队列的主要目的是提供路由并保证消息的传送;如果发送消息时...

    菲宇

扫码关注云+社区

领取腾讯云代金券