AutoMQ 生态集成 Redpanda Console

通过 Kafka Web UI 更加便利地管理 Kafka/AutoMQ 集群

随着大数据技术的飞速发展,Kafka 作为一种高吞吐量、低延迟的分布式消息系统,已经成为企业实时数据处理的核心组件。然而,Kafka 集群的管理和监控却并非易事。传统的命令行工具和脚本虽然功能强大,但对于开发者和运维人员来说,操作复杂且不直观。为了解决这些问题,Kafka Web UI 应运而生,为用户提供了一种更加便利和高效的 Kafka 集群管理方式。Apache Kafka 经过十多年的发展,在业内积累了非常丰富的生态。AutoMQ 作为 Apache Kafka 的继任者,由于其对 Kafka 的完全兼容,可以充分利用其生态中的产品。AutoMQ 企业版已经提供了非常强大的控制面能力。如果你使用的是 AutoMQ 也可以使用像 Kafdrop 、Redpanda Console [1] 等这样的产品来管理 AutoMQ 集群。今天分享的内容是如何通过 Redpanda Console [1] 对 AutoMQ 集群状态进行监控,以提高系统的可维护性和稳定性。

集成 AutoMQ 与 Redpanda Console

Redpanda Console 是由 Redpanda [2] 提供的 Kafka Web UI 界面,用于监控和管理 Redpanda 或 Kafka 集群。它提供了一个直观的用户界面,通过这个界面,用户可以轻松地查看集群状态、监控性能指标、以及管理主题和分区等。这个控制台旨在简化数据流系统的日常操作,让用户能够更有效地维护和监控他们的集群。得益于 AutoMQ 对 Kafka 的完全兼容,因此可以无缝与 Redpanda Console 进行集成。通过利用 Redpanda Console ,AutoMQ 用户也可以享受到直观的用户界面,实时监控 AutoMQ 集群状态,包括主题、分区、消费者组及其偏移量等关键元数据。这种监控能力不仅提高了问题诊断的效率,还有助于优化集群性能和资源利用率。这篇教程会教你如何启动 Redpanda Console 服务,并将其与 AutoMQ 集群搭配起来使用,实现集群状态的监控和管理。

Redpanda Console 官方示例

01

前置条件

  • 部署 AutoMQ 集群

  • 准备 Redpanda Console 环境 

部署 AutoMQ 集群

请参考 AutoMQ 官方文档:集群方式部署 | AutoMQ [3]。

部署 Redpanda Console

部署 Redpanda Console 有两种方式,包括 Docker 部署以及发行版部署,其中 Docker 部署较为简单,如果你想简单快速的体验 AutoMQ 与 Redpanda Console 的集成,建议选择 Docker 方式进行部署。如果你有特别的需要,如登录验证、SASL 认证、TLS 配置以及日志级别等设置,可以根据发行版方式自行部署。下面我将分别介绍两种配置方法。

Docker 部署

Redpanda Console 可通过 Docker 部署,参考 Quick Start [4]。上述过程中,搭建 AutoMQ 集群之后,我们已经知道了所有的 Broker 节点监听的地址和端口,因此我们可以通过指定 Docker 启动命令中的 KAFKA_BROKERS 参数,将 Redpanda Console 与 AutoMQ 集群建立起关联关系。Docker 启动容器命令如下:

docker run -p 8080:8080 -e KAFKA_BROKERS=192.168.0.4:9092,192.168.0.5:9092,192.168.0.6:9092 docker.redpanda.com/redpandadata/console:latest
  • -p 8080:8080:指定 Redpanda Console 的服务访问映射端口。

  • KAFKA_BROKERS:需要指定为你自己的 AutoMQ 集群的 Broker 地址。

发行版部署

你需要在 Redpanda Console 的 Github Releases 页:Release Redpanda Console [5],选择适合的版本进行下载并解压到指定文件夹,如 /opt。操作命令如下:

# ubuntu Linux
cd /opt
sudo curl -L -o redpanda_console.tar.gz https://github.com/redpanda-data/console/releases/download/v2.6.0/redpanda_console_2.6.0_linux_amd64.tar.gz
# unzip, get redpanda_console
sudo tar -xzf redpanda_console.tar.gz
# config set
sudo mkdir -p /etc/redpanda
# write config
sudo vim /etc/redpanda/redpanda-console-config.yaml

redpanda-console-config.yaml配置文件的内容示例如下:

kafka:#Brokers is a list of bootstrap servers with#port (for example "localhost:9092").brokers:- broker-0.mycompany.com:19092- broker-1.mycompany.com:19092- broker-2.mycompany.com:19092

注意:请确保您当前安装 Redpanda Console 所在的服务器能够访问到配置文件中 Broker 节点所在的服务器。

关于更多详细的设置,可以参考官方文档:Redpanda Console Configuration [6]。配置完成后,需要设置环境变量,使得 Redpanda Console 执行文件能获取配置文件信息,并启动 Redpanda Console:

# set env
export CONFIG_FILEPATH="/etc/redpanda/redpanda-console-config.yaml"
# /opt/ run console
./redpanda-console

你将会得到如下结果:

./redpanda-console
{"level":"info","ts":"2024-07-10T09:52:52.958+0800","msg":"started Redpanda Console","version":"2.6.0","built_at":"1717083695"}
{"level":"info","ts":"2024-07-10T09:52:52.963+0800","msg":"connecting to Kafka seed brokers, trying to fetch cluster metadata"}
{"level":"info","ts":"2024-07-10T09:52:54.780+0800","msg":"successfully connected to kafka cluster","advertised_broker_count":1,"topic_count":2,"controller_id":0,"kafka_version":"at least v3.6"}
{"level":"info","ts":"2024-07-10T09:53:05.620+0800","msg":"Server listening on address","address":"[::]:8080","port":8080}

02

访问控制台页面

在完成上述的部署操作后,即可通过在浏览器中输入地址(例如:http://{console_ip}:8080)访问控制台服务。展示效果如下所示:

集群总览

集群总览页面为用户提供了一个宏观的视角,展示了 AutoMQ 集群的核心信息。包括但不限于:

  • 集群运行状态:显示当前集群的健康状况,帮助用户快速识别问题。

  • 存储占用:展示了集群中的数据存储使用情况,便于用户进行存储管理和规划。

  • 版本信息:显示当前 AutoMQ 集群运行的版本,方便跟踪和升级。

  • 在线 Broker 数量:实时显示在线的 Broker 数量,关键指标之一。

  • Topics 和 Replicas 数量:提供 Topics 和 Replicas 的数量信息,帮助用户了解集群的规模和数据复制情况。

监控集群状态对于确保消息队列系统的稳定性和性能至关重要。通过实时监控集群的运行状态、存储占用、版本信息、在线 Broker 数量以及 Topics 和 Replicas 的数量,运维人员可以快速识别并解决潜在问题,防止系统故障影响业务运行。同时,这些指标有助于进行容量规划和资源管理,确保系统能够应对未来的数据增长。此外,了解集群的版本信息还可以帮助用户及时进行软件升级,利用最新的功能和安全修复,整体提升系统的可靠性和效率。

Topic 总览

在 Topic 列表页面,用户可以看到当前 AutoMQ 集群中所有 Topic 的列表,包括每个 Topic 的关键信息,如分区数、副本策略等。用户可以通过这个页面快速浏览和管理 Topic。

Topic 详情

点击特定的 Topic 后,用户将进入到该 Topic 的详细页面,在这里可以深入了解和操作:

  • 消息列表:浏览和搜索 Topic 中的消息,对于消息的追踪和调试非常有用。

  • 消费者信息:显示当前订阅该 Topic 的消费者和消费者组信息,便于监控消费情况。

  • 分区状态:展示每个分区的详细信息,包括 Leader、ISR 等关键指标。

  • 配置信息:列出 Topic 的配置信息,支持修改以优化性能或行为。

  • ACL(访问控制列表):管理对 Topic 的访问权限,确保数据安全。

此外,Redpanda Console 还支持用户手动创建和发布消息,这对于测试或特定场景下的消息注入非常有价值。

监控 Topic 详情信息可以让我们深入了解消息队列的运行状况,通过浏览消息列表进行追踪和调试,查看消费者信息监控消费情况,了解分区状态确保数据分布和高可用性,管理配置信息优化性能,以及设置访问控制保障数据安全。这些功能有助于及时识别和解决问题,提高系统的整体效率和可靠性。

03

总结

本文介绍了 Redpanda Console 与 AutoMQ 集成的过程,展示了如何通过这一强大工具简化和增强 AutoMQ 集群的管理。希望这篇文章能够为追求提高消息队列管理效率和功能的用户提供实用的参考。

引用

[1] Redpanda Console: https://redpanda.com/redpanda-console-kafka-ui
[2] Redpanda: https://redpanda.com/
[3] 集群方式部署 AutoMQ: https://docs.automq.com/zh/docs/automq-opensource/IyXrw3lHriVPdQkQLDvcPGQdnNh [4] Quick Start: https://github.com/redpanda-data/console?tab=readme-ov-file#quick-start [5] Release Redpanda Console: https://github.com/redpanda-data/console/releases/tag/v2.6.0 [6] Redpanda Console Configuration: https://docs.redpanda.com/current/reference/console/config/#example-redpanda-console-configuration-file
[7] Kafdrop Github:  https://github.com/obsidiandynamics/kafdrop

END

关于我们

我们是来自 Apache RocketMQ 和 Linux LVS 项目的核心团队,曾经见证并应对过消息队列基础设施在大型互联网公司和云计算公司的挑战。现在我们基于对象存储优先、存算分离、多云原生等技术理念,重新设计并实现了 Apache Kafka 和 Apache RocketMQ,带来高达 10 倍的成本优势和百倍的弹性效率提升。

🌟 GitHub 地址:https://github.com/AutoMQ/automq
💻 官网:https://www.automq.com?utm_source=openwrite

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

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

相关文章

C++从入门到起飞之——this指针 全方位剖析!

个人主页:秋风起,再归来~ C从入门到起飞 个人格言:悟已往之不谏,知来者犹可追 克心守己,律己则安! 目录 1、this指针 2、C和C语⾔实现Stack对⽐ C实现Stack代码 C实现Stack代…

c# listview控件调整标题显示顺序

右键点击listview,选择编辑列 修改DisplayIndex listview在成员位置点击上下箭头移动后,实际显示不会改变,因为DisplayIndex没有改变

【Git】(基础篇四)—— GitHub使用

GitHub使用 经过上一篇的文章,相信大家已经对git的基本操作熟悉了,但哪些使用git的方法只是在本地仓库进行,本文介绍如何使用git和远程仓库进行连接使用。 Github和Gitee 主要用到的两个远程仓库在线平台是github和gitee GitHub GitHub …

STM32第十九课:FreeRTOS移植和使用

目录 需求一、FreeRtos概要二、移植FreeRtos1.复制源码2.内存空间分配和内核相关接口3.FreeRTOSConfig.h4.在工程中添加.c.h 三、任务块操作1.创建任务2.任务挂起,恢复,删除 四、需求实现代码 需求 1.将FreeRtos(嵌入式实时操作系统&#xf…

若依框架中Spring Cloud版本启动失败问题

RuoYiSystemApplication启动不了 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.ruoyi.system.mapper.SysConfigMapper.selectConfigList 该问题是因为在我们拉取若依代码到本地之后,没有对配置作改动,而且若依…

服务器基础1

服务器基础复习01 1.环境部署 系统:华为欧拉系统 网络简单配置nmtui 因为华为欧拉系统密码需要复杂度 所以我们可以进入后更改密码 echo 123 | passwd --stdin root也可以 echo "root:123" | chpasswd2.关闭防火墙,禁用SElinux 首先先关…

纠正和防止机器学习中的不公平现象

「AI秘籍」系列课程: 人工智能应用数学基础人工智能Python基础人工智能基础核心知识人工智能BI核心知识人工智能CV核心知识AI 进阶:企业项目实战 预处理、处理中、后处理方法和非定量方法 机器学习中的公平性是一个复杂的问题。更糟糕的是,负…

加密传输及相关安全验证:

1.1. 加密: 1.1.1. 对称加密: 特点:加解密用一个密钥,加解密效率高,速度快,有密钥交互的问题问题:双方如何交互对称密钥的问题,用非对称密钥的公钥加密对称密钥的混合加密方式常用…

[数据分析]脑图像处理工具

###############ATTENTION!############### 非常需要注意软件适配的操作系统!有些仅适用于Linux,可以点进各自软件手册查看详情。 需要自行查看支持的影像模态。 代码库和软件我没有加以区分。 不是专门预处理的博客!&#xf…

C语言 底层逻辑详细阐述指针(一)万字讲解 #指针是什么? #指针和指针类型 #指针的解引用 #野指针 #指针的运算 #指针和数组 #二级指针 #指针数组

文章目录 前言 序1:什么是内存? 序2:地址是怎么产生的? 一、指针是什么 1、指针变量的创建及其意义: 2、指针变量的大小 二、指针的解引用 三、指针类型存在的意义 四、野指针 1、什么是野指针 2、野指针的成因 a、指…

《基于 Kafka + Quartz 实现时限质控方案》

📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗 🌻 CSDN入驻不久,希望大家多多支持,后续会继续提升文章质量,绝不滥竽充数…

学习分布式事务遇到的小bug

一、介绍Seata 在处理分布式事务时我用到是Seata,Seata的事务管理中有三个重要的角色: TC (Transaction Coordinator) - 事务协调者:维护全局和分支事务的状态,协调全局事务提交或回滚。 TM (Transaction Manager) - 事务管理器…

PHP pwn 学习 (2)

文章目录 A. 逆向分析A.1 基本数据获取A.2 函数逆向zif_addHackerzif_removeHackerzif_displayHackerzif_editHacker A.3 PHP 内存分配 A.4 漏洞挖掘B. 漏洞利用B.1 PHP调试B.2 exp 上一篇blog中,我们学习了一些PHP extension for C的基本内容,下面结合一…

Open3D Ransac算法拟合点云球面

目录 一、概述 二、代码实现 2.1关键函数 2.2完整代码 三、实现效果 3.1原始点云 3.2拟合后点云 前期试读,后续会将博客加入该专栏,欢迎订阅 Open3D点云算法与点云深度学习案例汇总(长期更新)-CSDN博客 一、概述 RANSAC&a…

【Chatgpt大语言模型医学领域中如何应用】

随着人工智能技术 AI 的不断发展和应用,ChatGPT 作为一种强大的自然语言处理技术,无论是 自然语言处理、对话系统、机器翻译、内容生成、图像生成,还是语音识别、计算机视觉等方面,ChatGPT 都有着广泛的应用前景。特别在临床医学领…

pycharm如何debug for循环里面的错误值

一般debug时,在for循环里面的话,需要自己一步一步点。如果循环几百次那种就比较麻烦。此时可以采用try except的方式来解决 例子如下 #ptyhon debug for循环的代码 num[1,2,3,s,4] ans0 for i in num:try:ansiexcept:print(错误) print(ans) 结果如下&a…

HTML+echarts.js实现的炫酷金色风格可视化组件

模板下载地址: 炫酷金色风格可视化组件 (bootstrapmb.com)https://www.bootstrapmb.com/item/14888 一款炫酷金色风格可视化组件,统计图表使用Echarts.js,整体风格采用金黄色看起来很大气,设计是通用型的,可以用作任…

自动驾驶系列—智能巡航辅助功能中的横向避让功能介绍

文章目录 1. 背景介绍2. 功能定义3. 功能原理4. 传感器架构5. 实际应用案例5.1 典型场景1:前方车辆压线5.2 典型场景2:相邻车道有大型车辆5.3 典型场景3:它车近距离cut in 6. 总结与展望 1. 背景介绍 随着汽车技术的发展,智能巡航…

springboot开发实用篇

一、Mongodb (1)简介 MongoDB是一个开源、高性能、无模式的文档型数据库。NoSQL数据库产品中的一种,是最像关系型数据库的非关系型数据库。 数据库:永久性存储,修改频率极低 Mongodb:永久性存储与临时存…

Cxx Primer-Chap4

表达式可以没有操作符,但一定有操作数:理解表达式中含有多个操作符时涉及操作符的优先级、关联性以及操作数的计算顺序:如果操作符需要的操作数类型不同,则会发生一些默认的类型转换:什么叫Overloaded Operators&#…