Confluent 安装 Kafka REST Proxy服务使用

【大数据开发实践】Kafka REST Proxy~无缝集成 Kafka Kafka REST Proxy 是 Confluent 开源组件,核心是将 Kafka 原生协议封装为 RESTful API,打破多语言集成壁垒。支持消息生产、消费、主题管理及偏移量提交,兼容 JSON、Avro 格式,可对接 Schema Registry。具备 SSL 加密、多认证机制及 ACL 权限控制,提供批处理等性能优化特性,适配 Web、Serverless、DevOps 场景,还能暴露监控指标,助力开发者快速实现多语言应用与 Kafka 的高效交互。 阅读详情

背景:

公司由于业务需求想要通过http的方式往kafka发送消息,所以需要安装一个kafka的插件Confluent 实现。

1.下载安装

官网下载链接:https://www.confluent.io/download.

  • 安装的前提是kafka和zookeeper有安装成功,能正常运行(网上很多教程,自行查找吧)
  • 下载好tar包之后解压放在自己指定的目录下然后开始修改配置文件
  • 解压后进入到confluent的目录下修改以下文件
vim /etc/kafka-rest/kafka-rest.properties
#在此文件中去掉注释或者修改以下内容(自行修改自己的IP,这个不多说)
id=kafka-rest-test-server
schema.registry.url=http://Commit-Master:8081
zookeeper.connect=Commit-Master:2181,Commit-Slave-1:2182
bootstrap.servers=PLAINTEXT://Commit-Master:9092

# 把这个文件也改一下
vim /etc/schema-registry/schema-registry.properties
# 去掉注释或者修改以下内容,监听的这个端口默认的是多少我忘记了,是与我的spark的某个端口冲突的,所以我改成了这个,这个就自行判断了
listeners=http://0.0.0.0:8089
kafkastore.connection.url=Commit-Master:2181,Commit-Slave-1:2181
kafkastore.topic=_schemas
debug=True
  • 修改后就可以开启,进入到bin目录下执行分别执行以下命令
./kafka-rest-start ../etc/kafka-rest/kafka-rest.properties
./schema-registry-start ../etc/schema-registry/schema-registry.properties

这里提醒一下,如果不开启这个注册功能,你会发现,只能查询,但是不能往kafka发送消息,所以都要开启

  • 开启之后可以看到以下的日志
    在这里插入图片描述
    在这里插入图片描述

二.使用

  • 直接访问查询当前存在的topic(ip自行修改)
    http://192.168.0.221:8082/topics
  • 查询指定topic详情
    http://192.168.0.221:8082/topics/test0210
#通过rest接口向topic push数据:
curl -i -X POST -H "Content-Type: application/vnd.kafka.avro.v1+json" --data '{"value_schema": "{\"type\": \"record\", \"name\": \"User\", \"fields\": [{\"name\": \"username\", \"type\": \"string\"}]}","records": [{"value": {"username": "testUser"}},{"value": {"username": "testUser2"}}]}' http://192.168.0.221:8082/topics/test0210

#注册consumer group
curl -i -X POST -H "Content-Type: application/vnd.kafka.v1+json" --data '{"format": "avro", "auto.offset.reset": "smallest"}' http://192.168.0.221:8082/consumers/my_consumer_group

#手动消费消息
curl -i -X GET -H "Accept: application/vnd.kafka.avro.v1+json" http://10.205.51.50:8082/consumers/my_avro_consumer/instances/rest-consumer-kafka-rest-server-25354850-1a4e-4503-bce2-75b9d9a6fd1a/topics/test0210
  • 以推送消息为例,执行正常后是返回以下结果的
    在这里插入图片描述
    -为了方便,这里我使用python的代码简单开启一个消费者来接收消息
from kafka import KafkaConsumer

conf = {
    'bootstrap_servers': '192.168.0.221:9092',
    'topic_name': 'test0210',
    'consumer_id': 'consumer-id'
}

# print (start consumer)
consumer = KafkaConsumer(conf['topic_name'],
                        bootstrap_servers=conf['bootstrap_servers'],
                        group_id=conf['consumer_id'])

for message in consumer:
    print("%s:%d:%d: key=%s value=%s" % (message.topic, message.partition,message.offset, message.key,message.value))
  • 收是收到了,可是这个东西前面有一串不知道什么鬼东西,编了码,不知道用什么解码。。
    在这里插入图片描述
    我参考了网上教程和官方文档看到了有好几种格式,然后每一个我都试一试,使用postman进行发送数据,我试了一下下面这种是以utf-8编码的,下面有成功后的响应
header: "Content-Type: application/vnd.kafka.v1+json"
body/raw: {"records":[{"value":"5bCK5pWs55qE5a6i5oi35oKo5aW977yMaGkga2Fma2EsIGknbSB4bmNoYWxs"}]}

在这里插入图片描述
用utf-8解一下码
在这里插入图片描述

header: "Content-Type:application/vnd.kafka.json.v1+json"
body/raw:
{
  "records": [
    {
      "key": "somekey",
      "value": {"foo": "bar"}
    },
    {
      "key": "somekey",
      "value": {"foo": "11111111"}
    },
    {
      "value": 123456
    }
  ]
}
  • 消费者收到的是这样的
    在这里插入图片描述
Kafka笔记 (一) 从Kafka的历史聊起 提到消息中间件,Kafka是我们经常提及的,不过消息中间件的属性只能说是它的基础属性之一,如果你去看官网的简介,会称其为分布式事件流平台,事件流的处理才是它最核心的特点;在我看来,Kafka应该是目前性能最高的开源的事件流平台了,很多开发者可能只是使用了Kafka的Produce和Consume接口来进行消息流的应用,其实它的Connect和Stream API是真正能体现Kafka在流处理上的优势的特性。 Kafka的历史 很多时候优秀的开源项目并不是作者突发奇想地写出来的,而是由实际的业务需求推动后逐步 阅读详情

相关推荐

使用Confluent官方Helm Charts在K8s上部署与管理Apache Kafka集群

在云原生架构中,容器编排平台Kubernetes已成为部署和管理分布式系统的标准。对于Apache Kafka这类有状态、复杂的消息队列系统,其部署涉及多个组件协调、持久化存储和网络配置,传统手动编写YAML的方式效率低下且易错。Helm作为Kubernetes的包管理工具,通过Chart封装应用部署模板,实现了部署的标准化和可复用。Confluent官方维护的cp-helm-charts项目,正是这一理念的工程实践典范。它将Kafka、ZooKeeper、Kafka Connect等组件打包为可配置的Ch

weixin_42533910的博客 495

【亲测免费】 探索 Kafka REST Proxy:无缝集成Kafka的利器

探索 Kafka REST Proxy:无缝集成Kafka的利器 在大数据处理和实时流计算的世界中,Apache Kafka是一个不可或缺的角色,它提供高吞吐量、低延迟的消息传递服务。然而,对于不熟悉Java或直接与Kafka API交互的开发者而言,使用Kafka可能会有些许挑战。这就是项目的用武之地。 项目简介 Kafka REST Proxy是Confluent公司开发的一个开源组件,它为K...

gitblog_00083的博客 1215

【Kafka】使用confluent本地安装和使用kafka

1.概述 1.1 Confluent Kafka简介 2014年,Kafka的创始人Jay Kreps、NahaNarkhede和饶军离开LinkedIn创立Confluent公司,专注于提供基于Kafka的企业级流处理解决方案,并发布了Confluent Kafka。Confluent Kafka分为开源版和企业版,企业版收费。 confluent是平台化的工具,封装了kafka,让我们可以更方便的安装和使用监控kafka,作用类似于CDH对于Hadoop。 confluent是由LinkedIn开发出.

九师兄 1780

【亲测免费】 Kafka REST Proxy 使用教程

Kafka REST Proxy 使用教程 1. 项目介绍 Kafka REST Proxy 是 Confluent 公司开发的一个 RESTful 接口,用于与 Kafka 集群进行交互。它简化了生产者和消费者的数据处理,查看集群状态以及执行管理操作,而无需使用原生的 Kafka 协议或客户端。Kafka REST Proxy 适用于各种场景,包括从任何前端应用向 Kafka 报告数据,将数据摄...

gitblog_00341的博客 1884

kafka-rest:用于Kafka的融合REST代理

Kafka REST代理 Kafka REST代理为Kafka集群提供了RESTful接口。 无需使用本机Kafka协议或客户端,即可轻松生成和使用消息,查看集群状态以及执行管理操作。 用例示例包括使用任何语言构建的任何前端应用程序向Kafka报告数据,将消息摄取到尚不支持Kafka的流处理框架中以及编写管理操作脚本。 安装 您可以作为一部分下载Kafka REST代理的预构建版本。 您可以阅读我们的完整和完整的 要从源代码安装,请遵循下面“开发”部分中的说明。 部署方式 REST代理包括内置的Jetty服务器。 建议使用包装脚本bin/kafka-rest-start和bin/kafka-

kafka-rest-proxy:用go编写的独立Kafka Rest代理

卡夫卡休息代理 用go编写的独立Kafka rest代理。 任何实例都会在zookeeper上注册自己(注册名称空间是可配置的)并连接到所有kafka代理。 您可以将<URI>:<PORT>/topic/<TOPIC> uri上的内容作为邮件正文传递给kafka主题 配置 为了配置服务,需要制作一个config.toml文件并将其放在应用程序二进制文件附近 advertised_listener = " 127.0.0.1:8090 " # Optional ip and port that http proxy bind on (default: 0.0.0.0:8080) debug_port = " :6060 " # Optional debugging port (default: 6060) [ log ] format = " j

使用confluent安装kafka

confluent简介 confluent是平台化的工具,封装了kafka,让我们可以更方便的安装和使用监控kafka,作用类似于CDH对于Hadoop。 confluent是由LinkedIn开发出Apache Kafka的团队成员,基于这项技术创立了新公司Confluent,Confluent的产品也是围绕着Kafka做的。基本架构如下: 官网https://www.confluent....

蓝海风的博客 6193

kafka-rest:用于Kafka的融合REST代理

Kafka REST代理 Kafka REST代理为Kafka集群提供了RESTful接口。 它使生成和使用消息,查看群集状态以及执行管理操作变得很容易,而无需使用本机Kafka协议或客户端。 用例示例包括从使用任何语言构建的任何前端应用向Kafka报告数据,将消息摄取到尚不支持Kafka的流处理框架中以及编写管理操作脚本。 安装 您可以作为一部分下载Kafka REST Proxy的预构建版本。 您可以阅读我们的完整和完整的 要从源代码安装,请按照下面的“开发”部分中的说明进行操作。 部署方式 REST代理包括内置的Jetty服务器。 包装脚本bin/kafka-rest-start和bin/kafka-rest-stop是启动和停止服务的推荐方法。 快速开始 以下内容假设您已经使用默认设置和一些已创建的主题运行Kafka和REST Proxy实例。 # Get a list

【亲测免费】 Confluent Kafka REST Proxy 安装与使用指南

Confluent Kafka REST Proxy 安装与使用指南 项目目录结构及介绍 Confluent的Kafka REST Proxy项目在GitHub上的地址为https://github.com/confluentinc/kafka-rest.git。以下是该仓库的基本目录结构及其简介: . ├── api # REST服务相关的API定义 ├── b...

gitblog_00256的博客 829

rest-proxy:用动态配置编写的简单 REST 反向代理

休息代理 Rest-proxy 是一个简单的系统,用于启用动态 REST 反向代理。 它设置一个公共服务器,客户端将连接到该服务器以请求临时重定向。 服务器部分: 启动 TCP 服务器并监听重定向请求 启动 HTTP 服务器并根据当前规则重定向调用 客户端部分: 连接到服务器以请求重定向。 保持连接打开。 通过连接从服务器接收重定向的 HTTP 调用,并将其重定向到其他本地可见的网络服务器。 主要用例是当您想要在不公开的机器上开发 REST 服务时。 使用客户端将生成一个随机标识符,对调用将被重定向到您的本地 REST 服务器。 这类似于ssh -R ,但在某些方面使用起来更简单: 它只在您启动服务器时需要 ssh 访问,之后不需要。 它可以从同一个服务器端口向多个客户端分派调用 教程 客户 要使用客户端,首先获取代码: go get github.com/Gysco

在Ubuntu 22.04上从零搭建FVCOM环境:手把手搞定Linux、Intel编译器与NetCDF库

本文详细指导在Ubuntu 22.04上从零搭建FVCOM环境,涵盖Linux系统配置、Intel编译器安装、NetCDF库编译及常见问题解决。通过手把手教程,帮助科研人员高效完成水动力数值模拟环境的部署,特别适合水环境研究领域的初学者。

weixin_30613727的博客 650

使用confluent本地安装和使用kafka

转载请注明出处:使用confluent本地安装和使用kafka confluent简介 confluent是平台化的工具,封装了kafka,让我们可以更方便的安装和使用监控kafka,作用类似于CDH对于Hadoop。 confluent是由LinkedIn开发出Apache Kafka的团队成员,基于这项技术创立了新公司Confluent,Confluent的产品也是围绕着Kafka做的。基本架...

直到世界的尽头 1万+

从理论到波形:NE555多谐振荡器设计与示波器实战验证

本文详细介绍了NE555多谐振荡器的设计原理与实战验证方法。从基础理论到电路参数计算,再到面包板搭建与示波器测量,全面解析如何利用NE555芯片实现稳定的方波输出。通过实际案例演示了频率调整、占空比优化等技巧,并提供了常见问题排查指南,帮助电子爱好者快速掌握这一经典电路设计。

weixin_29159613的博客 281

技能get之——Confluent(一)

Confluent是什么?   当时开发出 Apache Kafka 实时信息列队技术的团队成员有个三人小组出来创业,基于这项技术 Jay Kreps 带头创立了新公司Confluent,致力于为各行各业的公司提供实时数处理服务解决方案。 Confluent Platform 是一个流数据平台,能够组织管理来自不同数据源的数据,拥有稳定高效的系统。它不仅提供数据传输的系统, 还提供所有的工具...

qq_37011476的博客 2199

activemq_CVE-2015-5254_漏洞复现_源码分析

ActiveMQ-CVE-2015-5254

qq_51550750的博客 940

【国产化信创实践】宝兰德bes中间件集成springboot

【国产化信创实践】宝兰德bes中间件集成springboot

项目管理、软件工厂、vue研发、Java研发、中国文化等。 1万+

Confluent Kafka REST Proxy 开源项目指南

Confluent Kafka REST Proxy 开源项目指南 Confluent Kafka REST Proxy 是一个强大的工具,它通过提供RESTful接口来简化与Apache Kafka集群的交互。此项目由Confluent公司维护,旨在使开发者能够轻松地从任何支持HTTP的应用程序生产与消费数据,无需直接使用Kafka的原生协议。它使用Java编写,因此对Java环境有一定依赖性。...

gitblog_00569的博客 668

Java写项目前的准备工作指南(技术栈选择 环境搭建和工具配置 项目结构设计与模块划分)

在开始编写一个 Java 项目之前,做好充分的准备工作是至关重要的。很多初学者可能在没有清晰规划的情况下就开始编写代码,导致项目开发进度缓慢、结构混乱,甚至最终无法按预期完成。而事实上,项目的成功不仅仅取决于编码能力,还包括项目初期的规划和准备。准备工作是确保项目顺利进行的基础,它包括技术选型、环境搭建、需求分析、团队协作及项目管理等多个方面。通过这些准备,我们可以确保项目的开发不仅高效而且有可维护性,最终能交付出高质量的代码。在项目开发过程中,异常处理是非常关键的一部分。

eternal__day的博客 1188

Confluent 单节点部署配置

Confluent Platform是基于Apache Kafka构建的一站式流数据平台,通过集成Schema Registry、REST Proxy等核心组件,解决了原生Kafka在企业应用中的数据格式管理、跨语言对接等痛点。文章详细记录了在CentOS7单节点环境下部署Confluent 5.2.4的过程,包括Zookeeper、Kafka及配套组件的配置参数调整,重点说明单节点部署需将复制因子设为1等关键注意事项,并提供了服务启动顺序和验证方法。该部署方案适用于开发测试环境,为构建完整流数据链路提供了

johnny_hhh的博客 984

MatterPort3D 数据集下载

【代码】MatterPort3D 数据集下载。

qq_44106838的博客 6781

Supervisor 安装与使用

一、Supervisor 介绍 Supervisor 是一个用 Python 编写的进程管理工具,它可以用于监控和控制类 UNIX 操作系统上的多个进程。它是一个客户端/服务器系统,其中 Supervisor 的服务器端称为 supervisord,负责启动管理的子进程、响应客户端命令、重启崩溃或退出的子进程、记录子进程的 stdout 和 stderr 输出,以及处理子进程生命周期中的事件。客...

疯子丶pony的博客 3863

Confluent kafka rest实战

为什么80%的码农都做不了架构师?>>> ...

weixin_34023982的博客 752

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

confluent4.0安装和kafka connect快速使用

安装 需要JDK 1.7以上版本。 confluent 4.0下载地址:http://packages.confluent.io/archive/4.0/confluent-oss-4.0.0-2.11.zip confluent 3.3下载地址:http://packages.confluent.io/archive/3.3/confluent-oss-3.3.0-2.11.tar.gz

小龙在线 6371

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Kafka系列(六)、Kafka开发套件kafka lenses 安装及使用(带WebUI)

Lenses 是kafka的一个商用套件,本次我们使用docker安装他们给我们提供的开源版本,该开源版本包含超多组件,对于平时开发使用来说很友好,不需要去安装一堆开发组件,它自带了Apache Kafka, Kafka Connect, Zookeeper, Confluent Schema Registry,Confluent REST Proxy 以及几个lenses开源的管理ui界面kafka-topics-ui, schema-registry-ui, kafka-connect-ui,

王义凯 的博客 2242

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Confluent平台5.0支持LDAP授权及用于IoT集成的MQTT代理

Confluent平台是基于Apache Kafka构建的一个企业级流平台。该平台的5.0版本支持LDAP授权、Kafka主题检查以及用于物联网(IoT)集成的Confluent MQTT代理。最新版本基于Apache Kafka 2.0的特性构建,致力于保证基础设施安全、可靠以及管理使用流数据的应用程序。\\运营团队可以使用新的LDAP授权插件来保证消息传递基础设施的安全。该插件可以用于设置Ka...

weixin_34064653的博客 99
上一篇: 使用python完成Kafka+sparkstreaming+elasticsearch
下一篇: Hbase 建表时报错 ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
铲子挖数据
博客等级 码龄8年 24粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值