![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
kafka
文章平均质量分 71
kafka相关技术
桃花惜春风
高级Elasticsearch工程师,搜索架构工程师
展开
-
ELKF+kafka日志系统架构
文章目录我们为什么要搭建日志系统?相关组件介绍FlumeLogstashFileBeatElasticsearchKibanaKafka市场上的几种日志系统架构原有ELK架构引入消息队列架构轻量级的日志采集架构我们为什么要搭建日志系统?日志系统已经成为目前互联网行业的必备项目,用户行为分析,用户画像,包括事件的异常分析,统计分析等等都要依赖于日志。随着大数据的快速发展,近些年来日志被越来越多...原创 2021-03-25 10:10:22 · 678 阅读 · 0 评论 -
kafka-logstash-elasticsearch
本文介绍kafka数据进logstash,经过filter处理后,数据进elasticsearch。文档版本:kafka_2.11-0.9.0.0logstash-2.2.0elasticsearch-2.2.0与一些老版本连接方法有所不同,logstash-2.2.0中已经提供了连接kafka和elasticsearch的插件,无需再进行插件安装。下面介绍连接原创 2016-09-06 23:56:47 · 5749 阅读 · 0 评论 -
Kafka与logstash数据交互
我们在采集大量数据的时候可以需要对数据进行一些处理,logstash强于flume的一点功能就是logstash有个filter,他可以对数据进行处理。这里介绍kafka如何与logstash进行数据交互。Kafka数据进logstash创建配置文件 inputkafka.confinput{ kafka{ codec => "plain" g原创 2016-09-07 00:02:03 · 11414 阅读 · 2 评论 -
kafka监控(一):kafka-eagle
kafka-eagle是一款kafka监控软件,是笔者在接触kafka这几年来,使用的最好的一款开源监控工具。它可以同时监控多个集群,监控 Kafka 集群中 Topic 被消费的情况。包含 Lag 的产生,Offset 的变动,Partition 的分布。并且包含KafkaMonitor 和 Kafka Manager 的相关功能。可以说是既可以管理集群,又可以监控kafka的性能和消费情况,同...原创 2018-08-15 11:01:10 · 6119 阅读 · 2 评论 -
kafka干货(一):Confluent
引自网络:“由于该技术平台能够实时处理业务数据,在过去的几年时间里,部署 Apache Kafka 的企业数量“如火箭般飙升”。而 Confluent 技术的“牛”处在于,构建了一整套基础设施,就像是为企业内部所有系统打通了一条数据高速公路。”2014 年的时候,Kafka 的三个主要开发人员从 LinkedIn 出来创业,开了一家叫作 Confluent 的公司。和其他大数据公司类似,...原创 2018-08-17 20:52:02 · 8598 阅读 · 0 评论 -
kafka危险操作
kafka有些操作在技术上是可行的,但这些操作对集群的安全性有很大隐患,不到迫不得已的情况,不应该有这些操作。重新选举控制器一个集群有一个控制器,一般由第一台启动的broker担当。一般情况只有当控制器broker挂掉的情况才会进行控制器重新选举,但有些时候,控制器虽然还在运行但已经无法提供正常的功能,这时候就需要手动进行控制器的选举。删除zookeeper中/controller,释...原创 2018-08-16 09:14:31 · 2704 阅读 · 0 评论 -
kafka实战(一):kafka版本滚动升级到1.0.0
第一步:先把新版安装包拷贝到对应机器上,并解压。第二步:更新所有broker(新旧版本)上的配置文件config/server.propertiesinter.broker.protocol.version=0.10.1 (旧版本号)log.message.format.version=0.10.1 (现正在使用clien...原创 2018-08-17 17:59:57 · 5708 阅读 · 4 评论 -
kafka实战(二):kafka读取偏移量主题信息(__consumer_offsets)
Kafka 的新版本已经支持将 group 组的偏移量信息存储在 kafka 中,而且由于之前存储在 zookeeper 中,而 zookeeper 并不适合大批量的频繁写入操作,官网也是建议使用 kafka 来进 行存储。那么问题来了,我们要怎样查看在 kafka 中的 metadata 信息呢?Metadata 是以 topic 的形式存储在 kafka 中的,topic 名为:__co...原创 2018-08-17 19:29:48 · 9354 阅读 · 2 评论 -
kafka实战(三):关于大消息进 kafka 配置
在日志分析系统中我们使用 kakfa 一般对消息大小要求不大,因为一条日志的大小相对来说还是比较小的。但有时候我们需要用 kafka 传送较大的信息,例如每条消息 1M 以上的信息 (1M=1048576 字节)。我们需要修改一些配置了。config/producer.propertiesmax.request.size=10485760说明:请求的最大字节数。这也是对最大记录尺寸的有...原创 2018-08-17 20:02:44 · 6370 阅读 · 0 评论 -
canal实战(二):使用canal-kafka实现数据库增量实时更新
canal是阿里的一款开源工具,纯java开发,基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了mysql。工作原理mysql主备复制实现从上层来看,复制分成三步:master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events,可以通过show binlog events原创 2018-08-27 16:43:50 · 15705 阅读 · 0 评论 -
kafka干货(五):kakfka的python客户端----Confluent-kafka
Confluent-kafka是由Confluent公司维护的一个kafka-client,同产品下还有c/c++,java、Go、.net和JMS。它是企业级支持的一款产品。coufluent-kafka是Python模块,是对librdkafka的轻量级封装,librdkafka又是基于c/c++的kafka库,性能上不必多说。使用上要优于kafka-python。 参考:...原创 2018-08-25 18:27:10 · 15849 阅读 · 1 评论 -
kafka报错(一):Configured broker.id 0 doesn‘t match stored broker.id 1 in meta.properties
我们在配置kafka时可能会修改brokerid,这个时候启动可能会遇到报错 报错详细信息:[2018-09-03 07:51:10,759] ERROR Fatal error during KafkaServer startup. Prepare to shutdown (kafka.server.KafkaServer)kafka.common.InconsistentBrokerI...原创 2018-09-03 17:07:56 · 5982 阅读 · 0 评论 -
kafka报错(二):Replication factor: 1 larger than available brokers: 0.
当我们创建topic时报错:[2018-09-03 15:59:44,243] ERROR org.apache.kafka.common.errors.InvalidReplicationFactorException: Replication factor: 1 larger than available brokers: 0.这里有几种可能第一种确认zookeepe...原创 2018-09-03 17:46:26 · 26377 阅读 · 7 评论 -
kafka报错(三):Failed to construct kafka consumer
错误日志:Exception in thread "main" org.apache.kafka.common.KafkaException: Failed to construct kafka consumer at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:79...原创 2018-09-06 17:16:06 · 52499 阅读 · 4 评论 -
kafka实战(四):外网访问AWS上kafka集群
aws上的服务是有内网ip和外网ip区分的。我们在aws内部环境运行程序需要指定内网ip,在外网访问时需要指定外网ip。但是broker是只能配置一个ip的,我们怎么做呢?首先要了解一下几个配置:host.name 已弃用。 仅当listeners属性未配置时被使用,已用listeners属性代替。表示broker的hostnameadvertised.host.name ...原创 2018-09-07 15:24:47 · 4666 阅读 · 5 评论 -
Spark干货(一):spark streaming集成kafka容灾选择和技术分析
本文主要探讨关于spark streaming集成kafka的容错处理和断点续传操作。spark streaming有两种容错机制:spark自带的checkpoint使用Kafka direct自行维护offset关于两种方式的具体实现和优缺点下面会详细介绍,这里是建议使用第二种方式更灵活一些。checkpointcheckpoint是spark streaming自带的一种...原创 2018-09-29 17:36:43 · 2743 阅读 · 0 评论 -
logstash-kafka-elasticsearch
本文介绍使用logstash-kafka-elasticsearch组合进行数据交互。首先用logstash进行数据采集,然后数据通过kafka进入elasticsearch。文档版本:kafka_2.11-0.9.0.0logstash-2.2.0elasticsearch-2.2.0下面介绍连接方法:1. 创建配置文件code.confinput {...原创 2016-09-21 01:26:55 · 6083 阅读 · 0 评论 -
kafka总结
本文是我在学习kafka的过程中的一些随笔笔记,拿出来跟大家分享一下,后续我会继续更新。大家如果想了解kafka的一些知识:http://blog.csdn.net/xiaoyu_BD/article/category/63774271.Consumer 的group 是在消费者里创建的,当使用不新的gropuid消费时,会在zk中注册新的gropuid,新的group的消费者只能原创 2016-08-24 00:06:02 · 4732 阅读 · 0 评论 -
kafka-manager安装
kafka-manager是yahoo开源,项目地址https://github.com/yahoo/kafka-manager这个项目比 https://github.com/claudemamo/kafka-web-console要好用一些,显示的信息更加丰富,kafka-manager本身可以是一个集群。下载安装包kafka-manager-1.2.9.13.原创 2016-08-21 17:57:27 · 4191 阅读 · 0 评论 -
Kafka-Offset-Monitor安装
下载jar包KafkaOffsetMonitor-assembly-0.2.0.jar配置把jar包导入相关目录下创建脚本:mobile_start_en.sh#! /bin/bashjava -cp KafkaOffsetMonitor-assembly-0.2.0.jar \com.quantifind.kafka.offsetapp.OffsetGetterWe原创 2016-08-21 18:05:35 · 4519 阅读 · 0 评论 -
Kafka导入hdfs数据持久化
我们用Flume采集日志信息后,数据进入Kafka。在Kafka之后的选择我们有很多,最典型的就是Flume-ng------Kafka------Storm。当然也可以是Mongo、Elasticsearch、Hbase等等。不过不管去哪,Kafka的数据默认只存7天(可以配置),7天之后就会自动删除了,所以说数据持久化的问题就来了,数据持久化最好的选择就是进入Hadoop。所以本文介绍如何将K原创 2016-08-21 18:08:42 · 13413 阅读 · 0 评论 -
Kafka集群安装
一、linux下环境搭建1 解压kafka压缩包安装目录/app/data/kafka解压tar -xzf kafka_2.11-0.9.0.0.tgz2 配置kafka环境变量root用户:#vi /etc/profile或cdh5用户:$vi~/.bashrc以上两个任选一种,增加以下环境变量:export KAFKA_HOME=/ap原创 2016-08-21 18:11:27 · 3245 阅读 · 0 评论 -
Kafka自动关闭问题
Kafka在启动一段时间后,如果出现服务自动关闭情况,可在启动kafka的时使用守护进程模式启动,即在原启动命令中加-daemon kafka-server-start.sh -daemon config/server.properties &原因参考:kafka-run-class.sh# Launch modeif [ "x$DAEMON_MODE原创 2016-08-21 18:26:20 · 15094 阅读 · 0 评论 -
Producer指定分区
我们用Kafka生产者时系统会默认进行分区,但是我们也可以通过控制key值得方式让消息存放到指定的partitions中。首先我们创建一个SimplePartitioner类packagecom.teamsun.kafka.m001;importkafka.producer.Partitioner;importkafka.utils.VerifiableProperti原创 2016-08-21 18:27:57 · 5827 阅读 · 0 评论 -
修改topic分区数和副本数
Partitions只能增加(扩容)bin/kafka-topics.sh --alter --zookeeper localhost:42182 --topic myboys1--partitions 2修改备份数量./kafka-reassign-partitions.sh --zookeeper localhost:42182 --reassignment-jso原创 2016-08-21 18:31:54 · 11629 阅读 · 0 评论 -
如何手动更新Kafka中某个Topic的偏移量
本文介绍如何手动跟新zookeeper中的偏移量。我们在使用kafka的过程中,有时候需要通过修改偏移量来进行重新消费。我们都知道offsets是记录在zookeeper中的,所以我们想修改offsets的值只要修改zookeeper中的offsets值就可以了。修改offsets值有几种方法,这里介绍最直接的一种修改方法,就是直接手动修改zookeeper中记录的offsets值。首先...原创 2016-08-31 23:29:19 · 17032 阅读 · 0 评论 -
kafka如何直接查看log文件中的信息
我们在使用kafka的过程中有时候可以需要查看我们生产的消息的各种信息,这些都是被记录在卡夫卡的log文件中的。由于log文件的特殊格式,我们是无法直接查看log文件中的信息的。本文提供一下方式查看kafka的log文件中所记录的信息。执行命令 bin/kafka-run-class.sh kafka.tools.DumpLogSegments...原创 2016-09-01 12:44:53 · 49178 阅读 · 8 评论 -
如何导出zk中的偏移量(offsets)
我们在使用kafka的过程中,可能需要把某个group中的偏移量offset导出来查看。下面提供一种把偏移量从zookeeper中导出来的方法。执行命令 bin/kafka-run-class.sh kafka.tools.ExportZkOffsets我们可以看到都需要哪些参数执行如下命令导出group1中的偏移量信息bin/kafka-run-class原创 2016-09-01 12:50:13 · 3820 阅读 · 0 评论 -
关于kafka重新消费数据问题
我们在使用consumer消费数据时,有些情况下我们需要对已经消费过的数据进行重新消费,这里介绍kafka中两种重新消费数据的方法。1.修改offset我们在使用consumer消费的时候,每个topic会产生一个偏移量,这个偏移量保证我们消费的消息顺序且不重复。Offest是在zookeeper中存储的,我们可以设置consumer实时或定时的注册offest到zookeeper...原创 2016-08-25 22:58:16 · 25038 阅读 · 2 评论 -
kafka如何删除group
我们在使用kafka消费信息的过程中,不同group的consumer是可以消费相同的信息的,group是在创建consumer时指定的,如果group不存在,会自动创建。其实简单点说就是每个group都会在zk中注册,区别就是注册过还是没注册过。每个group内的consumer只能消费在group注册过之后生产的信息。也正是因此我们有时候我们可能需要删除掉group在zk中的注册信息,下面提供原创 2016-08-24 00:16:34 · 28237 阅读 · 0 评论 -
Kafka删除topic
两种方法:一、修改配置文件server.properties添加如下配置:delete.topic.enable=true说明:官方给的文档说明“Enables delete topic. Delete topic through the admin tool will have no effect if this config is turne原创 2016-08-21 18:22:41 · 12720 阅读 · 2 评论 -
kafka数据导入hbase
我们在使用kafka处理数据的过程中会使用kafka跟一下数据库进行交互,Hbase就是其中的一种。下面给大家介绍一下kafka中的数据是如何导入Hbase的。本文的思路是通过consumers把数据消费到Hbase中。首先在Hbase中创建表,创建表可以在Hbase客户端创建也可以通过API创建,这里介绍通过API创建表的方法:创建CreatTableTest类...原创 2016-08-24 23:55:43 · 17787 阅读 · 2 评论 -
producer确认数据返回值问题
我们在使用producer产生数据时,如何保证所产生的数据已经被kafka收录。我们在producer中可以通过配置返回值来确定这些。props.put("request.required.acks", "1");这个配置大概意思就是producer每产生一条数据到partitions都会有一个返回值,这个返回值有三种:“-1”,“0”,“1”。返回值为“0”时,表示produce原创 2016-08-25 22:55:05 · 4169 阅读 · 0 评论 -
Flume-ng数据连接kafka
本文介绍一些关于kafka有关的数据交互。Flume+kafka1.安装Flume安装包: apache-flume-1.6.0-bin安装过程这里不予说明,详见《Flume-ng安装.pdf》2.安装kafka安装包: kafka_2.11-0.9.0.0安装过程这里不予说明,详见《kafka集群安装.pdf》3.下载插件包下载地址:https://原创 2016-08-21 17:54:40 · 4104 阅读 · 0 评论