docker部署kafka实战

目录

一、部署kafaka、zookeeper

二、测试信息发送与接收

三、kafka进阶


一、部署kafaka、zookeeper

请提前安装docker、docker-compose

安装docker:docker--安装docker-ce-CSDN博客

安装docker-compose: 安装docker-compose_安装 docker-compose-CSDN博客

docker-compose部署,建议用docker-compose部署而不是单容器部署,快速便捷。(yml文件:docker部署kafka的方法步骤_docker_脚本之家)

version: '2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    volumes:
      - ./data:/data
    ports:
      - "2181:2181"
       
  kafka:
    image: wurstmeister/kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME:127.0.0.1
      KAFKA_MESSAGE_MAX_BYTES: 2000000
      KAFKA_CREATE_TOPICS: "Topic1:1:3,Topic2:1:1:compact"
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - ./kafka-logs:/kafka
      - /var/run/docker.sock:/var/run/docker.sock
 
  kafka-manager:
    image: sheepkiller/kafka-manager
    ports:
      - 9020:9000
    environment:
      ZK_HOSTS: zookeeper:2181

设置容器运行机制为自启动

#docker update --restart=always 容器名/容器ID
[root@kafka_50 ~]# docker update --restart=always e398ce29cbd2 f0ef33856875 e06af2230915

重启虚拟机kafka-manage无法启动,docker logs 容器名,查看容器日志,发现报错This application is already running (Or delete /kafka-manager-1.3.1.8/RUNNING_PID file).
,提示kafka已经运行或者需要删除RUNNING_PID文件需要,find命令找并删除RUNNING_PID文件。

[root@kafka_50 ~]# find / -name RUNNING_PID
/var/lib/docker/overlay2/1ac3b62babe69290c14730892564d317e4dc4c443d298d6804ab20290cb48c80/diff/kafka-manager-1.3.1.8/RUNNING_PID
[root@kafka_50 ~]# rm -rf /var/lib/docker/overlay2/1ac3b62babe69290c14730892564d317e4dc4c443d298d6804ab20290cb48c80/diff/kafka-manager-1.3.1.8/RUNNING_PID

二、测试信息发送与接收

查看容器信息,注意容器名

[root@kafka_50 ~]# docker ps
CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS              PORTS                                                NAMES
e398ce29cbd2        wurstmeister/zookeeper      "/bin/sh -c '/usr/sb…"   7 days ago          Up About an hour    22/tcp, 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp   kafka-zookeeper-1
f0ef33856875        wurstmeister/kafka          "start-kafka.sh"         7 days ago          Up About an hour    0.0.0.0:9092->9092/tcp                               kafka-kafka-1
e06af2230915        sheepkiller/kafka-manager   "./start-kafka-manag…"   7 days ago          Up About an hour    0.0.0.0:9020->9000/tcp                               kafka-kafka-manager-1

创建名为test_topic的topic主题、生产者

# 进入kafka 容器后,创建topic
# kafka-topics.sh --create --topic <topic_name> --partitions 1 --replication-factor 1 --zookeeper zookeeper:2181
            
[root@kafka_50 ~]# docker exec -it kafka-kafka-1 /bin/bash      # 进入kafka 容器

bash-5.1# kafka-topics.sh --create --topic test_topic --partitions 1 --replication-factor     #创建名为test_topic的主题
WARNING: Due to limitations in metric names, topics with a period ('.') or underscore ('_') could collide. To avoid issues it is best to use either, but not both.        = #警告无需理会,关于".""_"的使用规范
Created topic test_topic.                                                                         
 
#在test_topic主题下创建生产者
bash-5.1# kafka-console-producer.sh --broker-list localhost:9092 --topic test_topic
>hello   #随便发送测试信息
>hello123

新建一个终端创建消费者

[root@kafka_50 ~]# docker exec -it kafka-kafka-1 /bin/bash

#创建消费者
bash-5.1# kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic
hello    #成功接收到生成者发送的信息,接收实时数据,历史数据不会展示
hello123

#消费者接收历史信息参数--from-beginning
bash-5.1# kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic --from-beginning

三、kafka进阶

......

参考文档:

docker 部署kafka-CSDN博客   测试信息

docker部署kafka的方法步骤_docker_脚本之家   部署yml文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/636979.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue前端项目打包,并部署Vue项目到Linux云服务器上

一. vue前端项目打包 1.使用vscode开发项目 2.在config目录下的prod.env.js文件当中配置我们后端服务器的IP地址和端口号&#xff0c;因为这是在实际的部署当中所以必须要在生成环境下进行项目的部署。 如图所示&#xff1a; 3.在config目录下的index.js文件当中要改assetsPu…

C++容器之多重映射(std::multimap)

目录 1 概述2 使用实例3 接口使用3.1 construct3.2 assigns3.3 iterators3.4 capacity3.5 insert3.6 erase3.7 swap3.8 clear3.9 emplace3.10 emplace_hint3.11 key_comp3.12 value_comp3.13 find/count3.14 lower_bound/upper_bound/equal_range3.15 get_allocator1 概述 多重…

小白跟做江科大32单片机之新建工程

项目基础配置 1.新建item文件夹&#xff0c;包含全部stm32项目文件 2.在item文件夹中新建第一个项目&#xff0c;2-1 stm32工程模板&#xff0c;起名字是project 3.工程芯片选择STM32F10318&#xff0c;因为课程中的芯片是STM32F10318C8T6 4.在固件库\STM32F10x_StdPeriph_…

【Docker实操】启动redis服务

一、步骤 1、获取redis镜像 执行获取redis镜像命令&#xff1a;docker pull redis。打印镜像清单&#xff0c;可以看到新拉到的redis镜像。 2、创建redis.conf配置文件 linux主机 mkdir -p /root/www/redis/conf touch /root/www/redis/conf/redis.conf cat << EOF &…

ICML2024高分论文!大模型计算效率暴涨至200%,来自中国AI公司

前段时间&#xff0c;KAN突然爆火&#xff0c;成为可以替代MLP的一种全新神经网络架构&#xff0c;200个参数顶30万参数&#xff1b;而且&#xff0c;GPT-4o的生成速度也是惊艳了一众大模型爱好者。 大家开始意识到—— 大模型的计算效率很重要&#xff0c;提升大模型的token…

深入解析文华量化交易策略---交易指令如何选择

随着金融投资的迅猛发展&#xff0c;自动化策略模型已逐渐成为现代投资领域的一股重要力量。量化交易模型均以数据为驱动&#xff0c;通过运用数学模型和算法&#xff0c;对期货、黄金等投资市场走势进行精准预测和高效交易。 艾云策略整理了量化策略相关资料&#xff0c;希望通…

孢子捕捉分析仪的工作原理

TH-BZ1孢子捕捉分析仪是一种专门用于捕捉和分析空气中飘浮的病原菌孢子的设备。它利用现代传感技术、图像识别技术和网络通信技术&#xff0c;通过设置在田间的设备&#xff0c;连续不断地抽吸周围空气&#xff0c;吸附空气中漂浮的病原菌孢子到特制的载玻带上。然后&#xff0…

【AJAX前端框架】Asynchronous Javascript And Xml

1 传统请求及缺点 传统的请求都有哪些&#xff1f; 直接在浏览器地址栏上输入URL。点击超链接提交form表单使用JS代码发送请求 window.open(url)document.location.href urlwindow.location.href url… 传统请求存在的问题 页面全部刷新导致了用户的体验较差。传统的请求导…

【Linux安全】Firewalld防火墙

目录 一.Firewalld概述 二.Firewalld和iptables的关系 1.firewalld和iptables的联系 2.firewalld和iptables的区别 三.Firewalld区域 1.概念 2.九个区域 3.区域介绍 4.Firewalld数据处理流程 四.Firewalld-cmd命令行操作 1.查看 2.增加 3.删除 4.修改 五.Firewa…

hbase版本从1.2升级到2.1 spark读取hive数据写入hbase 批量写入类不存在问题

在hbase1.2版本中&#xff0c;pom.xml中引入hbase-server1.2…0和hbase-client1.2.0就已经可以有如下图的类。但是在hbase2.1.0版本中增加这两个不行。hbase-server2.1.0中没有mapred包&#xff0c;同时mapreduce下就2个类。版本已经不支持。 <dependency><groupId>…

GBase 8s 如何查看回滚的事务 和对应的SQL

描述&#xff1a; 如何查看当前数据库中是否有事务在回滚&#xff0c; 如果有&#xff0c; 具体是哪条 SQL 在回滚&#xff1f; 解决办法&#xff1a; 方法1&#xff1a; 通过 onstat -u|grep RP&#xff1b; 可以获取相关的 sessionid。 通过 onstat -g ses sid 获取 SQL&a…

Spring系列-01-IOC的依赖查找和依赖注入

IOC基础 IOC发展 初始场景, 不使用IOC如何实现 假定现在有一下需求, 开始使用的数据源是MySQL, 后续数据源变动为Oracle, 那么我们的代码就需要改动 每次切数据源都需要改动, 那么进行优化 静态工厂解决强依赖 在01版本基础上, 使用静态工厂对多个数据源进行了封装, 要哪…

HTML静态网页成品作业(HTML+CSS)——魅族商城首页网页(1个页面)

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;未使用Javacsript代码&#xff0c;共有1个页面。 二、作品演示 三、代…

登录安全分析报告:创蓝云智注册

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…

基于C#Winform+DevExpress项目开发实战之一

1&#xff0c;基于C#WinformDevExpress项目开发实战之一

第N4周:中文文本分类——Pytorch实现

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 | 接辅导、项目定制 数据集&#xff1a;train 一.加载数据 import torch import torch.nn as nn import torchvision from torchvision import transforms,d…

电脑连接爱快iKuai软路由之后,网卡没有正常获取到IP,无法访问爱快路由管理页?

前言 上一次咱们说到在爱快控制台上设置/辨认lan口&#xff0c;设置完成之后&#xff0c;其他的一些设置就需要在爱快iKuai软路由的管理页面上设置。 有些小伙伴会发现&#xff0c;当电脑连接上爱快软路由的lan口之后&#xff0c;电脑并没有正常获取到ip&#xff0c;导致无法访…

DNS域名解析的分离解析

一.DNS介绍 DNS域名解析是一种将域名转换为IP地址的服务&#xff0c;在互联网上访问网站时&#xff0c;输入的通常是网站的域名&#xff0c;而计算机在通信时则使用IP地址。因此&#xff0c;DNS域名解析就是将用户输入的域名解析为对应的IP地址&#xff0c;以便计算机能够找到并…

Spark-广播变量详解

Spark概述 Spark-RDD概述 1.为什么会需要广播变量&#xff1f; 广播变量是为了在分布式计算环境中有效地向集群中的所有节点广播大型只读数据集而设计的。 在分布式环境中&#xff0c;通常会遇到需要在所有节点上使用相同的数据集的情况&#xff0c;但是将这些数据集复制到每个…

留学培训行业PaaS应用系统架构的设计与实践

随着留学需求的增长和教育培训市场的不断扩大&#xff0c;留学培训行业正面临着越来越多的挑战和机遇。在这个背景下&#xff0c;利用PaaS&#xff08;Platform as a Service&#xff09;平台来构建留学培训行业的应用系统架构&#xff0c;将成为提升服务质量和效率的重要手段。…