这是一份我们听说过的与Kafka集成的工具列表。
有些是由第三方社区提供!
当然,客户端在这里有单独的列表。
Kafka Connect
Kafka有一个内置框架,称为Kafka Connect,用于编写源和接收器,这些源和接收器要么持续地将数据摄入Kafka,要么持续地将Kafka中的数据摄入外部系统。针对不同应用程序或数据系统的连接器本身是由Confluent在主代码库之外维护的。由Confluent维护的外部托管的连接器列表在Confluent Hub。
分发版 & 打包
- Confluent: Confluent Cloud (SaaS, 完全托管) 和 Confluent Platform (用于自行管理/本地部署的软件下载)
- Cloudera分发版 - Open Source | Cloudera
- EmblocSoft分发版和CPFA培训 - Emblocsoft | big data
- IBM Event Streams - IBM Event Streams - 在本地和公共云上的Apache Kafka
- Strimzi - Strimzi - Apache Kafka on Kubernetes - 用于Kubernetes和Openshift的Apache Kafka Operator。下载和Helm Chart - https://github.com/strimzi/strimzi-kafka-operator/releases/latest
- TIBCO Messaging - Apache Kafka分发版 - https://www.tibco.com/products/apache-kafka 下载 - https://www.tibco.com/products/tibco-messaging/downloads
流处理
- Kafka Streams - Apache Kafka项目的内置流处理库
- Kafka Streams生态系统:
-
- 复杂事件处理 (CEP): GitHub - fhussonnois/kafkastreams-cep: Complex Event Processing on top of Kafka Streams。
- Fluent Kafka Streams Test: GitHub - bakdata/fluent-kafka-streams-tests: Fluent Kafka Streams Test with Java (博客文章: https://medium.com/bakdata/fluent-kafka-streams-tests-e641785171ec)
- Azkarra Streams - 一个轻量级的Java框架,使基于Kafka Streams构建和管理流媒体微服务变得容易。
- Storm - 一个流处理框架。
- Samza - 一个基于YARN的流处理框架。
- Storm Spout - 从Kafka消费消息并以Storm元组的形式发出
- Kafka-Storm - Kafka 0.8, Storm 0.9, Avro集成
- SparkStreaming - Kafka接收器支持Kafka 0.8及以上版本
- Flink - Apache Flink与Kafka集成
- IBM Streams - 一个带有Kafka源和接收器的流处理框架,用于消费和生产Kafka消息
- Spring Cloud Stream - 用于构建事件驱动的微服务的框架,Spring Cloud Data Flow - 用于Spring Cloud Stream应用程序的云原生编排服务
- Apache Apex - 带有Kafka作为源和接收器的连接器的流处理框架。
- Logstash - 输入 和 输出 插件,用于丰富事件并选择性地存储在Elasticsearch中
- Logagent - Kafka输入 和 Kafka输出 插件
Hadoop集成
- Confluent HDFS Connector - Kafka Connect框架的接收器连接器,用于将数据从Kafka写入Hadoop HDFS
- Camus - LinkedIn的Kafka=>HDFS流水线。这一个用于LinkedIn的所有数据,并且效果很好。
- Kafka Hadoop Loader - 与主分发版中包含的Hadoop加载功能不同的另一种方法。
- Flume - 包含Kafka源(消费者)和接收器(生产者)
- KaBoom - 高性能HDFS数据加载器
数据库集成
- Confluent JDBC Connector - Kafka Connect框架的源连接器,用于将数据从RDBMS(例如MySQL)写入Kafka
- Oracle Golden Gate Connector - 通过Golden Gate收集CDC操作并以Kafka写入的源连接器
搜索和查询
- Elasticsearch - 这个项目,Kafka独立消费者将从Kafka读取消息,处理并将其索引到Elasticsearch中。还有几个Kafka Connect连接器用于Elasticsearch。
- Presto - Presto Kafka连接器允许您使用Presto以SQL查询Kafka。
- Hive - Hive SerDe,允许使用Hive SQL查询Kafka(目前仅支持Avro)
- OpenMLDB Kafka Connector - 该项目允许您使用SQL从数据流中定义和提取特征,用于ML应用程序。
管理控制台
- Kafka Manager - 用于管理Apache Kafka的工具。
- kafkat - Kafka代理的简化命令行管理。
- Kafka Web Console - 显示有关您的Kafka集群的信息,包括哪些节点处于活动状态以及它们托管哪些主题的数据。
- Kafka Offset Monitor - 显示所有消费者的当前状态以及它们距离流的头部有多远。
- Capillary - 显示基于Kafka的Apache Storm拓扑的状态和增量。支持Kafka >= 0.8。它还提供了一个用于监控目的的API来获取此信息。
- Doctor Kafka - 用于集群自动恢复和工作负载平衡的服务。
- Cruise Control - 完全自动化Kafka集群的动态工作负载重新平衡和自我修复。
- Burrow - 监控伴侣,提供消费者延迟检查服务,无需指定阈值。
- Chaperone - 一个监控数据流的完整性和延迟的审计系统。
- Sematext - Kafka监控的集成,收集和图表化200多个Kafka指标
- Xinfra Monitor - 一个框架,监控并展示Kafka集群和镜像管道的可用性和性能指标。
AWS集成
- 自动化AWS部署
- Kafka -> S3镜像工具 来自Pinterest。
- 替代Kafka->S3镜像 工具
日志
- syslog (1M)
-
- syslog生产者 - 支持原始数据和带有元数据的protobuf,用于深度分析使用。
- syslog-ng (syslog-ng - Log Management Solutions) 是最广泛使用的开源日志收集工具之一,能够过滤、分类、解析日志数据并将其转发到各种目的地。Kafka是syslog-ng工具中的一级目的地;有关集成的详细信息可以在https://czanik.blogs.balabit.com/2015/11/kafka-and-syslog-ng/找到。
- klogd - 一个Python syslog发布者
- klogd2 - 一个Java syslog发布者
- Tail2Kafka - 一个简单的日志尾部工具
- Fluentd插件 - 与Fluentd集成
- 远程日志查看器
- Logstash集成 - 与Logstash和Fluentd集成
- Syslog Collector 用Go编写
- Klogger - 一个简单的Kafka代理服务。
- fuse-kafka: 基于Kafka的文件系统日志代理
- omkafka: 另一个syslog集成,这个用C编写并使用librdkafka库
- logkafka - 收集日志并将行发送到Apache Kafka
- Filebeat Kafka模块 - 收集并发送Kafka日志到Elasticsearch (文档)
Flume - Kafka插件
- Flume Kafka插件 - 与Flume集成
- Kafka作为Flume的接收器和源 - 与Flume集成
指标
- Mozilla指标服务 - 基于Kafka和Protocol Buffers的指标和日志系统
- Ganglia集成
- Sematext - Kafka监控的集成
- Coda Hale指标报告器到Kafka
- kafka-dropwizard-reporter - 注册内置的Kafka客户端并将流指标注册到Dropwizard Metrics
- Metricbeat Kafka模块 - 捕获并发送Kafka consumergroup 和 partition 指标到Elasticsearch (文档)
打包和部署
Kafka Camel集成
杂项
- Kafka Websocket - 一个与websockets互操作的代理,用于将Kafka数据传递给浏览器。
- KafkaCat - 一个本地的,命令行生产者和消费者。
- Kafka Mirror - 内置镜像工具的替代品
- Ruby演示应用程序
- Apache Camel集成
- Infobright集成
- Riemann指标消费者
- stormkafkamom - 基于curses的工具,显示基于Apache Storm的Kafka消费者的当前状态(仅限Kafka 0.7)。
- uReplicator - 提供跨数据中心复制Kafka集群的能力
- Mirus - 一个基于Kafka Connect的工具,用于在Apache Kafka集群之间进行分布式、高容量的数据复制
- libbeat - 所有Elastic Beats(Metricbeat, Filebeat等)都有Kafka输出