开源的 Kafka 管理平台

news2024/9/22 9:33:55

来源:github.com/provectus/kafka-ui

Apache Kafka UI 是一个免费的开源 Web UI,用于监控和管理 Apache Kafka 集群,可方便地查看 Kafka Brokers、Topics、消息、Consumer 等情况,支持多集群管理、性能监控、访问控制等功能。

 1 特征

  • 多集群管理: 在一个地方监控和管理所有集群

  • 使用指标仪表板进行性能监控: 使用轻量级仪表板跟踪关键 Kafka 指标

  • 查看 Kafka Brokers: 查看主题和分区分配、控制器状态

  • 查看 Kafka 主题: 查看分区计数、复制状态和自定义配置

  • 查看消费者组: 查看每个分区的停放偏移量、组合滞后和每个分区滞后

  • 浏览消息: 使用 JSON、纯文本和 Avro 编码浏览消息

  • 动态主题配置: 使用动态配置创建和配置新主题

  • 自定义序列化/反序列化插件: 对数据使用现成的 Serde

  • 基于角色的访问控制: 精确管理访问 UI 的权限

  • 数据脱敏: 混淆主题消息中的敏感数据

2 入门

要运行 Apache Kafka 的 UI,可以使用预构建的 Docker 映像或自行构建它(或 jar 文件)。

快速启动(演示运行)

docker run -it -p 8080:8080 -e DYNAMIC_CONFIG_ENABLED=true provectuslabs/kafka-ui

然后访问 http://localhost: 8080

持久安装

services:
  kafka-ui:
    container_name: kafka-ui
    image: provectuslabs/kafka-ui:latest
    ports:
      - 8080:8080
    environment:
      DYNAMIC_CONFIG_ENABLED: true
    volumes:
      - ~/kui/config.yml:/etc/kafkaui/dynamic_config.yaml

设置 git

设置 git 凭据:

git config --global user.name "Mona Lisa"
git config --global user.email "monalisa@louvre.net"

3 配置向导

动态应用程序配置

图片

图片

默认情况下,kafka-ui 不允许在运行时更改其配置。当应用程序启动时,它会从系统环境、配置文件(application.yaml)和 JVM 参数(由-D)读取配置。一旦配置被读取,它就被视为不可变,即使配置源(例如文件)发生更改也不会刷新。

4 数据脱敏

主题数据脱敏

可以配置 kafka-ui 来屏蔽消息页面中显示的敏感数据。

消除:对于 json 对象 - 删除目标字段,否则 - 返回“null”字符串。

- type: REMOVE
  fields: [ "id", "name" ]
  ...

应用示例

{ "id": 1234, "name": { "first": "James" }, "age": 30 }
 ->
{ "age": 30 }

5 自定义可插拔 serde 注册

可以实现自己的 serde 并将其注册到 kafka-ui 应用程序中。

  • 添加 kafka-ui-serde-api 依赖项(应该可以通过 mavencentral 下载)

  • 实现 com.provectus.kafka.ui.serde.api.Serde 接口

  • 将 serde 打包到 uber jar 中,或者提供包含无依赖项 jar 及其依赖项 jar 的目录

传送门

开源地址:https://github.com/provectus/kafka-ui

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2117648.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

自编码器(Autoencoder,AE)

Autoencoders and their applications in machine learning: a survey 1、Autoencoder(自编码器,AE) 自编码器(Autoencoder)是一种无监督学习算法,主要用于数据的降维、特征提取和数据重建。自编码器由两个…

计算机毕业设计hadoop+spark+hive动漫推荐系统 动漫视频推荐系统 漫画分析可视化大屏 漫画爬虫 漫画推荐系统 漫画爬虫 知识图谱 大数据

《HadoopSparkHive动漫推荐系统》开题报告 一、引言 随着互联网技术的飞速发展,动漫产业的数据量急剧增长。用户面临着海量动漫作品的选择难题,如何从这些数据中高效地提取有价值的信息,为用户推荐符合其喜好的动漫作品,成为当前…

创客匠人_公域变天!知识IP传统打法失灵,不转型就出局!

“什么叫定位?我认为定位就是你在这个社会里找到属于你自己的分工。然后通过深挖客户群体的痛点,去做产品升级和迭代。企业的价值或者IP的价值,就是为这个社会解决某一方面的问题。”老蒋说。 在老蒋创客圈第65期对话标杆直播连麦中&#xff…

PTA求一批整数中出现最多的个位数字

作者 徐镜春 单位 浙江大学 给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。 输入格式: 输入在第1行中给出正整数…

鸿蒙OS Page Ability

鸿蒙OS 基本概念 Page与AbilitySlice Page 模板(以下简称“Page”)是 FA 唯一支持的模板,用于提供与用户交互的能力。一个 Page 可以由一个或多个 AbilitySlice 构成,AbilitySlice 是指应用的单个页面及其控制逻辑的总和。 当一…

虚拟现实智能家居实训系统实训解决方案

随着科技的飞速发展,智能家居已成为现代生活的重要组成部分,它不仅极大地提升了居住的便捷性与舒适度,还推动了物联网、大数据、人工智能等前沿技术的融合应用。为了满足市场对智能家居专业人才日益增长的需求,虚拟现实智能家居实…

在Go中迅速使用RabbitMQ

文章目录 1 认识1.1 MQ分类1.2 安装1.3 基本流程 2 [Work模型](https://www.rabbitmq.com/tutorials/tutorial-two-go#preparation)3 交换机3.1 fanout3.2 direct3.3 [topic](https://www.rabbitmq.com/tutorials/tutorial-five-go) 4 Golang创建交换机/队列/Publish/Consume/B…

视频监控系统选型:为何EasyCVR视频汇聚平台成为优选方案

随着科技的飞速发展,视频监控系统作为现代安防体系的核心组成部分,其重要性日益凸显。无论是智慧城市、智慧交通、智慧园区还是企业安防,高效、稳定、智能的视频监控解决方案都是不可或缺的。在众多视频监控平台中,EasyCVR视频汇聚…

《向量数据库指南》——如何评估 Embedding 模型

01. 简介 在此前发布的文章(https://zilliz.com/learn/sparse-and-dense-embeddings)中,我们探析了当前稠密 Embedding 模型的架构,并介绍了 sentence-transformers 库的一些基础用法。虽然通过 sentence-transformers 可以使用众多预训练模型,但这些模型几乎都采用了与…

【空气能热泵热水系统原理

高温直热循环系列:1、系统简图(带电辅热) 注:1)图适用于以一次加热式热泵热水机组为主机的热水系统。2)系统所有机组的启、停都由生活热水箱中水位开关控制。机组以直热式动作的条件为:①当线控器设定水箱…

VM中创建CentOS 7及VM中如何修改DHCP的IP网段

一、创建虚拟机 1新建Centos虚拟机 2类型选择 3版本兼容性选择 4镜像选择 5安装系统选择 6虚拟机的创建路径(选择C盘以外且不包含中文名称的路径) 7硬件配置选择 网络类型的选择(通常情况下选择NAT模式) 8剩下的全部按推荐走&…

AcWing算法基础课-787归并排序-Java题解

大家好,我是何未来,本篇文章给大家讲解《AcWing算法基础课》787 题——归并排序。本文详细介绍了归并排序的算法思路,包括分解、合并和递归排序三个主要步骤。通过 Java 代码实现,展示了如何将数组递归分解至单个元素,…

揭秘!焦虑症与气血不足:是巧合还是内在关联?

在这个快节奏、高压力的时代,焦虑症仿佛成了现代人难以言说的“隐形伴侣”。失眠、心悸、易怒……这些症状让许多人苦不堪言。而另一边,中医理论中的“气血不足”也常常被视为身体虚弱、情绪不稳的根源。那么,焦虑症与气血不足之间&#xff0…

EMLOG程序单页友链和标签增加美化

单页友联效果图: 标签页面效果图: 源码介绍 EMLOG单页友情链接和TAG标签,友链单页文件代码main{width: 58%;是设置宽度 自己把设置成与您的网站宽度一样,如果自适应就填写100%,TAG文件不用修改 安装方法&#xff1a…

使用Selenium与WebDriver实现跨浏览器自动化数据抓取

背景/引言 在数据驱动的时代,网络爬虫成为了收集和分析海量数据的关键工具。为了应对不同浏览器环境下的兼容性问题,Selenium与WebDriver成为了开发者实现跨浏览器自动化数据抓取的首选工具。本文将深入探讨如何利用Selenium和WebDriver实现跨浏览器的数…

客户管理太难了?你可能忽视了这些常见问题

在客户管理中,你是不是常常感到力不从心?客户信息不准确、沟通不到位、客户流失毫无预警……这些问题不仅让管理者头疼,还严重影响企业的业绩增长。客户管理看似简单,但往往隐藏着很多不易察觉的细节问题。如果你觉得客户越来越难…

什么运动耳机好用?六大技巧助力选购优质产品

​开放式蓝牙耳机现在超流行,不仅年轻人爱用,连不少上了年纪的人也喜欢在公园里散步时戴上。这些耳机无论是听歌、学习、健身还是办公,都能派上用场。到了2024年,想要挑到一款既好用又好听的开放式蓝牙耳机,得好好比较…

Vue2+JS项目升级为Vue3+TS之jquery的maphilight引入项目

本人由于想提升自己的项目开发能力,所以将就项目的vue2JavaScriptwebpack的旧技术栈升级为vue3typescriptvite的技术栈,所以遇到很多坑,以下是maphilight的解决方法。 众所周知jquery是基于JavaScript进行开发,但是已有typescript…

LiveKit的agent介绍

概念 LiveKit核心概念: Room(房间)Participant(参会人)Track(信息流追踪) Agent 架构图 ​ 订阅信息流 ​ agent交互流程 客户端操作 加入房间 房间创建方式 手动 赋予用户创建房间的…

【原创】java+springboot+mysql校园疫情管理系统设计与实现

个人主页:程序猿小小杨 个人简介:从事开发多年,Java、Php、Python、前端开发均有涉猎 博客内容:Java项目实战、项目演示、技术分享 文末有作者名片,希望和大家一起共同进步,你只管努力,剩下的交…