kafka 小案例【二】 --kafka 设置多个消费着集群
这个配是我在http://www.cnblogs.com/zhangXingSheng/p/6646972.html 的基础上再添加的配置
设置多个消息集群
(1)复制两份配置文件
> cp config/server.properties config/server-.properties
> cp config/server.properties config/server-.properties
(2)编辑配置文件
server1.properties
broker.id=
listeners=PLAINTEXT://:9093
log.dir=/home/zhangxs/datainfo/developmentData/kafka/log/log1
server2.propreties
broker.id=
listeners=PLAINTEXT://:9094
log.dir=/home/zhangxs/datainfo/developmentData/kafka/log/log2
(3)启动这个两个消息服务
bin/kafka-server-start.sh config/server-.properties
bin/kafka-server-start.sh config/server-.properties
(4)创建一个新的topic
> bin/kafka-topics.sh --create --zookeeper 192.168.177.120: --replication-factor --partitions --topic test2
(5)启动2个消费者进程,来订阅这个topic test2
> bin/kafka-console-consumer.sh --bootstrap-server 192.168.177.120: --from-beginning --topic
test2
(6)输入消息
linux
(7)显示结果

遇到的问题:
(2)在我启动生产者集群的时候,抛出的异常
kafka.common.InconsistentBrokerIdException: Configured broker.id doesn't match
stored broker.id in meta.properties. If you moved your data, make sure your c
onfigured broker.id matches. If you intend to create a new broker, you should re
move all data in your data directories (log.dirs).
at kafka.server.KafkaServer.getBrokerId(KafkaServer.scala:)
at kafka.server.KafkaServer.startup(KafkaServer.scala:)
at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:
)
at kafka.Kafka$.main(Kafka.scala:)
at kafka.Kafka.main(Kafka.scala)
[-- ::,] INFO shutting down (kafka.server.KafkaServer)
[-- ::,] INFO Terminate ZkClient event thread. (org.I0Itec.zkcl
ient.ZkEventThread)
[-- ::,] INFO Session: 0x15b1f53fc120002 closed (org.apache.zoo
keeper.ZooKeeper)
[-- ::,] INFO EventThread shut down for session: 0x15b1f53fc120
(org.apache.zookeeper.ClientCnxn)
[-- ::,] INFO shut down completed (kafka.server.KafkaServer)
[-- ::,] FATAL Fatal error during KafkaServerStartable startup.
Prepare to shutdown (kafka.server.KafkaServerStartable)
kafka.common.InconsistentBrokerIdException: Configured broker.id doesn't match stored broker.id 0 in meta.properties. If you moved your data, make s
ure your configured broker.id matches. If you intend to create a new broker, you should remove all data in your data directories (log.dirs).
at kafka.server.KafkaServer.getBrokerId(KafkaServer.scala:)
at kafka.server.KafkaServer.startup(KafkaServer.scala:)
at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:)
at kafka.Kafka$.main(Kafka.scala:)
at kafka.Kafka.main(Kafka.scala)
因为server1.properties的broker.id=,与server.properties配置的broker,id重复
这个是因为server1.properties配置文件的上面已经配置broker.id=0,我没有把这段配置注释掉,导致我的配置没有生效,与server.properties配置的broker,id重复。
(2)在我启动另一个生产者服务抛出异常
kafka.common.KafkaException: Found directory /home/zhangxs/datainfo/developmentData/kafka/log/log1, 'log1' is not in the form of topic-partition
If a directory does not contain Kafka topic data it should not exist in Kafka's log directory
at kafka.log.Log$.exception$(Log.scala:)
at kafka.log.Log$.parseTopicPartitionName(Log.scala:)
at kafka.log.LogManager$$anonfun$loadLogs$$$anonfun$$$anonfun$apply$$$anonfun$apply$.apply$mcV$sp(LogManager.scala:)
at kafka.utils.CoreUtils$$anon$.run(CoreUtils.scala:)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:)
at java.util.concurrent.FutureTask.run(FutureTask.java:)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:)
at java.lang.Thread.run(Thread.java:)
[-- ::,] INFO [Kafka Server ], shutting down (kafka.server.KafkaServer)
[-- ::,] INFO Terminate ZkClient event thread. (org.I0Itec.zkclient.ZkEventThread)
[-- ::,] INFO Session: 0x15b1f53fc120005 closed (org.apache.zookeeper.ZooKeeper)
[-- ::,] INFO EventThread shut down for session: 0x15b1f53fc120005 (org.apache.zookeeper.ClientCnxn)
[-- ::,] INFO [Kafka Server ], shut down completed (kafka.server.KafkaServer)
[-- ::,] FATAL Fatal error during KafkaServerStartable startup. Prepare to shutdown (kafka.server.KafkaServerStartable)
kafka.common.KafkaException: Found directory /home/zhangxs/datainfo/developmentData/kafka/log/log1, 'log1' is not in the form of topic-partition
If a directory does not contain Kafka topic data it should not exist in Kafka's log directory
at kafka.log.Log$.exception$(Log.scala:)
这个是我配置日志目录有问题,我原目录配置是[/home/zhangxs/datainfo/developmentData/kafka/log],他自动找到这个目录的下一级目录log1. log1是我其他生产者消息的日志目录,所以才抛出这个错误
kafka 小案例【二】 --kafka 设置多个消费着集群的更多相关文章
- K8S 搭建 Kafka:2.13-2.6.0 和 Zookeeper:3.6.2 集群
搭建 Kafka:2.13-2.6.0 和 Zookeeper:3.6.2 集群 一.服务版本信息: Kafka:v2.13-2.6.0 Zookeeper:v3.6.2 Kubernetes:v1. ...
- redis(二)redis的主从模式和集群模式
redis(二)redis的主从模式和集群模式 主从模式 集群模式 主从模式 redis的主从模式,指的是针对多台redis实例时候,只存在一台主服务器master,提供读写的功能,同时存在依附在这台 ...
- 案例分享 生产环境逐步迁移至k8s集群 - pod注册到consul
#案例分享 生产环境逐步迁移至k8s集群 - pod注册到consul #项目背景 多套业务系统, 所有节点注册到consul集群,方便统一管理 使用consul的dns功能, 所有节点hostnam ...
- spark+kafka 小案例
(1)下载kafka的jar包 http://kafka.apache.org/downloads spark2.1 支持kafka0.8.2.1以上的jar,我是spark2.0.2,下载的kafk ...
- Kafka学习之二 Kafka安装和使用
部署环境Linux(Centos 6.5),JDK 1.8.0,zookeeper-3.4.12,kafka_2.11-2.0.0. 1. 单机环境 官方建议使用JDK 1.8版本,因此本文使 ...
- Kubernetes 学习笔记(二):本地部署一个 kubernetes 集群
前言 前面用到过的 minikube 只是一个单节点的 k8s 集群,这对于学习而言是不够的.我们需要有一个多节点集群,才能用到各种调度/监控功能.而且单节点只能是一个加引号的"集群&quo ...
- zabbix 3.2 高可用实现方式二-pacemaker+corosync实现zabbix高可用集群
一.pacemaker 是什么 1.pacemaker 简单说明 2.pacemaker 由来 二.pacemaker 特点 三.pacemaker 内部结构 1.群集组件说明: 2.功能概述 四.c ...
- K8s 二、(1、kubeadm部署Kubernetes集群)
准备工作 满足安装 Docker 项目所需的要求,比如 64 位的 Linux 操作系统.3.10 及以上的内核版本: x86 或者 ARM 架构均可: 机器之间网络互通,这是将来容器之间网络互通的前 ...
- 第十二章 Ganglia监控Hadoop及Hbase集群性能(安装配置)
1 Ganglia简介 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点.每台计算机都运行一个收集和发送度量数据(如处理器速度.内存使用量等)的名为 gm ...
随机推荐
- Codeforces 600E - Lomsat gelral(树上启发式合并)
600E - Lomsat gelral 题意 给出一颗以 1 为根的树,每个点有颜色,如果某个子树上某个颜色出现的次数最多,则认为它在这课子树有支配地位,一颗子树上,可能有多个有支配的地位的颜色,对 ...
- springMVC笔记:jsp页面获取后台数据记录列表
1.读取数据库中的记录List<HashMap<String,String>> attributes; 2.Controller构造Model如下: @RequestMappi ...
- 洛谷 P4212 外太空旅行
题目描述 在人类的触角伸向银河系的边缘之际,普通人上太空旅行已经变得稀松平常了.某理科试验班有n个人,现在班主任要从中选出尽量多的人去参加一次太空旅行活动. 可是n名同学并不是和平相处的.有的人,比如 ...
- Java 继承问题 -- 子类是否继承父类的私有属性
理解一: 子类会继承父类的所有属性和方法,至于能不能直接访问,那就是访问权限的问题了. 例如:父类有个private String name; 属性.子类会继承下来,但子类访问不了,因为是privat ...
- 详细解析ASP.NET中Request接收参数乱码原理
起因:今天早上被同事问了一个问题:说接收到的参数是乱码,让我帮着解决一下. 实际情景: 同事负责的平台是Ext.js框架搭建的,web.config配置文件里配置了全局为“GB2312”编码: < ...
- espresso Seekbar
package test.utils; import android.support.test.espresso.PerformException; import android.support.te ...
- windows和linux之间上传下载文件的两种方法
一 用rz和sz http://blog.csdn.net/register_man/article/details/53860774 http://www.jb51.net/article/7 ...
- JavaScript的filter用法
Js的有些操作会改变原来的对象:有些操作则不会改变原来对象. 数组的filter方法就不会改变原来数组 利用filter,可以巧妙地去除Array的重复元素: 'use strict'; var r, ...
- scala函数返回值
1.使用returndef functionName ([参数列表]) : [return type] = { function body return [expr] } 2.直接把返回值写在最后: ...
- JS创建对象的方式有几种
相信但凡作为一个前端工程师,都被面试到过这个面试题目,HR考察的就是对oop思想的理解. 作为一个从后端转过来的怂逼,oop一直是心中的永远的痛啊. 这几天一直在通读js高级程序设计,重复理解js创建 ...