首页 > 其他分享 >docker安装kafka集群

docker安装kafka集群

时间:2023-07-05 22:24:32浏览次数:41  
标签:容器 -- 9092 KAFKA 集群 docker kafka

搭建docker基本环境

搭建docker环境非本处详细讲解, 了解或查阅资料即可

拉取镜像(zookeeper以及kafka的)

docker pull wurstmeister/zookeeper  
docker pull wurstmeister/kafka  

启动启动zookeeper容器

docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper
  • docker run: 运行一个新的容器。
  • -d: 指定容器在后台以守护进程模式运行。
  • --name zookeeper: 为容器指定一个名称,即 "zookeeper"。
  • -p 2181:2181: 将容器的 2181 端口映射到宿主机的 2181 端口。格式为 <宿主机端口>:<容器端口>
  • -t: 分配一个伪终端(pseudo-TTY)。
  • wurstmeister/zookeeper: 使用 wurstmeister/zookeeper 镜像创建容器。

启动启动kafka容器

宿主机ip需要以实际为准, 不能使用localhost的原因为: docker各个容器的网络是相互通的, 所以需要将docker内部的接口映射到宿主机上, 然后实现各个容器之间的相互访问

docker run  -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=<宿主机ip>:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://<宿主机ip>:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
docker run  -d --name kafka1 -p 9093:9093 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=<宿主机ip>:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://<宿主机ip>:9093 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 -t wurstmeister/kafka
docker run  -d --name kafka2 -p 9094:9094 -e KAFKA_BROKER_ID=2 -e KAFKA_ZOOKEEPER_CONNECT=<宿主机ip>:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://<宿主机ip>:9094 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9094 -t wurstmeister/kafka
  • docker run: 运行一个新的容器。
  • -d: 指定容器在后台以守护进程模式运行。
  • --name kafka: 为容器指定一个名称,即 "kafka"。
  • -p 9092:9092: 将容器的 9092 端口映射到宿主机的 9092 端口。格式为 <宿主机端口>:<容器端口>
  • -e KAFKA_BROKER_ID=0: 设置 Kafka Broker 的唯一标识符为 0。
  • -e KAFKA_ZOOKEEPER_CONNECT=<宿主机ip>:2181: 指定与 ZooKeeper 的连接地址,其中 <宿主机ip> 需要替换为实际的宿主机 IP 地址。
  • -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://<宿主机ip>: 设置 Kafka 的广告监听器地址,用于外部访问,其中 <宿主机ip> 需要替换为实际的宿主机 IP 地址。
  • -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092: 设置 Kafka 的监听器地址,允许从任意地址访问 Kafka,监听 9092 端口。
  • -t: 分配一个伪终端(pseudo-TTY)。
  • wurstmeister/kafka: 使用 wurstmeister/kafka 镜像创建容器。

创建和查看 topic ,ip改为宿主机器的IP地址

创建Replication为2,Partition为2的topic(容器目录opt/kafka_2.11-2.0.0/中执行)

bin/kafka-topics.sh --create --zookeeper <宿主机ip>:2181 --replication-factor 2 --partitions 2 --topic <主题名称>

查看topic的状态(容器目录opt/kafka_2.11-2.0.0/中执行)Isr代表存活的备份机器中存活的。

bin/kafka-topics.sh --describe --zookeeper <宿主机ip>:2181 --topic <主题名称>

查看所有的 topic 名字

bin/kafka-topics.sh --bootstrap-server <宿主机ip>:9092 --list

发送测试 192.168.0.89:9092宿主机ip test_topic主题

启动消息发送方(容器目录opt/kafka_2.11-2.0.0/中执行)

./bin/kafka-console-producer.sh --broker-list 192.168.0.89:9092 --topic test_topic

image-20230703231121048

启动消息接收方(容器目录opt/kafka_2.11-2.0.0/中执行)

./bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.89:9092:9092 --topic test_topic --from-beginning

image-20230703231054565

标签:容器,--,9092,KAFKA,集群,docker,kafka
From: https://www.cnblogs.com/aaalei/p/17530193.html

相关文章

  • 大数据集群启动,关闭命令
    集群开启,关闭命令hadoop:开启:dfs:start-dfs.sh;yarn:start-yarn.sh关闭:dfs:stop-dfs.sh;yarn:stop-dfs.shspark:开启:sbin/start-all.sh关闭:sbin/stop-all.shhive:开启:hive关闭:quit;hbase:开启:bin/start-hbase.sh关闭:bin/stop-hbase.shzooker:开启:bin/zkServer.shstart关......
  • Kafka概述
    消息中间件对比: 选择建议:  Kafka:是一个分布式流媒体平台类似于消息队列或企业消息传递系统。kafka官网:http://kafka.apache.org/                            ......
  • 【Redis】redis集群的 MASTER 与 SLAVE
    这个问题,从一个坑说起:部署了一个新环境,但发现服务一直在报错:2023-07-0520:42:54.186ERROR---[scheduling-1]o.s.s.s.TaskUtils$LoggingErrorHandler:Unexpectederroroccurredinscheduledtaskorg.redisson.client.RedisException:Unexpectedexceptionwhi......
  • Docker破解AWVS和Nessus
    原文发布在我的博客:Docker破解AWVS和NessusDocker破解AWVS和NessusAWVS和Nessus,不多介绍,漏洞扫描器,前者多用于扫Web漏洞,后者多用于扫系统漏洞。看到有人把自用的AWVS和Nessus都封装成Docker开源了,开箱即用也挺方便的就配置下。开源大佬牛逼!!!0x01安装Nessus感谢大佬开源,项目地......
  • 使用docker-compose部署apollo配置中心
    docker-compose部署apollo配置中心1、Apollo配置中心1.1、Apollo简介Apollo(阿波罗)是携程框架部门研发的开源配置管理中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。Apollo支持4个维度管理Key-Value格式......
  • Docker engine | Docker compose 非桌面版安装教程[ubuntu]
    Docker|Dockercomposeubuntu下安装【Ubuntu】dockerengine,非桌面版本官网链接:InstallDockerEngineonUbuntu|DockerDocumentation#添加docker的apt库sudoapt-getupdatesudoapt-getinstallca-certificatescurlgnupg#安装docker的官方keysudoinstall......
  • docker安装Rancher
    环境cat/proc/versionLinuxversion3.10.0-957.21.3.el7.x86_64([email protected])(gccversion4.8.520150623(RedHat4.8.5-36)(GCC))#1SMPTueJun1816:35:19UTC2019cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)do......
  • 使用docker部署pg集群(postgresql+postgis+pgrouting+pgpool)
    使用docker部署pg集群(postgresql+postgis+pgrouting+pgpool)1,安装dockeryuminstalldocker2,拉取docker容器dockerpullhub-mirror.c.163.com/bitnami/postgresql-repmgr:15dockerpullhub-mirror.c.163.com/bitnami/pgpool:latest3,启动数据库1,创建文件夹并赋予权限cd......
  • HDFS集群搭建:完全分布式
    主要区别一就是各个角色在哪儿启动,完全分布式也就是各个角色分布在不通的节点上1、基础环境:部署配置NN:core-site.xmlDN:workers:node01SNN:hdfs-site.xmldfs.namenode.secondary.http.addressnode01:500902、角色启动时细节配置:dfs.namenode.name.dirdfs.datanode.data.......
  • redis用docker 部署主从
    dockerpullrediscd/home/softmkdir-predis/configmkdir-predis/data/data6379redis/data/data6380redis/data/data6381cd/home/soft/redis/configviredis6379.conf:port6379viredis6380.conf:#节点容器端口port6380#宿主机ip、master端口replicaof192.168.1......